【转】mysql中set autocommit=0与start transaction的关系
2024-09-03 12:44:06
在mysql中用户的任何一个更新操作(写操作)都被视为一个事务,set autocommit=0指事务非自动提交,自此句执行以后,每个SQL语句或者语句块所在的事务都需要显示"commit"才能提交事务。set autocommit=1指事务自动提交,当用户每执行一条更新sql语句系统都会立即保存在数据表中。
1、不管autocommit 是1还是0
START TRANSACTION 后,只有当commit数据才会生效,ROLLBACK后就会回滚。
2、当autocommit 为 0 时
不管有没有START TRANSACTION。
只有当commit数据才会生效,ROLLBACK后就会回滚。
3、如果autocommit 为1 ,并且没有START TRANSACTION 。
调用ROLLBACK是没有用的。即便设置了SAVEPOINT。
最新文章
- JavaScriptSerializer序列化时间处理
- hdu - 3959 Board Game Dice(数学)
- java中使用mysql
- java线程图
- 【学习总结】UIGestureRecognizer(手势识别器)
- soap和http(转)
- navicat导出表结构-->;导入powerdesigner
- 数据结构与算法(c++)——双缓存队列
- strings.h 与 string.h 头文件的区别
- i春秋----Misc
- Spring系列之手写一个SpringMVC
- 解决html5中video标签无法播放mp4问题的办法
- application Initialization设置导致处理程序ExtensionlessUrlHandler-Integrated-4.0在其模块列表中有一个错误模块问题的解决
- 通过sqli-labs学习sql注入——基础挑战之less1-3
- C# 项目迁移 Microsoft.VisualStudio.Tools.Office.BuildTasks 生成解决方法报错:请确认 <;UsingTask>; 声明正确,该程序集及其所有依赖项都可用
- bash: php: command not found
- SpringBoot配置文件注入值数据校验
- react native组件的创建
- Python--进阶处理9
- HDU 1009 FatMouse&#39; Trade(简单贪心)