Estou querendo fazer uma query no banco e jogar os resultados em seus respectivos JTextField. Mas estou tendo problemas.
O que quero é que o usuário só precise digitar um campo da consulta, nome, por exemplo, e o resto seja preenchido automaticamente. Nos meus testes, eu só preencho o nome, não dá nenhum erro, mas também não funciona.
O código é este:
try{
if(e.getSource() == btnsrch){
if(txtnome.getText().isEmpty() && txtrg.getText().isEmpty() && txtcpf.getText().isEmpty() && txtcnh.getText().isEmpty())
JOptionPane.showMessageDialog(null, "É necessário pelo menos um parâmetro para pesquisa!");
else{
BD.Consultar();
BD.query1.setString(1, txtnome.getText());
BD.query1.setString(2, txtrg.getText());
BD.query1.setString(3, txtcpf.getText());
BD.query1.setString(4, txtcnh.getText());
BD.rs = BD.query1.executeQuery();
while(BD.rs.next()){
txtnome.setText(BD.rs.getString("nome_titular"));
txtrg.setText(BD.rs.getString("rg"));
txtcpf.setText(BD.rs.getString("cpf"));
txtcnh.setText(BD.rs.getString("cnh"));
}
}}}catch(SQLException e1){
e1.printStackTrace();
JOptionPane.showMessageDialog(null, e1.getMessage());}
E a query é esta:
query1 = con.prepareStatement("SELECT nome_titular, rg, cpf, cnh FROM titular WHERE nome_titular = ? OR rg = ? OR cpf = ? OR cnh = ?");