gpt4 book ai didi

mysql - 在事务中设置 autocommit=0 有什么作用吗?

转载 作者:可可西里 更新时间:2023-11-01 08:05:38 29 4
gpt4 key购买 nike

我正在审查另一位开发人员的代码。他有一个在 MySQL 事务开始时显式添加 set autocommit=0 的提交。这会导致 session 中其他非事务性查询出现问题。

在事务中添加 set autocommit=0那个事务有什么作用吗?我认为它不会,因为无论如何事务都会隐式地执行此操作。

[对于这次提交,我能想到的唯一理由可能是数据库曾经使用过 MyISAM(相对于当前的 InnoDB),这可能是模仿前者事务的一种方式?]

最佳答案

如果事务处于事件状态,则它不受 SET autocommit = 0 的影响。

否则,如果 autocommit 的前一个值为 1,则 SET autocommit = 0 开始一个新事务。

如果您正在使用 MariaDB 并且您有疑问,您可以检查 in_transaction 变量。

关于mysql - 在事务中设置 autocommit=0 有什么作用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28618561/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com