START TRANSACTION#
START TRANSACTION
START TRANSACTION — начать блок транзакции
Синтаксис
START TRANSACTION [transaction_mode
[, ...] ] wheretransaction_mode
is one of: ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ COMMITTED | READ UNCOMMITTED } READ WRITE | READ ONLY [ NOT ] DEFERRABLE
Описание
Эта команда начинает новый блок транзакции. Если указан уровень изоляции, режим чтения/записи или отложенный режим, новая транзакция имеет эти характеристики, как если бы была выполнена команда SET TRANSACTION
. Это то же самое, что и команда BEGIN
.
Параметры
Ссылка на SET TRANSACTION содержит информацию о значении параметров этого оператора.
Совместимость
В стандарте нет необходимости выполнять команду START TRANSACTION
для начала блока транзакции: любая SQL-команда неявно начинает блок.
Поведение Tantor BE можно рассматривать как неявное выполнение команды COMMIT
после каждой команды, которая не следует за START TRANSACTION
(или BEGIN
), и поэтому оно часто называется “автокоммитом”.
Другие реляционные базы данных могут предлагать функцию автокоммита для удобства.
DEFERRABLE
transaction_mode
является расширением языка Tantor BE.
Стандарт SQL требует наличия запятых между последовательными transaction_modes
, но по историческим причинам Tantor BE позволяет опускать запятые.
См. также раздел совместимости в SET TRANSACTION.