首页 > 数据库 > > SQL语法-SAVEPOINT
SAVEPOINT用于在当前事务里建立一个新的保存点。
保存点是事务中的一个特殊记号,它允许将那些在它建立后执行的命令全部回滚,把事务的状态恢复到保存点所在的时刻。
SAVEPOINT savepoint_name;参数说明
savepoint_name
新建保存点的名字。
--创建一个新表。
CREATE TABLE table1(a int);
--开启事务。
START TRANSACTION;
--插入数据。
INSERT INTO table1 VALUES (1);
--建立保存点。
SAVEPOINT my_savepoint;
--插入数据。
INSERT INTO table1 VALUES (2);
--回滚保存点。
ROLLBACK TO SAVEPOINT my_savepoint;
--插入数据。
INSERT INTO table1 VALUES (3);
--提交事务。
COMMIT;
--查询表的内容,会同时看到1和3,不能看到2,因为2被回滚。
SELECT * FROM table1;
--删除表。
DROP TABLE table1;
--创建一个新表。
CREATE TABLE table2(a int);
--开启事务。
START TRANSACTION;
--插入数据。
INSERT INTO table2 VALUES (3);
--建立保存点。
SAVEPOINT my_savepoint;
--插入数据。
INSERT INTO table2 VALUES (4);
--回滚保存点。
RELEASE SAVEPOINT my_savepoint;
--提交事务。
COMMIT;
--查询表的内容,会同时看到3和4。
SELECT * FROM table2;
--删除表。
DROP TABLE table2;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3125416/ ,如需转载,请注明出处,否则将追究法律责任。