START TRANSACTION#

START TRANSACTION

START TRANSACTION

START TRANSACTION — начать блок транзакции

Синтаксис

START TRANSACTION [ transaction_mode [, ...] ]

where transaction_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 SE можно рассматривать как неявное выполнение команды COMMIT после каждой команды, которая не следует за START TRANSACTION (или BEGIN), и поэтому оно часто называется автокоммитом. Другие реляционные базы данных могут предлагать функцию автокоммита для удобства.

DEFERRABLE transaction_mode является расширением языка Tantor SE.

Стандарт SQL требует наличия запятых между последовательными transaction_modes, но по историческим причинам Tantor SE позволяет опускать запятые.

См. также раздел совместимости в SET TRANSACTION.