Boa noite, estou com um problema, tenho uma aplicação na qual faz chamada a um banco de dados Postgres
mas na hora que eu seleciono uma linha da tabela pra alterar abre uma janela com o campo que eu quero alterar, mas quando eu altero e clico em inserir ele altera, mas também cria um novo registro, ou seja, cria 2 registros iguais
para exemplificar melhor postarei as imagens e o código:
http://img139.imageshack.us/img139/2867/tela1.jpg
http://img139.imageshack.us/img139/2083/tela2.jpg
O problema é que eu sei como fazer alterar sem aparecer 2 vezes só que se eu faço isso dai na hora que eu quero inserir algum nome novo dá erro pois executo o comando UPDATE do postgres…
Bom, vou passar o código para entenderem melhor
[code]private void buInserirActionPerformed(java.awt.event.ActionEvent evt) {
try {
if(txNome.getText().isEmpty())
{
Avisos.Aviso("Insira um nome válido!");
System.out.println(txNome.getText());
}
else{
Statement st = conexao.createStatement();
st.execute("Insert into Medicos(Nome) values(' " + txNome.getText() + "');");
Avisos.Aviso("Cadastro Realizado com Sucesso!");
dispose();
}
} catch (Exception e) {
Avisos.Aviso("Erro ao Realizar o Cadastro!" + e);
}
try {
Statement st = conexao.createStatement();
st.executeUpdate("UPDATE Medicos set Nome = ' " + txNome.getText() + "' Where cod_med = " + txCodigo.getText());
Avisos.Aviso("Cadastro Alterado com Sucesso!");
dispose();
} catch (Exception e) {
Avisos.Aviso("Erro ao Realizar a Alteração!" + e);
}
} [/code]
Vejam bem, eu sei que está errado fazendo essas 2 consultas mas se eu tiro a do INSERT eu não consigo incluir um novo Medico e se eu tiro a do UPDATE eu não consigo alterar algum registro, e se eu deixo as 2 ele altera mas cria de novo o mesmo campo, alguem pode me dar uma dica de como resolver isso ?
Obrigado.