Отмена изменений

Функция

Отмена (откат) изменений, внесенных текущей локальной транзакцией.

Спецификация
   
< отмена изменений >::=
ROLLBACK [WORK] [TO SAVEPOINT [имя точки сохранения]] [RELEASE]
Синтаксические правила
  1. ROLLBACK является сокращенной записью (синонимом) фразы ROLLBACK WORK.

  2. Если < имя точки сохранения > задается, то оно должно ссылаться на существующую точку сохранения, созданную оператором SET SAVEPOINT.

    rollback to savepoint AFTER_SALE;
  3. Если в конструкции TO SAVEPOINT < имя точки сохранения > не задано, то откат изменений выполняется до последней установленной точки сохранения или до начала транзакции в случае отсутствия точек сохранения.

  4. Опции TO SAVEPOINT и RELEASE несовместимы.

Общие правила
  1. После выполнения ROLLBACK сделанные изменения отменяются.

  2. Установленные во время транзакции блокировки отменяются.

  3. Если команда ROLLBACK задана без конструкции TO SAVEPOINT, то текущая транзакция завершается и начинается новая транзакция.

  4. Если команда ROLLBACK задана с конструкцией TO SAVEPOINT, то указанная в ней (или последняя, если < имя точки сохранения > не задано) точка сохранения сохраняется и все последующие за ней точки сохранения удаляются.

  5. Опция RELEASE заставляет автоматически закрывать все подчиненные курсоры соединения (по умолчанию при откате транзакции все подчиненные курсоры соединения, по которому подана команда ROLLBACK, остаются в открытом состоянии).