START TRANSACTION
START TRANSACTION — начать блок транзакции
Синтаксис
START TRANSACTION [ режим_транзакции [, ...] ]
где режимом_транзакции может быть:
ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ COMMITTED | READ UNCOMMITTED }
READ WRITE | READ ONLY
[ NOT ] DEFERRABLE
Описание
Эта команда начинает новый блок транзакции. Если указан уровень изоляции, режим чтения/записи или режим откладываемости, то новая транзакция имеет те же характеристики, как если бы была выполнена команда SET TRANSACTION. Данная команда равнозначна команде BEGIN.
Параметры
Информацию о значении параметров для данной команды см. на справочной странице команды SET TRANSACTION.
Совместимость
Согласно стандарту, необязательно выполнять команду START TRANSACTION, чтобы
начать блок транзакции: любая команда SQL неявно начинает блок. Поведение
QHB можно рассматривать как неявное выполнение COMMIT после
каждой команды, которая не следует за START TRANSACTION (или BEGIN), и поэтому
его часто называют «автоматической фиксацией». Другие реляционные СУБД тоже могут
для удобства предлагать возможность автоматической фиксации.
Значение DEFERRABLE параметра режим_транзакции является языковым расширением QHB.
Стандарт SQL требует разделения последовательных режимов_транзакции запятыми, но по историческим причинам QHB позволяет их опустить.
См. также параграф о совместимости на справочной страницы команды SET TRANSACTION.