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;
}
Dados não encontrados
D
pessoal,
por exemplo qndo a tabela esta vazia e eu tenho o codigo
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?
4 Respostas
F
Kd o “from” da query?
[]'s
Fábio
F
vc pode iniciar a sua variavel idade com um valor negativo, por exemplo.
se retornar negativo, é porque não foi retornado nada na consulta.
D
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
D
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
Criado 2 de março de 2005
Ultima resposta 3 de mar. de 2005
Respostas 4
Participantes 4
Alura Sistemas operacionais: entenda seu conceito e suas funções Descubra o que são sistemas operacionais, suas funções e tipos. Aprenda tudo de forma clara e objetiva. Não perca tempo!
Casa do Codigo Orientacao a Objetos: Aprenda seus conceitos e suas... Por Thiago Leite e Carvalho — Casa do Codigo