Rumah > Artikel > pangkalan data > mysql的commit 以及 rollback,savapoint_MySQL
弱菜的进击之路-
一般来说
安装完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;
当然如果你执行了commit之后!
你就不能实现rollback了!切记!!!!!!!!!!!!!
作为菜鸟好辛苦!