Hat Oracle für die Transaktion ein Rollback auf einen Fehler?

Fühlt sich an wie eine dumme Frage, aber sehe ich Folgendes in die Oracle concepts guide (auf Transaktions-management:

Eine Transaktion endet, wenn eine der
Folgendes tritt auf:

Einen Benutzer sendet eine COMMIT-oder ROLLBACK
Anweisung ohne SAVEPOINT-Klausel.

Führt ein Benutzer eine DDL-Anweisung wie
ERSTELLEN, löschen, UMBENENNEN oder ÄNDERN. Wenn die
aktuelle Transaktion enthält DML
Aussagen, Oracle erste begeht
Transaktion, und dann läuft und verpflichtet
die DDL-Anweisung als neue single
Anweisung der Transaktion.

Benutzer trennt die Verbindung zu Oracle. Die
aktuelle Transaktion ein commit ausgeführt wird.

Einen Benutzer-Prozess beendet wird.
Die aktuelle Transaktion ist gerollt
zurück.

Bin ich zu interpretieren der Letzte Punkt bedeutet, dass, wenn ich eine Abfrage ausgeben, dass ein Fehler Auftritt, wird die Transaktion erhalten Rollback?

  • Eigentlich klingt es wie eine sehr interessante Frage an mich. Postgres rollsback auf Fehler, und ich habe oft festgestellt, es nervt (und mich gefragt, ob Oracle haben etwas ähnliches).
  • Sagen Sie mir, warum sind Sie Transaktionen verwenden, wenn Sie nicht möchten, dass ein rollback auf Fehler? Dies ist einer der wichtigsten Zwecke von Transaktionen.
  • Ich bin nicht unbedingt wollen oder nicht wollen. Ich möchte nur wissen, wie Sie funktionieren.
  • dies ist der Oracle - immer Transaktionen.
  • Streng genommen sind Sie immer mit Transaktionen in einer relationalen Datenbank, es ist nur, dass viele Schnittstellen autocommit jede Aussage.
  • genau das war mein Punkt - es gibt keine option, um keine Transaktionen verwenden. Oliver schien von dem Irrtum, dass Sie können opt-out.
  • dba.stackexchange.com/questions/84769/...

InformationsquelleAutor Jason Baker | 2009-09-23
Schreibe einen Kommentar