Старото разширение на mysql няма функции специално за контрол на транзакциите, но можете да издавате SQL изрази, за да правите това, което искате.
Можете имплицитно да изключите autocommit за продължителността на една транзакция, просто като стартирате транзакция:
mysql_query("START TRANSACTION");
Веднага след като COMMIT или ROLLBACK, режимът на автоматично записване ще се върне към стандартния.
mysql_query("COMMIT"); // or ROLLBACK
Можете да изключите автоматичното записване за цялата си сесия, като зададете променлива на сесията:
mysql_query("SET autocommit=0");
Или го променете глобално във вашия MySQL екземпляр, така че да промени по подразбиране за всички сесии:
mysql_query("SET GLOBAL autocommit=0");
Или го задайте да промени глобалната настройка при стартиране на услугата MySQL, като редактирате /etc/my.cnf:
[mysqld]
autocommit=0
Ако използвате MySQL 5.1, трябва да направите това малко по-различно:
[mysqld]
init_connect='SET autocommit=0'
Вероятно вече знаете, но си струва да повторите, че транзакциите означават нещо само ако използвате таблици InnoDB. MyISAM таблиците не поддържат транзакции, така че винаги се извършват автоматично, независимо от вашите настройки. Същото е с няколко други механизми за съхранение, включително MEMORY и CSV.