Função que retorne o nº de registros encontrados em um se

3 respostas
S

Estou utilizando um banco MySQL e preciso com driver JDBC

E gostaria de saber se tem alguma função do "ResultSet"  que retorne o número de registros encontrados

Obrigado…

[] Victor

3 Respostas

V

“sens”:
Estou utilizando um banco MySQL e preciso com driver JDBC

E gostaria de saber se tem alguma função do "ResultSet"  que retorne o número de registros encontrados

Obrigado…

[] Victor


Existem algumas alternativas:

  1. Fazer um select prévio com um count(*) - boa opção, não exaure o banco e nem gasta muita memória
  2. Varrer o ResultSet colocando os dados em uma Collection e depois pegando a quantidade de registros através do método size() - ocupa memória, mas é a melhor alternativa caso o banco trabalhe sobrecarregado
  3. Quando obtiver o PreparedStatement da Conection passe como parâmetro o tipo de ResultSet de retorno ResultSet.TYPE_SCROLL_INSENSITIVE, quando obtiver o ResultSet faça:

ResultSet.last(); int rowcount = ResultSet.getRow(); ResultSet.beforeFirst();

  • não tem efeito no consumo de memória, entretanto é a pior coisa que existe para um banco de dados, pois para ir ao último registro o cursor passa por cada registro fazendo fetch.

A escolha eh sua, as opções estão aí…

P

Eu não sei se é a melhor opção, mas eu prefiro e uso a primeira ae…

R

ae galera,

site muito bom de SQL…

http://www.1keydata.com/sql/sql.html

acho que fazer um select count é a melhor opcao neste caso…

Criado 20 de dezembro de 2004
Ultima resposta 20 de dez. de 2004
Respostas 3
Participantes 4