# 释放保存点
RELEASE SAVEPOINT — 销毁之前定义的保存点
# 概要
RELEASE [ SAVEPOINT ] savepoint_name
# 描述
释放保存点
销毁先前在当前事务中定义的保存点。
销毁保存点使其无法作为回滚点,但它没有其他用户可见行为。它不会撤消建立保存点后执行的命令的效果。(为此,请参阅回滚到保存点.) 在不再需要保存点时销毁它允许系统在事务结束之前回收一些资源。
释放保存点
还会销毁在指定保存点建立后建立的所有保存点。
# 参数
保存点名称
要销毁的保存点的名称。
# 笔记
指定以前未定义的保存点名称是错误的。
当事务处于中止状态时,无法释放保存点。
如果多个保存点具有相同的名称,则仅释放最近定义的一个。
# 例子
要建立并稍后销毁保存点:
BEGIN;
INSERT INTO table1 VALUES (3);
SAVEPOINT my_savepoint;
INSERT INTO table1 VALUES (4);
RELEASE SAVEPOINT my_savepoint;
COMMIT;
上述事务将插入 3 和 4.
# 兼容性
该命令符合 SQL 标准。标准规定了关键词保存点
是强制性的,但 PostgreSQL 允许省略它。