首页 > 数据库技术 > 详细

MySQL 中 savepoint 的使用

时间:2019-05-11 10:22:04      阅读:176      评论:0      收藏:0      [点我收藏+]

 介绍

savepoint 结点名;    # 设置保存点,并和rollback结合使用,实现回滚到指定保存点

rollback to 结点名;  # 回滚到指定点

样例演示

USE human;
SET autocommit = 0;
start transaction;
INSERT man VALUES(NULL,caster);#最终的表中含有
savepoint x;
#设置保存点
INSERT man VALUES(NULL,ruler);
#在执行完毕后,这条数据不存在,但是自增列的值因为这个语句的插入而发生改变,相当于先插入后删除
SELECT * FROM man;
#这个的表中有ruler
ROLLBACK TO x;
#回滚到设置好的保存点x
SELECT * FROM man;
#这个表中没有ruler,因为回滚后没有在执行保存点下面的插入语句,

 第一个select的结果

技术分享图片

第二个select的结果

技术分享图片

现在为了证明回滚相当于先插入后删除的效果,执行下列语句

INSERT man VALUES(NULL,ruler);

man表的类型

技术分享图片

得表

技术分享图片

MySQL 中 savepoint 的使用

原文:https://www.cnblogs.com/winter-bamboo/p/10847402.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!