Sql

3 respostas
D

Tenho uma consulta e na mesma eu tenho um while(sql.next()) pra mostrar os resultados em uma tabela.

Tudo funciona bem, a não ser que se eu inserir dados na consulta que fazem esta query de sql ficar vazia, da um erro no output do java:

erro java.lang.NullPointerException

Queria saber como faço a verificação para não entrar no while se não tiver resultados. por favor, se alguem poder me ajude

3 Respostas

B

Ele não entra no bloco interno do while se o ResultSet não tiver elementos.

Não entendi a tua dúvida.

F

Imagine que a conexão já está feita.
veja um exemplo clara:

Sring sql = "select * from tab_clientes;"

Statement stmt = con.createStatement();

//Se for executar uma consulta terá que ter um mecanismo para manipular as linhas que seram retornadas, esse é o ResultSet

ResultSet rs = stmt.executeQuery(sql);

while(rs.next()){
System.out.println("Cod: "rs.getInt(1));
System.out.println("Nome: "rs.getString(2));

}

Nesse caso somente é feita uma consulta e mostrada na tela, claro que você pode fazer qualquer outra lógica de negócio com os dados retornados.

veja se isso te ajuda, qualquer coisa da um grito ai,…

abraço falow.

M

Você tem certeza que o NullPointer está acontecendo dentro do while?
como o renrutal disse, se não tiver resultado ele não entra no mesmo. Pode ser que vc esteja tentando utilizar
um objeto que é instanciado dentro do while.

Mande seu código para analizarmos

Abraços

Criado 15 de maio de 2008
Ultima resposta 15 de mai. de 2008
Respostas 3
Participantes 4