RowCount

Bom dia pessoal!

Gostaria de tirar um dúvida de algo bem simples.

Seguinte:
Eu tenho uma classe que faz o acesso ao meu banco de dados e depois, utilizo esses dados em um JSP. Após fazer um select, eu precisaria saber o número de registros encontrados no mesmo.

ResultSet resSQL = stmt.executeQuery(strSQL)

no objeto resSQL não encontrei nenhum método que retornasse o número de linhas.

Alguém sabe como fazer isso?

Obrigado!

É Lruiz , infelizmente no ResultSet não tem isto não , pra saber a quantidade de registros nele você tem que percorre-lo, ou fazer uma segunda query com os mesmos filtros que de um count, mas não acha isto legal não, eu costumo encapsular o resultado de pesquisas em Collections de beans, ai fica simples de contar quantos registros tem lá.

Tenta isso: (Não testei aqui)

resSQL.last(); // posiciona no último registro
resSQL.getRow() // obtem o número da linha atual

Valeu.

Lembrando que o cursor ficará posicionado no último registro do ResultSet, então volte ao primeiro se você tiver de percorrer ele.

Gustavo Guilherme BacK

Na verdade, vc teria que posicionar antes do primeiro, se quizer iterar o resultSet:

resSQL.beforeFirst();
while (resSQL.next()) {...}

[]'s

[quote=jskywalker]Na verdade, vc teria que posicionar antes do primeiro, se quizer iterar o resultSet:

resSQL.beforeFirst();
while (resSQL.next()) {...}

[]'s[/quote]

Então, eu realmente tinha pensado em algo parecido, queria ter a certeza de que não existe um método que retorne diretamente este valor.

Agradeço pela atenção!