我只是想知道这个标题是否可以做到?例如,如果我要做这样的事情:
$this->db->autocommit(false);
但之后我想将它设置回默认值;我不能假设它默认为 true 并执行此操作:
$this->db->autocommit(true);
如果可能的话,我想将它重置为默认值;或者其他人在希望单个查询自动提交时会做什么?你经常运行吗:
$this->db->autocommit(true);
...在查询之前确保 autocommit
开启?
最佳答案
http://php.net/manual/en/mysqli.autocommit.php
To determine the current state of autocommit use the SQL command SELECT @@autocommit.
不过,确定它是否打开以及是否打开它似乎很愚蠢。
另一种方法是使用:
SHOW VARIABLES WHERE Variable_name='autocommit';
其他变量中的自动提交也是基于每个连接的,您将自动提交设置为 true 不会影响任何其他连接。找到默认值的唯一方法是在建立连接时(在更改状态之前)进行正确检查。
关于php - 有没有办法在MySQL中获取自动提交的默认值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26913154/