ITPub博客

首页 > 数据库 > > SQL语法-RELEASE SAVEPOINT

SQL语法-RELEASE SAVEPOINT

作者:GaussDB_数据库 时间:2020-01-16 13:36:09 0 删除 编辑

功能描述

RELEASE SAVEPOINT删除一个当前事务先前定义的保存点。

把一个保存点删除就令其无法作为回滚点使用,除此之外它没有其它用户可见的行为。它并不能撤销在保存点建立起来之后执行的命令的影响。要撤销那些命令可以使用ROLLBACK TO SAVEPOINT 。在不再需要的时候删除一个保存点可以令系统在事务结束之前提前回收一些资源。

RELEASE SAVEPOINT也删除所有在指定的保存点建立之后的所有保存点。

注意事项

  • 不能RELEASE一个没有定义的保存点,语法上会报错。
  • 如果事务在回滚状态,则不能释放保存点。
  • 如果多个保存点拥有同样的名字,只有最近定义的那个才被释放。

语法格式

RELEASE [ SAVEPOINT ] savepoint_name;
参数说明

savepoint_name

要删除的保存点的名字

示例

--创建一个新表。
CREATE TABLE tpcds.table1(a int);
--开启事务。
START TRANSACTION;
--插入数据。
INSERT INTO tpcds.table1 VALUES (3);
--建立保存点。
SAVEPOINT my_savepoint;
--插入数据。
INSERT INTO tpcds.table1 VALUES (4);
--删除保存点。
RELEASE SAVEPOINT my_savepoint;
--提交事务。
COMMIT;
--查询表的内容,会同时看到3和4。
SELECT * FROM tpcds.table1;
--删除表。
DROP TABLE tpcds.table1;

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3155193/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2020-01-06

  • 博文量
    2907
  • 访问量
    19245