Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Standard-AutoCommit-Verhalten der JDBC-Verbindung

Aus der Oracle JDBC-Dokumentation:

Wenn eine Verbindung erstellt wird, befindet sie sich im Autocommit-Modus. Das bedeutet, dass jede einzelne SQL-Anweisung als Transaktion behandelt und direkt nach ihrer Ausführung automatisch festgeschrieben wird. (Um genauer zu sein, standardmäßig wird eine SQL-Anweisung festgeschrieben, wenn sie abgeschlossen ist, nicht wenn sie ausgeführt wird. Eine Anweisung ist abgeschlossen, wenn alle ihre Ergebnismengen und Aktualisierungszähler abgerufen wurden . In fast allen Fällen wird eine Anweisung jedoch unmittelbar nach ihrer Ausführung abgeschlossen und daher festgeschrieben.)

Die andere Sache ist - Sie haben die Verbindungserstellungsdetails ausgelassen, also vermute ich nur - wenn Sie einige Frameworks verwenden oder eine Verbindung von einer Datenquelle oder einem Verbindungspool erwerben, das autocommit kann off werden durch diese Frameworks/Pools/Datenquellen - die Lösung ist, niemals auf Standardeinstellungen zu vertrauen;-)