ROLLBACK TO SAVEPOINT

回退自建立给定的保存点以来已在事务中输入的所有命令。

语法

ROLLBACK TO [SAVEPOINT] savepoint_name

参数

savepoint_name
指定要回退到的保存点名称。

特权

注意

  • 保存点将保持有效状态,如果将来需要,可以再次回退到该保存点。

  • 回退某项操作时,也会回退该操作获取的任何锁。

  • ROLLBACK TO SAVEPOINT 隐式销毁在命名保存点之后建立的所有保存点。

示例

以下示例回退了在建立保存点 my_savepoint 之后输入的值 102 和 103。在提交时仅插入了值 101 和 104。

=> INSERT INTO product_key VALUES (101);
=> SAVEPOINT my_savepoint;
=> INSERT INTO product_key VALUES (102);
=> INSERT INTO product_key VALUES (103);
=> ROLLBACK TO SAVEPOINT my_savepoint;
=> INSERT INTO product_key VALUES (104);
=> COMMIT;

另请参阅