Update Prepared Statement Fehler bei Argumenten

nieselfriem

Bekanntes Mitglied
Hallo!

Ich habe eine Methode um eine Update. Dieser Methode wird ein Objekt vom Typ Vermittlungsverscuh übergeben. Mit getter-Methoden ist der Zugriff auf die Daten möglich. Es sind 6 Attribute an der Zahl
jedoch kommt es immer zur Fehlermeldung:
Code:
java.sql.SQLException: No value specified for parameter 7
Ich versuche doch nur 6 Argumente zu übergeben.
Java:
public void update(VermittlungsVersuch vVers) throws SQLException, ClassNotFoundException {
        conn = AllowConnect.driver(this.user, this.password, this.dburl, this.className);
        if (conn != null) {
          
            PreparedStatement stmt = conn.prepareStatement("UPDATE `Vermittlungsversuche` SET ("
                    + "`Datum` = ?, `AG-ID` = ?, `AN-ID` = ?, `VV-Bemerkung` = ?, `Anspr-ID`= ?) "
                    + "VALUES (?,?,?,?,?) WHERE `VV-ID`= ?");
            stmt.setObject(1, vVers.getDatum());
            stmt.setInt(2, vVers.getArbeitgId());
            stmt.setInt(3, vVers.getArbeitnId());
            stmt.setString(4, vVers.getBemerkung());
            stmt.setInt(5, vVers.getAnsprechId());
            stmt.setInt(6, vVers.getVvId());

            stmt.executeUpdate();
            conn.close();
        }//if

Wo liegt der Fehler?

Gruß niesel
 
jedes Fragezeichen ist ein Parameter und du hast offensichtlich noch nie ein PreparedStatement in dieser Form benutzt?
fange doch einfach mit EINEM Parameter an..

in Zeile 6 kannst du dir alle '= ?' sparen
 
Also ich zähle weitaus mehr als 6 ?-Parameter.

Wahrscheinlich meintest Du

UPDATE Vermittlungsversuche SET Datum=?,AG-ID=?,AN-ID=?,VV-Bemerkung=?,Anspr-I=? WHERE VV-ID= ?
 

Zurück
Oben