Autocommit mode в MySQL

Режим autocommit.

Режим autocommit определяет как именно и когда начинаются новые транзакции в базе данных. По умолчанию в MySQL этот режим включен. Это приводит к тому, что каждая новая команда SQL неявно представляет собой новую транзакцию. Если ошибок нет, то изменения сразу записываются на диск, т.е. транзакция будет завершена. Continue reading

Команды управления транзакциями.

Команды управления транзакциями в MySQL.

Следующие команды в MySQL используются для управления транзакциями:

  • START TRANSACTION или BEGIN – команда, которая явно начинает транзакцию.
  • SAVEPOINT – команда для установки в транзакции точки сохранения (точки отката) с именем identifier. Синтаксис команды SAVEPOINT identifier. Если в транзакции устанавливаются две точки сохранения с одинаковым именем, то более старая точка сохранения удаляется.
  • COMMIT – делает все изменения, проведенные в данной транзакции постоянными. Явно завершает текущую транзакцию.
  • ROLLBACK – отменяет все изменения, сделанные в данной транзакции. Также явно завершает текущую транзакцию.
  • ROLLBACK TO SAVEPOIN – отменяет все изменения, сделанные начиная с указанной точки сохранения.
    Имеет синтаксис ROLLBACK SAVEPOINT identifier. Если данной команде указать не существующий SAVEPOINT, она завершится с ошибкой.
  • RELEASE SAVEPOINT – удаляет, указанную ранее точку сохранения.
    Синтаксис команды RELEASE SAVEPOINT identifier.
  • SET AUTOCOMMIT – включает или отключает режим AUTOCOMMIT MODE. При включенном режиме AUTOCOMMIT, если все команды в транзакции исполняются успешно, все изменения будут автоматически сохранены.

 

 

 

Транзакции.

Что такое транзакция.

Транзакция – группа последовательных SQL команд в базе данных, которые выполняются как один логический блок. SQL команды, входящие в транзакцию, должны быть либо все выполнены в случае успеха, либо все отменены. Транзакции необходимы для работы в многопользовательском режиме, т.к. могут выполняться параллельно и независимо от других транзакций. Continue reading