Verwenden einer SQL-Anweisung zum Ändern von Daten
Um die In einer SQL Server-Datenbank enthaltenen Daten mithilfe einer SQL-Anweisung zu ändern, können Sie die executeUpdate-Methode der SQLServerStatement-Klasse verwenden. Die executeUpdate-Methode übergibt die SQL-Anweisung zur Verarbeitung an die Datenbank und gibt anschließend einen Wert zurück, der die Anzahl der betroffenen Zeilen angibt.
Sie müssen dazu zuerst mit der createStatement-Methode der SQLServerConnection-Klasse ein SQLServerStatement-Objekt erstellen.
Im folgenden Beispiel wird eine offene Verbindung mit der AdventureWorks2022-Beispieldatenbank an die Funktion übergeben, eine SQL-Anweisung wird erstellt, die der Tabelle neue Daten hinzufügt, und dann wird die Anweisung ausgeführt, und der Rückgabewert wird angezeigt.
public static void executeUpdateStatement(Connection con) {
try(Statement stmt = con.createStatement();) {
String SQL = "INSERT INTO TestTable (Col2, Col3) VALUES ('a', 10)";
int count = stmt.executeUpdate(SQL);
System.out.println("ROWS AFFECTED: " + count);
}
// Handle any errors that may have occurred.
catch (SQLException e) {
e.printStackTrace();
}
}
Hinweis
Wenn Sie eine SQL-Anweisung verwenden müssen, die Parameter zum Ändern der Daten in einer SQL Server-Datenbank enthält, sollten Sie die executeUpdate-Methode der SQLServerPreparedStatement-Klasse verwenden.
Wenn die Spalte, in die Daten eingefügt werden sollen, Sonderzeichen wie Leerzeichen enthält, müssen Sie die einzufügenden Werte angeben, auch wenn es sich um die Standardwerte handelt. Andernfalls schlägt die Einfügeoperation fehl.
Wenn der JDBC-Treiber alle Updatezählungen zurückgeben soll, einschließlich der Updatezählungen, die von eventuell ausgelösten Triggern zurückgegeben werden, müssen Sie die lastUpdateCount-Verbindungseigenschaft auf "false" setzen. Weitere Informationen zur lastUpdateCount-Eigenschaft finden Sie unter Festlegen der Verbindungseigenschaften.