Dados não encontrados

pessoal,
por exemplo qndo a tabela esta vazia e eu tenho o codigo[code]
public int getIdade(String data){

db.rst = db.stmtExecuteQuery(“Select idade where data=’”+data+"’;")

while(db.rst.next()){
idade = Integer.parseInt(db.rst.getString(1));
}

return idade;
}[/code] o q ta acontecendo comigo é q como não tem nada no banco ele não entra no while - lógico :lol:
como faço pra indicar q o select não retornou nenhum resultado?

Kd o “from” da query?

[]'s
Fábio

vc pode iniciar a sua variavel idade com um valor negativo, por exemplo.
se retornar negativo, é porque não foi retornado nada na consulta.

Buenas… sem o FROM percebido pelo FabioRC realmente nunca vai retornar linhas, inclusive te aconselho usar um TRY … CATCH nestas operações com BD.

Mas para verificar se retornou linhas ou não tu pode fazer uma destas coisas:

  1.      if (rst.next()) {
                  idade = Integer.parseInt(rst.getString(1));
    
                  while (rst.next())
                     idade = Integer.parseInt(rst.getString(1)) ;
          } else {
                 // tratamento com mensagem, retorno, algo do tipo
          }

ou usar um rst. first para voltar e não fazer a primeira leitura fora do loop

  1. inicializar a variavel idade e após o while, verificar se idade é igual ao valor da inicialização. Se for igual não iterou nenhuma vez no while.

[]s

valew pessoal, gostei da ideia do if(rst.next), eu to usando try, catch, e o from tb eh que na hora da correria eu esqueci de escrever isso eheheh
vou tentar isso e mais tarde retorno pra dizer se deu certo ou errado valew novamente