Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
SAVE TRANSACTION の後に加えられた変更を取り消します。
ROLLBACK TRANSACTION [ savepoint-name ]
ROLLBACK TRANSACTION 文は、SAVE TRANSACTION を使用してセーブポイントが作成されてから加えられた変更を取り消します。SAVE TRANSACTION の前に加えられた変更は取り消されず、そのまま残ります。
savepoint-name は、現在のトランザクションの SAVE TRANSACTION 文で指定された識別子です。savepoint-name を省略すると、未処理のまま残っている変更がすべてロールバックされます。指定したセーブポイントの後にあるセーブポイントは自動的に解放されます。
現在のトランザクションに、対応する SAVE TRANSACTION を入れておいてください。
なし。
なし
SQL/2008 ベンダー拡張。
次の例は、値 10、20 などの 5 つのローを表示します。DELETE の効果は ROLLBACK TRANSACTION 文によって取り消されますが、前の INSERT または 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