Uso di un'istruzione SQL per modificare i dati
Per modificare i dati contenuti in un database di SQL Server usando un'istruzione SQL, è possibile usare il metodo executeUpdate della classe SQLServerStatement . Con il metodo executeUpdate l'istruzione SQL viene passata al database per l'elaborazione e viene restituito un valore che indica il numero di righe modificate.
A tale scopo, è necessario innanzitutto creare un oggetto SQLServerStatement usando il metodo createStatement della classe SQLServerConnection.
Nell'esempio seguente viene passata una connessione aperta al database di esempio AdventureWorks2022 alla funzione , viene costruita un'istruzione SQL che aggiunge nuovi dati alla tabella e quindi viene eseguita l'istruzione e viene visualizzato il valore restituito.
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();
}
}
Nota
Se è necessario usare un'istruzione SQL che contiene parametri per modificare i dati in un database di SQL Server, è necessario usare il metodo executeUpdate della classe SQLServerPreparedStatement .
Se nella colonna in cui si desidera inserire i dati sono presenti caratteri speciali, quali, ad esempio, gli spazi, è necessario fornire i valori da inserire, anche se si tratta dei valori predefiniti. In caso contrario, l'operazione di inserimento non verrà eseguita correttamente.
Se si desidera che il driver JDBC restituisca tutti i conteggi degli aggiornamenti, inclusi i conteggi degli aggiornamenti restituiti dai trigger eventualmente attivati, impostare la proprietà della stringa di connessione lastUpdateCount su "false". Per altre informazioni sulla proprietà lastUpdateCount, vedere Impostazione delle proprietà di connessione.