
# ROLLBACK TO SAVEPOINT
#### 功能描述
ROLLBACK TO SAVEPOINT用于回滚到一个保存点，隐含地删除所有在该保存点之后建立的保存点。
回滚所有指定保存点建立之后执行的命令。保存点仍然有效，并且需要时可以再次回滚到该点。
#### 注意事项
- 不能回滚到一个未定义的保存点，语法上会报错。
- 使用ROLLBACK TO SAVEPOINT回滚到一个保存点。使用RELEASE SAVEPOINT删除一个保存点，但是保留该保存点建立后执行的命令的效果。
 
#### 语法格式
```
ROLLBACK [ WORK | TRANSACTION ] TO [ SAVEPOINT ] savepoint_name;
```
#### 参数说明
- **savepoint_name**
  需要回滚到的保存点
  
 
#### 示例
```
--撤销 my_savepoint 建立之后执行的命令的影响。
m_db=# START TRANSACTION;
m_db=# SAVEPOINT my_savepoint;
m_db=# ROLLBACK TO SAVEPOINT my_savepoint;
m_db=# RELEASE SAVEPOINT my_savepoint;
m_db=# COMMIT;
```
#### 相关链接
[SAVEPOINT](https://support.huaweicloud.com/distributed-m-comp-devg-v8-gaussdb/gaussdb-81-0119.html#ZH-CN_TOPIC_0000002527965446)，[RELEASE SAVEPOINT](https://support.huaweicloud.com/distributed-m-comp-devg-v8-gaussdb/gaussdb-81-0112.html#ZH-CN_TOPIC_0000002527965442)
