Полосатый жираф Алик
Искусственный Интеллект
(313143)
13 лет назад
По умолчанию СУБД MySQL работает в режиме автоматического завершения транзакций, т. е. как только выполняется оператор обновления данных, который модифицирует таблицу, MySQL тут же сохраняет изменения на диске. Для объединения в транзакцию нескольких операторов необходимо отключить этот режим. Это можно осуществить при помощи оператора SET AUTOCOMMIT
mysql> SET AUTOCOMMIT=0;
После отключения режима автоматического завершения транзакций следует использовать оператор COMMIT, чтобы сохранить изменения на диске, либо ROLLBACK, чтобы отменять изменения, выполненные с момента начала транзакции. Для того, чтобы включить режим автоматического завершения транзакций необходимо выполнить оператор SET AUTOCOMMIT=1.
Евгений Заминев
Мастер
(1303)
13 лет назад
Отключает объединение в транзакцию нескольких операторов.
fuji fujigajievМыслитель (6183)
13 лет назад
Ой, блин, ну ты и объяснил. А попонятнее можно?
Что за объединение? В какую еще транзакцию?
А если не отключить, что будет?
Полный код выглядит вот так:
mysql> SET AUTOCOMMIT=1;
mysql> DELETE FROM pet;
mysql> LOAD DATA LOCAL INFILE "pet.txt" INTO TABLE pet;
Только я совершенно не врубаюсь зачем эта строка тут нужна, и нужна ли вообще?