Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

  • Неделимость (Atomicity). Транзакция либо выполняется полностью, либо не выполняется.
  • Согласованность (Consistency). Транзакция переводит базу данных из одного согласованного состояния в другое.
  • Изолированность (Isolation). Результаты транзакции становятся доступны для других транзакций только после ее фиксации.
  • Продолжительность (Durability). После фиксации транзакции изменения становятся постоянными.

Все команды, выполняемые пользователями на сервере, производятся в теле транзакций. Однако существует два подхода к указанию границ транзакций в потоке команд - явные и неявные транзакции.
Явные транзакции. По умолчанию, каждая команда выполняется как отдельная транзакция. Пользователь может объединить несколько команд в одну транзакцию, явно указав ее начало и конец.
Неявные транзакции. Не существует оператора начала транзакции. Транзакция начинается с началом сеанса работы с БД. Завершается транзакция при следующих событиях:

  • Явно выполненный оператор завершения транзакции - rollback или commit
  • Оператор DDL
  • Завершение сеанса.
    После окончания транзакции сразу неявно начинается новая транзакция