SQL Anywhere erwartet, dass Sie Ihre Befehle in Transaktionen zusammenfassen. Wenn Sie eine solche Transaktion festschreiben, dann werden die Änderungen in der Datenbank permanent gespeichert. Wenn Sie Daten ändern, werden Ihre Änderungen im Transaktionslog aufgezeichnet und erst dann dauerhaft gemacht, wenn Sie den COMMIT-Befehl eingeben.
Transaktionen beginnen mit einem der folgenden Ereignisse:
Erste Anweisung nach erfolgter Verbindung mit einer Datenbank
Erste Anweisung nach dem Ende einer Transaktion
Transaktionen werden mit einem der folgenden Ereignisse abgeschlossen:
Eine COMMIT-Anweisung schreibt die Änderungen in der Datenbank fest.
Eine ROLLBACK-Anweisung macht alle durch die Transaktionen durchgeführten Änderungen rückgängig.
Eine Anweisung wird ausgeführt und schreibt gleichzeitig auch alle Änderungen automatisch fest: Es handelt sich dabei um Definitionsbefehle für Daten, wie zum Beispiel ALTER, CREATE, COMMENT und DROP.
Durch die Unterbrechung der Verbindung zur Datenbank wird ein indirektes Zurücksetzen ausgeführt.
ODBC und JDBC haben eine Autocommit-Einstellung, die COMMIT nach jeder Anweisung erzwingt. Standardmäßig erfordern ODBC und JDBC, dass Autocommit aktiviert und jede Anweisung eine einzelne Transaktion ist. Wenn Sie die Möglichkeiten von Transaktionen nutzen wollen, müssen Sie Autocommit ausschalten.
Weitere Hinweise zu Autocommit finden Sie unter Automatisch oder manuell festschreiben.
Wenn die Datenbankoption "chained" auf "Off" gesetzt wird, hat dies ähnliche Auswirkungen wie das Erzwingen von "Autocommit" nach jeder Anweisung. Standardmäßig ist "chained" bei Verbindungen, die jConnect- oder Open Client-Anwendungen benutzen, auf "Off" gesetzt.
Siehe Automatisch oder manuell festschreiben und chained-Option.
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |