MySQL默认自动保存,如何更改为手动保存???(可不设置保存点进行回滚)

在学习MySQL事务管理中,一个事务可以分为事务开始,事务之中,事务结束。

设置保存点的情况:在一个事务中可以创建保存点,根据具体情况就可以回退到某保存点;但是如果一个事务被提交了,就不可以回退;

没有设置保存点的情况:如果没有设置保存点,也可以回滚,只能回滚到事务的开始。直接使用 rollback(前提是还没有提交);

一般MySQL默认是自动保存,这样你就会看不到回滚的效果,下面就是如何将MySQL自动保存改为手动保存的步骤:

show variables like '%autocommit%';
set @@session.autocommit=0;

这样就改为手动保存了^-^ 

效果如下图:

 下面就是rollback的效果:更新数据之后进行查询,回滚之后再次进行查询,可以发现数据回到了更新之前的数据

 

猜你喜欢

转载自blog.csdn.net/sophie1314/article/details/83717036