Sie können wichtige Zustände innerhalb einer Transaktion erkennen und mithilfe von Savepoints wahlweise zu diesen zurückkehren, um Gruppen von zusammengehörigen Anweisungen zu trennen.
Eine SAVEPOINT-Anweisung definiert einen Zwischenpunkt in einer Transaktion. Sie können alle Änderungen bis zu diesem Punkt rückgängig machen, indem sie den Befehl ROLLBACK TO SAVEPOINT verwenden. Sobald eine RELEASE SAVEPOINT-Anweisung ausgeführt oder die Transaktion beendet wurde, können Sie den Savepoint nicht mehr benutzen. Beachten Sie, dass Savepoints keine Auswirkungen auf COMMITs haben. Wenn ein COMMIT ausgeführt wird, werden alle Änderungen in der Datenbank als permanent festgeschrieben.
Durch RELEASE SAVEPOINT oder ROLLBACK TO SAVEPOINT werden keine Sperren freigegeben: Sperren werden nur am Ende einer Transaktion freigegeben.
Wenn Sie benannte, verschachtelte Savepoints verwenden, können Sie viele aktive Savepoints innerhalb einer Transaktion setzen. Änderungen zwischen einem SAVEPOINT und einem RELEASE SAVEPOINT können aufgehoben werden, indem das Zurücksetzen bis zu einem früheren Savepoint oder auf die Transaktion selbst ausgedehnt wird. Änderungen innerhalb einer Transaktion werden erst zu einem festen Bestandteil der Datenbank, wenn sie festgeschrieben sind. Alle Savepoints werden bei der Beendigung einer Transaktion freigegeben.
Savepoints können im Massenbetriebsmodus nicht verwendet werden. Bei der Verwendung von Savepoints gibt es nur geringe zusätzliche Overheads.
Kommentieren Sie diese Seite in DocCommentXchange. Senden Sie uns Feedback über diese Seite via E-Mail. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |