首页  >  文章  >  数据库  >  mysql的commit 以及 rollback,savapoint_MySQL

mysql的commit 以及 rollback,savapoint_MySQL

WBOY
WBOY原创
2016-06-01 13:07:04906浏览

弱菜的进击之路-

一般来说

安装完mysql之后 默认设置的 

set autocommit = true;


每次执行sql语句不能回滚。


现在我们为了试验commit 

我们可以 

use test;

(使用test数据库)

然后 

set autocommit = false; 

设置完之后,如果没执行

commit; 

最多也就是在内存里面存着,数据不会写到数据库之中

一旦我们 commit;之后数据库就被提交到数据库了

当然 

在commit之前 我们可以rollback;回归数据库到commit之前

但是这个rollback等于把你之前做的全回滚了,等于前面都做了无用功了。

所以我们一般会在想要保存的点,弄个存档,就像windows系统里面的还原点一般

比如我做完这个sql语句之后

执行了

savepoint p1;
建立了还原点p1;

然后在继续执行下一条sql语句删除之类的

然后

我执行了

rollback to t1;

那样就可以回到t1的存档点,就像打游戏一样!不爽就读以前的进度

当然如果你执行了commit之后!

你就不能实现rollback了!切记!!!!!!!!!!!!!

大哭大哭作为菜鸟好辛苦!





声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn