Estou com um problema com um cadastro de usuário na parte de update no banco de dados, o problema é que ele não dá nem um erro; fiz um JOptionpane, mas ele lança que os dados do usuário foram cadastrados, porem ele não altera nada lá.
Tenho um de medico em que utiliza do mesmo método porem funciona perfeitamente!
//classe UsuarioDAO.
public void editar(Usuario usuario){
conex.conexao();
try {
PreparedStatement pst = conex.con.prepareStatement("update usuarios set usu_nome=?, usu_tipo=?,"
+ " usu_senha=? where usu_cod=?");
pst.setString(1, usuario.getUsuNome());
pst.setString(2, usuario.getUsuTipo());
pst.setString(3, usuario.getUsuSenha());
pst.setInt(4, usuario.getUsuCod());
pst.execute();
JOptionPane.showMessageDialog(null, "Dados alterados com sucesso!");
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Erro ao alterar os dados");
}
conex.desconecta();
}
classe formUsuario(jFrame).
//se der '1' ele salva caso contrario ele cai no botão alterar que está recebendo '2'
private void jButtonSalvarActionPerformed(java.awt.event.ActionEvent evt) {
if(jTextFieldNomeUsu.getText().isEmpty()){
JOptionPane.showMessageDialog(null, "Preencha o campo NOME DE USUÁRIO para continuar!");
jTextFieldNomeUsu.requestFocus();
}else if(jPasswordFieldSenha.getText().isEmpty()){
JOptionPane.showMessageDialog(null, "Preencha o campo SENHA para continuar!");
jPasswordFieldSenha.requestFocus();
}else if(jPasswordFieldConfiSenha.getText().isEmpty()){
JOptionPane.showMessageDialog(null, "Preencha o campo CONFIRMAR SENHA para continuar!");
jPasswordFieldConfiSenha.requestFocus();
}else
if(flag == 1){
usua.setUsuNome(jTextFieldNomeUsu.getText());
usua.setUsuTipo((String)jComboBoxTipo.getSelectedItem());
usua.setUsuSenha(jPasswordFieldSenha.getText());
usuDAO.salvar(usua);
jTextFieldNomeUsu.setEnabled(false);
jPasswordFieldConfiSenha.setEnabled(false);
jPasswordFieldSenha.setEnabled(false);
jButtonSalvar.setEnabled(false);
jButtonExcluir.setEnabled(false);
jTextFieldNomeUsu.setText("");
jPasswordFieldSenha.setText("");
jTextFieldPesquisa.setText("");
jPasswordFieldConfiSenha.setText("");
}else{
usua.setUsuNome(jTextFieldNomeUsu.getText());
usua.setUsuSenha(jPasswordFieldSenha.getText());
usua.setUsuTipo((String)jComboBoxTipo.getSelectedItem());
usuDAO.editar(usua);
jTextFieldNomeUsu.setEnabled(false);
jPasswordFieldConfiSenha.setEnabled(false);
jPasswordFieldSenha.setEnabled(false);
jButtonSalvar.setEnabled(false);
jButtonExcluir.setEnabled(false);
jTextFieldNomeUsu.setText("");
jPasswordFieldSenha.setText("");
jTextFieldPesquisa.setText("");
jPasswordFieldConfiSenha.setText("");
}
}
private void jButtonBuscarActionPerformed(java.awt.event.ActionEvent evt) {
/*Utilizamos aqui o método encapsulado set para pegar o que o usuário digitou no campo txtPesquisa*/
usua.setPesquisar(jTextFieldPesquisa.getText());
Usuario modelo;
try {
modelo = usuDAO.buscarPor(usua);
if (modelo != null) {
jTextFieldNomeUsu.setText(modelo.getUsuNome());
/**
* String.valueOf() pega um Valor Inteiro e transforma em String
* e seta em jFormattedTextFieldCRM que é um campo do tipo texto
*/
jPasswordFieldSenha.setText(modelo.getUsuSenha());
jPasswordFieldConfiSenha.setText(modelo.getUsuSenha());
/*Para setarmos um campos Combobox utilizamos o método setSelectedItem**/
jComboBoxTipo.setSelectedItem(modelo.getUsuTipo());
/**
* Liberar os botões abaixo
*/
jButtonAlterar.setEnabled(true);
jButtonExcluir.setEnabled(true);
jButtonCancelar.setEnabled(true);
jButtonSalvar.setEnabled(false);
} else {
JOptionPane.showMessageDialog(null, "Médico não Cadastrado");
}
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, "Erro na camada gui FormMedico" + ex.getMessage());
}
}