Erro de Pesquisa [RESOLVIDO]

Boa tarde galera. Peço desculpas se já tem este tópico aberto, mas devido ao meu pouco conhecimento em java, não pude identificar uma solução para o meu problema.
Bem, é o seguinte… estou aprendendo java com as vídeo aulas do prof Neri Neitzke, fiz igual ele explicou (pelo menos eu acho! kk…), mas me retorna um erro na pesquisa. Por favor, se puderem analisar o código abaixo

public void pesquisar() { try { con_cadastro.resultset.first(); String igual = "n"; int tamanho_pesquisa = jtxt_pesquisar.getText().length(); while(igual == "n") { String pesquisado = con_cadastro.resultset.getString("cad_nome").substring(0,(tamanho_pesquisa)); if (pesquisado.equals(jtxt_pesquisar.getText())) { igual = "s"; } else { con_cadastro.resultset.next(); } jtxt_codigo.setText(con_cadastro.resultset.getString("cad_codigo")); mostra_dados(); } } catch(Exception erro) { JOptionPane.showMessageDialog(null,"Não achou!" + erro); } }
Ele me retorna:
Não achou! Java.sql.SQLException: No data found

Obrigado

1 - Nunca use o comparador == para objetos (isso inclui STRING!), use o equals.
2 - O problema é nessa linha: con_cadastro.resultset.first();

Você realiza um first() e posso apostar que o teu select não retorna nenhum resultado, estourando naquela exceção.
O ideal é realizar uma verificação se foi encontrado algum registro, antes de tentar usar um resultset.get.

Abraços.

nel obrigado. Você me atentou à um problema. Não foi do jeito que você me falou, mas consegui.
o problema na verdade estava aqui:

jtxt_codigo.setText(con_cadastro.resultset.getString("cad_codigo")); mostra_dados();

Estas linhas estavam dentro do while. Eu removi e funcionou!

Obrigado! Abraço!!

[quote=caike_chb]nel obrigado. Você me atentou à um problema. Não foi do jeito que você me falou, mas consegui.
o problema na verdade estava aqui:

jtxt_codigo.setText(con_cadastro.resultset.getString("cad_codigo")); mostra_dados();

Estas linhas estavam dentro do while. Eu removi e funcionou!

Obrigado! Abraço!![/quote]

Essa pesquisa ainda apresenta o seguinte erro. Se vc mandar pesquisar uma String de tamanho 10 e no se banco tiver algum registro com tamanho menor que 10 vai dar erro na linha:

String pesquisado = con_cadastro.resultset.getString("cad_nome").substring(0,(tamanho_pesquisa));

ou seja, ele não vai conserguir pegar uma substring de tamnho 10 de uma string de tamanho 8 por exemplo. Vc já resolveu isso também? Estou com esse poblema se alguém puder ajudar agradeço. :frowning: