Método alterar não retornar nenhum resultado

3 respostas
Vander_Carlos

É o seguinte, já fiz os métodos, salvar e excluir, estão funcionando correto.

Quando executo o botão alterar ele não mostra nenhum erro, não retorna mensagem de que foi alterado, nem nada.

Aqui o código

public void altera(Paciente p) throws SQLException { 

String sql = "UPDATE paciente set nome = ?, datacadastro = ?, datanascimento =?, idade =?, sexo = ?, tiposanguineo = ?, " +
"cpf = ?, rg = ?, endereco = ?, bairro =?, cidade = ?, estado = ?, email = ?, telresidencial = ?, telcelular = ? WHERE codigo = ?";
      PreparedStatement stmt = conexao.prepareStatement(sql);

        stmt.setString(1, p.getNome());
        stmt.setString(2, p.getDataCadastro());
        stmt.setString(3, p.getDataNascimento());
        stmt.setString(4, p.getIdade());
        stmt.setString(5, p.getSexo());
        stmt.setString(6, p.getTipoSanguineo());
        stmt.setString(7, p.getCpf());
        stmt.setString(8, p.getRg());
        stmt.setString(9, p.getEndereco());
        stmt.setString(10, p.getBairro());
        stmt.setString(11, p.getCidade());
        stmt.setString(12, p.getEstado());
        stmt.setString(13, p.getEmail());
        stmt.setString(14, p.getTelResidencial());
        stmt.setString(15, p.getTelCelular());
        stmt.setLong(16, p.getCodigo());

        //Executa o codigo sql
        stmt.execute();
        stmt.close();
    }
private void alteraContato() throws SQLException {  

        if(jTTabela.getSelectedRow() != -1) {
            if(verificaDados()) {

                Paciente p = new Paciente();
                PacienteDao dao = new PacienteDao();

                p.setCodigo(Long.valueOf(ctCodigo.getText()));
                p.setNome(ctNome.getText());
                p.setDataCadastro(ctDataCadastro.getText());
                p.setDataNascimento(ctDataNascimento.getText());
                p.setIdade(ctIdade.getText());
                p.setSexo((String) cbSexo.getSelectedItem());
                p.setTipoSanguineo((String) cbTipoSanguineo.getSelectedItem());
                p.setCpf(ctCPF.getText());
                p.setRg(ctRG.getText());
                p.setEndereco(ctEndereco.getText());
                p.setBairro(ctBairro.getText());
                p.setCidade(ctCidade.getText());
                p.setEstado((String) cbEstado.getSelectedItem());
                p.setEmail(ctEmail.getText());
                p.setTelResidencial(ctTelResidencial.getText());
                p.setTelCelular(ctTelCelular.getText());
                dao.altera(p);

                JOptionPane.showMessageDialog(null, "Paciente alterado com sucesso.");
            }
        }
}
Botão Alterar
private void btAlterarActionPerformed(java.awt.event.ActionEvent evt) {                                          

        try {
            alteraContato();
            mostraPesquisa(listaPaciente);
           
        } catch (SQLException ex) {
            Logger.getLogger(FormPaciente.class.getName()).log(Level.SEVERE, null,"Erro ao alterar paciente " + ex);
   }
        
}

[]'s

3 Respostas

ViniGodoy

Já tentou rodar um select diretamente no banco após executar esse código para ver se lá foi atualizado?
Já executou o código do seu dao passo-a-passo?

Me parece que essa é uma dúvida para o fórum de persistência, não de interface gráfica. Sua dúvida por acaso está em como usar os componentes do Swing para exibir o resultado atualizado?

Vander_Carlos

Ah, desculpe. Vou postar la.

ViniGodoy

Tópico duplicado:
http://www.guj.com.br/java/259966-metodo-alterar-nao-retorna-nada#1356231

Criado 4 de dezembro de 2011
Ultima resposta 4 de dez. de 2011
Respostas 3
Participantes 2