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?
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:
-
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
- 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