Сохранение (фиксация) в БД изменений, внесенных текущей локальной транзакцией.
::=
COMMIT
является сокращенной записью (синонимом) фразы COMMIT WORK
.
Если <имя точки сохранения>
задается, то оно должно ссылаться на существующую точку сохранения, созданную оператором SET SAVEPOINT
.
commit to savepoint AFTER_SALE;
Фиксация изменений выполняется от
начала транзакции (в случае отсутствия предыдущих команд COMMIT TO SAVEPOINT
в той же транзакции);
нового начала транзакции, установленного после выполнения в текущей транзакции оператора COMMIT TO SAVEPOINT
до конца транзакции, если не задана конструкция TO SAVEPOINT
;
указанной точки сохранения, если <имя точки сохранения>
задано;
последней определенной точки сохранения, если <имя точки сохранения>
в
конструкции TO SAVEPOINT
не задано (или до начала транзакции в случае
отсутствия точек сохранения).
Опции TO SAVEPOINT
и RELEASE
несовместимы.
После выполнения COMMIT
сделанные изменения становятся постоянными и необратимыми.
Установленные во время транзакции блокировки отменяются.
Если команда COMMIT
задана без конструкции TO SAVEPOINT
, то текущая транзакция неявно завершается и начинается новая транзакция.
Если команда COMMIT
задана с конструкцией TO SAVEPOINT
, то заданная (или последняя, если <имя точки сохранения>
не задано) точка сохранения сохраняется, а все предшествующие ей удаляются.
Если при выполнении COMMIT
произошла ошибка, выполняется автоматический ROLLBACK
к началу транзакции.
Опция RELEASE
заставляет автоматически закрывать все подчиненные курсоры соединения (по умолчанию при подтверждении транзакции все подчиненные курсоры соединения, по которому подана команда COMMIT
, остаются в открытом состоянии).