我只是想知道如果可以这样做的话?例如,如果我要做这样的事情:
$this->db->autocommit(false);
但后来我想把它恢复到默认值;我不能只假设默认为true并执行此操作:
$this->db->autocommit(true);
如果可能,我想将其重置为默认值;或者在想要单个查询自动提交时其他人做了什么?你总是跑步:
$this->db->autocommit(true);
...在查询之前确保autocommit
已启用?
答案 0 :(得分:8)
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';
此外,在其他变量中自动提交是基于每个连接的,将autocommit设置为true不会影响任何其他连接。找到默认值的唯一方法是通过在建立连接时进行检查(在更改状态之前)。