Rollback оператор, oracle pl

У Oracle оператор ROLLBACK використовується для скасування роботи, виконуваної поточної транзакцією або транзакції, яка сумнівна.

ROLLBACK [WORK] [TO [SAVEPOINT] savepoint_name | FORCE 'string'];

Параметри або аргументи

WORK
Необов'язковий. Він був доданий в Oracle, щоб бути SQL-сумісним. Видача ROLLBACK з або без параметра WORK призведе до такого ж результату.

TO SAVEPOINT savepoint_name
Необов'язковий. Оператор ROLLBACK скасовує всі зміни для поточної сесії до точки збереження зазначеного savepoint_name. Якщо цей пункт опущений, то всі зміни скасовуються.

FORCE 'string'
Необов'язковий. Він використовується, щоб примусово відкотити транзакцію, яка може бути сумнівна або пошкоджена. За допомогою цього параметра ви вказуєте ID (ідентифікатор) транзакції в одинарні лапки, як рядок. Ви можете знайти ID (ідентифікатор) транзакції в поданні системи під назвою DBA_2PC_PENDING.

Примітка

  • Ви повинні мати DBA привілеї для доступу до системних уявленням - DBA_2PC_PENDING і V $ CORRUPT_XID_LIST.
  • Ви не можете відкотити до точки збереження сумнівну транзакцію.

Розглянемо на прикладі, який показує, як оформити відкат в Oracle за допомогою оператора ROLLBACK.

Цей ROLLBACK приклад буде виконуватися так само, як наступний:

У цьому прикладі ключове слово WORK означає, що перші 2 ROLLBACK затвердження еквівалентні. Ці приклади відкочують поточну транзакцію.

Розглянемо приклад ROLLBACK, який показує, як використовувати відкат до певної savepoint (точці збереження).
Наприклад, ви можете написати ROLLBACK c savepoint двома способами:

ROLLBACK TO SAVEPOINT savepoint1;

ROLLBACK WORK TO SAVEPOINT savepoint1;

Оскільки ключове слово WORK завжди мається на увазі, обидва приклади ROLLBACK відкотять поточну транзакцію до savepoint званої savepoint 1.

І нарешті, розглянемо приклад ROLLBACK, який показує, як примусово відкотити сумнівну транзакцію.
Наприклад, ви можете написати ROLLBACK для сумнівних транзакцій двома способами:

ROLLBACK FORCE '23 .15.68 ';

ROLLBACK WORK FORCE '23 .15.68 ';

Оскільки ключове слово WORK завжди мається на увазі, обидва з цих прикладів ROLLBACK примусять до відкоту пошкодженої або сумнівною транзакції, ідентифікованої - ID транзакції '23 .15.68 '.

Навігація по публікаціям

Схожі статті