Verwenden Sie diese Anweisung, um alle Änderungen, die seit einer SAVE TRANSACTION-Anweisung vorgenommen wurden, zu löschen.
ROLLBACK TRANSACTION [ Savepoint-Name ]
Die ROLLBACK TRANSACTION-Anweisung macht alle Änderungen rückgängig, die seit einem mit SAVE TRANSACTION gesetzten Savepoint durchgeführt wurden. Änderungen, die vor der SAVE TRANSACTION-Anweisung vorgenommen wurden, werden nicht rückgängig gemacht. Sie bleiben weiterhin gültig.
Der Savepoint-Name ist ein Bezeichner, der für eine SAVE TRANSACTION-Anweisung innerhalb der aktuellen Transaktion angegeben wurde. Wenn kein Savepoint-Name angegeben ist, werden alle ausstehenden Änderungen zurückgesetzt. Alle Savepoints seit dem benannten Savepoint werden automatisch freigegeben.
Innerhalb der aktuellen Transaktion muss es eine entsprechende SAVE TRANSACTION-Anweisung geben.
Keine.
SQL/2003 Erweiterung des Herstellers
Das folgende Beispiel zeigt fünf Zeilen mit den Werten "10", "20", usw. an. Die Auswirkung des Vorgangs DELETE wird durch die ROLLBACK TRANSACTION-Anweisung rückgängig gemacht, jedoch nicht die Auswirkung der vorherigen Vorgänge INSERT oder UPDATE.
BEGIN SELECT row_num INTO #tmp FROM sa_rowgenerator( 1, 5 ) UPDATE #tmp SET row_num=row_num*10 SAVE TRANSACTION before_delete DELETE FROM #tmp WHERE row_num >= 3 ROLLBACK TRANSACTION before_delete SELECT * FROM #tmp END |
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 |