SQL без слёз

Цель книги заключается в том, чтобы научить любого человека работать с реляционными базами данных и получать из них необходимую информацию посредством выполнения SQL-запросов.

Скачать книгу

Погружение в базы данных Oracle

Данная книга является руководством для начинающих специалистов в области анализа и обработки данных. В книге рассматривается язык SQL и его процедурное расширение PL/SQL от компании Oracle.

Купить книгу

 ›  ›  ›  › Точки сохранения SAVEPOINT в PL/SQL Oracle

Точки сохранения SAVEPOINT в PL/SQL Oracle

Простые операторы ROLLBACK и COMMIT, позволяют записывать и отменять всю транзакцию в целом. И хотя это подходит для простых транзакций, но для более сложных транзакций могут потребоваться частичные фиксации или откаты.

Для поддержки отката частичных транзакций необходимо сделать закладки в стратегически важных местах блока транзакций. И если потребуется откат, тогда его можно будет произвести до одного из этих мест. Такие закладки называются – точками сохранения.

Важный момент: чем больше точек сохранения вы используете, тем лучше. Благодаря большому количеству точек сохранения, вы всегда сможете произвести откат транзакций до нужного вам момента.

Для создания точки сохранения, нужно воспользоваться оператором SAVEPOINT.

SAVEPOINT имя_точки_сохранения;

Для того, чтобы произвести откат до созданной точки, достаточно обратиться к ней:

ROLLBACK TO SAVEPOINT имя_точки_сохранения;

Метки: , , .

Записи по теме

Комментарии к записи

  1. Михаил:

    Могут ли быть одноименные точки отката, например, в основном коде и вызываемой процедуре ? Как отработается тогда откат в вызываемом объекте или в основном коде после завершения вызова ?

    Ответить
    • Использование одноименных точек восстановления недопустимо в рамках одной процедуры или функции.

      Ответить

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *