首页 > 数据库技术 > 详细

MySQL学习笔记:set autocommit=0和start transaction

时间:2018-05-29 01:15:39      阅读:954      评论:0      收藏:0      [点我收藏+]

  在MySQL中,接触事务的例子比较少,今晚在一个简单的存储过程中,循环插入50000条id数据的时候,得知必须开事务,如果逐提交数据,将会导致速度异常的慢。

  SET autocommit = 0;   指事务非自动提交,执行以后,每个SQL语句或语句块所在的事务都需要显示“commit”才能提交事务;

1、不管autocommit 是1还是0 
  START TRANSACTION 后,只有当commit数据才会生效,ROLLBACK后就会回滚。

2、当autocommit 为 0 时
  不管有没有START TRANSACTION。
  只有当commit数据才会生效,ROLLBACK后就会回滚。

3、如果autocommit 为1 ,并且没有START TRANSACTION 。
  调用ROLLBACK是没有用的。即便设置了SAVEPOINT。


END 2018-05-29 00:26:53

 

MySQL学习笔记:set autocommit=0和start transaction

原文:https://www.cnblogs.com/hider/p/9103051.html

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