Есть ли способ получить значение по умолчанию autocommit в MySQL?

Мне просто интересно по названию, можно ли это сделать? Например, если бы я должен был сделать что-то вроде этого:

$this->db->autocommit(false);

Но потом я захотел вернуть его к значению по умолчанию; Я не могу просто предположить, что по умолчанию это правда, и сделать это:

$this->db->autocommit(true);

Я хотел бы сбросить его обратно к его значению по умолчанию, если это возможно; или что делают другие люди, когда хотят получить один запрос для автоматической фиксации? Ты всегда бежишь

$this->db->autocommit(true);

…перед запросом, чтобы убедиться, что autocommit включен?

4

Решение

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, это не повлияет на другие соединения. Единственный способ узнать значение по умолчанию — это проверить правильность установки соединения (до изменения состояния).

8

Другие решения

Других решений пока нет …