简单介绍MySQL开启事务的两种方式
方式 1
START TRANSACTION 或 BEGIN 开始新的事务 COMMIT 提交当前事务 ROLLBACK 回滚当前事务
这是大家熟知的一种方式,其中开启事务的方式 start transaction 和 begin 是相同的。

方式 2
SET autocommit = 0;
默认情况下 autocommit = 1,是自动提交事务的。autommit 是 session 级别的,就是当前连接更改了 autocommit,对其他连接没有影响。设置 autocommit 之后,本次连接的所有 sql 都是事务的形式,比如每次 commit 提交。

通过截图可以看出,有一个事务在执行,因为设置了 set autocommit = 0;,所以后面的 update 操作修改结果,其他 session 并不会查到(RR 级别)。
这时候就需要自己手动执行 commit。
注意的是,autocommit 没有进行更改,此时 autocommit 值还是 0,也就意味着这个 session 后续的 sql 都是需要手动 commit 的。

到此这篇关于MySQL开启事务的方式的文章就介绍到这了。
相关推荐
-
PHP虚拟主机模拟socket发送GET,POST请求2025-04-19 00:59:11
-
php 5.6 已死,关于 php 7 你要知道的几件事!2025-04-19 00:56:15
-
从一道CTF题目谈PHP中的命令执行2025-04-19 00:34:15
-
nginx location在配置中的优先级2025-04-19 00:31:04
-
恶意PHP脚本或成大规模垃圾邮件活动的来源,超半数网站受损!
恶意PHP脚本或成大规模垃圾邮件活动的来源,超半数网站受损!2025-04-19 00:25:44