ResultSet em DB

3 respostas
J

Olá pessoal

Alguém sabe como descobrir quantas linhas resultaram de uma pesquisa em um ResultSet?

Valeu !!!

3 Respostas

C

Olá javalulu,

Não existe um método específico para isso. A única maneira de você descobrir quantas linhas retornaram num ResultSet é iterando por ele e contando a quantidade de iterações:

int i = 0; while (rs.next()) { i++; } // i é a quantidade de linhas da consulta

Até mais,

C

So pra complementar o que o Deives disse…

Tu pode recuperar seus registros e mandar os objetos pra um ArrayList, depois é só da um size() nele, q ele vai retornar quantos registros foram retornados.

J

faz um método Wrapper =)

algo assim:

public int count(String sql)
{
    ResultSet rs = executeQuery("select count(1) QUANT from ( "+sql+" )");
    return rs.next().getInteger("QUANT");
}

Porque fazer isso? Bom, pq se a sua consulta retornar 1 milhão de registros, vc demorará muito até colocar tudo dentro de um list, só para pegar o size dele. Ocupará muita memória e processamento, se caso você for mostrar apenas 30 registros para o usuário, pra depois ir paginando, sem contar que se um monte de gente usar ao mesmo tempo será um caos!

Abraços!

Criado 12 de setembro de 2006
Ultima resposta 13 de set. de 2006
Respostas 3
Participantes 4