Olá pessoal, gostaria de saber uma coisa. Nessa minha classe, eu tenho um objeto chamado rs, pq ele é um resultSet . O problema que o método public void display(ResultSet rs) … não funciona direito. Ou seja, essa é uma classe pra consultar no banco de dados um determinado sobrenome q eu digitar, e ele achar a pessoa que eu estou procurando, o problema é que, o programa me passa apenas a sqlexception na qual eu coloquei um tratamento lá em baixo “REGISTRO NAO ENCONTRADO”. Alguem ae pode me ajudar? Agradeço antecipadamente.
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import javax.swing.*;
public class consultaRegistro implements ActionListener{
private MontaTela campos;
private JTextArea saida;
private Connection conecta;
private JButton limpa;
public consultaRegistro(Connection c, MontaTela f, JTextArea o){
conecta = c;
campos = f;
saida = o;
}
public void actionPerformed(ActionEvent e){
try{
if (!campos.Sobrenome.getText().equals("")){
Statement consultaSQL = conecta.createStatement();
String query = "SELECT * FROM fornecedores WHERE Sobrenome = '"+campos.Sobrenome.getText()+"'";
ResultSet rs = consultaSQL.executeQuery(query);
display(rs);
consultaSQL.close();
}else
JOptionPane.showMessageDialog(null,"Digite o sobrenome","Atenção",JOptionPane.ERROR_MESSAGE);
}catch (SQLException sqlex){
sqlex.printStackTrace();
saida.append(sqlex.toString());
}
}
public void display(ResultSet rs){
try{
rs.next();
int registroNumero = rs.getInt(1);
if (registroNumero != 0){
campos.Codigo.setText(String.valueOf(registroNumero));
campos.Nome.setText(rs.getString(2));
campos.Sobrenome.setText(rs.getString(3));
campos.Endereco.setText(rs.getString(4));
campos.Cidade.setText(rs.getString(5));
campos.Estado.setText(rs.getString(6));
campos.Cep.setText(rs.getString(7));
}else
saida.append("Registro não localizado\n");
}catch (SQLException sqlex){
JOptionPane.showMessageDialog(null,"REGISTRO NÃO ENCONTRADO","Atenção",JOptionPane.ERROR_MESSAGE);
}
}
}