Heim >Java >javaLernprogramm >Warum erhalte ich in meinem Java-Datenbankcode die Fehlermeldung „Parameterindex außerhalb des gültigen Bereichs'?
Fehler beim Parameterindex außerhalb des gültigen Bereichs in der Java-Datenbank
Beim Versuch, mit einer Datenbank über Java zu interagieren, kann der Fehler „java .sql.SQLException: Parameterindex außerhalb des gültigen Bereichs (1 > Anzahl der Parameter, also 0)“. Dieser Fehler weist auf eine Diskrepanz zwischen der SQL-Anweisung und den für ihre Parameter bereitgestellten Werten hin.
Ursache:
Der Fehler tritt auf, wenn Sie versuchen, einen Parameter mithilfe der PreparedStatement festzulegen Objekt, aber die entsprechende SQL-Anweisung enthält keine Platzhalter (?) für diesen Parameter. Die Verwendung von setString() oder anderen Setter-Methoden ohne entsprechenden Platzhalter in der Abfrage löst diesen Fehler aus.
Lösung:
Um diesen Fehler zu beheben, stellen Sie sicher, dass Ihre SQL-Anweisung enthält Platzhalter für jeden Parameter, den Sie über das PreparedStatement-Objekt festlegen möchten. Die Platzhalter sollten als Fragezeichen (?) in der Aussage dargestellt werden.
Beispiel:
Falsche Aussage:
String sql = "INSERT INTO tablename (col1, col2, col3) VALUES (val1, val2, val3)";
Richtige Aussage:
String sql = "INSERT INTO tablename (col1, col2, col3) VALUES (?, ?, ?)";
Zusätzlich Überlegungen:
Weiteres Ressourcen:
Das obige ist der detaillierte Inhalt vonWarum erhalte ich in meinem Java-Datenbankcode die Fehlermeldung „Parameterindex außerhalb des gültigen Bereichs'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!