Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 (Deutsch) » SQL Anywhere Server - SQL-Benutzerhandbuch » Transaktionen und Isolationsstufen

 

Transaktionen

SQL Anywhere erwartet, dass Sie Ihre Anweisungen 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 die COMMIT-Anweisung 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: Dies gilt für die meisten Datendefinitionsanweisungen, wie z.B. 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, müssen Sie Autocommit ausschalten.

  • 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.

Sie können ermitteln, welche Verbindungen ausstehende Transaktionen haben, indem Sie eine Verbindung zu einer Datenbank mit dem SQL Anywhere-Konsolendienstprogramm (dbconsole) herstellen. Überprüfen Sie den Bereich Verbindungen, um zu sehen, welche Verbindung nicht festgeschriebene Vorgänge aufweist.

 Optionen für Interactive SQL
 Startzeit einer Transaktion ermitteln
 Siehe auch