Retorno registro

Bom estou tentando retorna um registro em uma field através do código que o usuário digitar em outra field…meu código está asimm…eu estou fazendo isso no focuslost do meu field…só q ele naum está a retornando o registro… alguém pode me ajudar…

Conexao conexao = new Conexao();
try{
Connection con=conexao.conecta();
Statement stmt=con.createStatement();
String consAnimal=tfanimal.getText();
ResultSet rsAnimal = stmt.executeQuery(“Select nome from animal where brinco=”+consAnimal);
while(rsAnimal.next()){
String animal = rsAnimal.getString(2);
if(animal!=null||tfanimal.getText().length()>0){
nomeAnimal.setText(rsAnimal.getString(animal));
}else{
JOptionPane.showMessageDialog(null,“Brinco Inválido”);
}

   }
 rsAnimal.close();
stmt.close();

}catch(SQLException e){}

qual é o erro?

E ai jovem, tudo bem?

Bem… primeiro quando for colocar códigos nas mensagens, utilize a tag “code” e “/code” existentes no editor. Fica mais fácil pra quem for te ajudar.

Segundo… esse código que você passou está, no mínimo, estranho. Primeiro vc executa um SQL que retorna somente uma coluna, mas tenta pegar a coluna de número “2” (provavelmente ela nem existe no ResultSet). Depois vc faz um teste no if um tanto estranho: Se o “nome” for diferente de nulo OU se o comprimento do texto do “tfanimal” for maior que zero, vc tenta pegar novamente um valor do ResultSet (que só tem o nome) passando a variável “animal” como parâmetro quando na verdade ela já deveria ter o nome do animal… =P

Enfim… acho q vc já tem parâmetros pra dar uma revisada no seu código, certo?

ah… tente sempre debugar seu código, passo-a-passo, olhando o valor de cada variável pra você entender o que o código escrito está fazendo. Isso ajuda a identificar erros.

Espero ter ajudado. Até.