Problema alterar dados [RESOLVIDO]

3 respostas
Vander_Carlos

Então, quando tento alterar os dados da agenda aparece o seguinte erro:

Erro ao alterar consulta java.sql.SQLException: No value specified for parameter 6
O que pode ser?? No form:
public void alteraContato() throws SQLException {

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

                Agenda a = new Agenda();
                AgendaDao dao = new AgendaDao();

                a.setCodigo(Long.valueOf(ctCodigo.getText()));
                a.setNome(ctNome.getText());
                a.setDia(ctDia.getText());
                a.setHora((String) cbHorario.getSelectedItem());
                a.setTipoconsulta((String)cbTipoConsulta.getSelectedItem());
                a.setStatus ((String) cbStatus.getSelectedItem());
                dao.altera(a);

               JOptionPane.showMessageDialog(null, "Consulta alterada com sucesso.");
          }
    }
BD:
public void altera(Agenda a) throws SQLException {

String sql = "UPDATE agenda set nome = ?, dia = ?, hora = ?, tipoconsulta =?, status = ? WHERE codigo = ?";

PreparedStatement stmt = conexao.prepareStatement(sql);

        stmt.setString(1, a.getNome());
        stmt.setString(2, a.getDia());
        stmt.setString(3, a.getHora());
        stmt.setString(4, a.getTipoconsulta());
        stmt.setString(5, a.getStatus());

        stmt.execute();
        stmt.close();
  }

[]'s

3 Respostas

Hebert_Coelho

stmt.setString(1, a.getNome()); stmt.setString(2, a.getDia()); stmt.setString(3, a.getHora()); stmt.setString(4, a.getTipoconsulta()); stmt.setString(5, a.getStatus());

Sua consulta pede 6 parametros:

Vander_Carlos

Virei esse código varias vezes e não percebi.

Nesta última parte esqueci de setar o código:

stmt.setString(1, a.getNome());
        stmt.setString(2, a.getDia());
        stmt.setString(3, a.getHora());
        stmt.setString(4, a.getTipoconsulta());
        stmt.setString(5, a.getStatus());
        stmt.setLong(6, a.getCodigo());

Vlw pela ajuda.

[]'s

Hebert_Coelho

Quando o cansaço bate a porta, coisas assim acontecem! =D

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