ホームページ  >  記事  >  データベース  >  mysql的commit 以及 rollback,savapoint_MySQL

mysql的commit 以及 rollback,savapoint_MySQL

WBOY
WBOYオリジナル
2016-06-01 13:07:04905ブラウズ

弱菜的进击之路-

一般来说

安装完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 までご連絡ください。