RELEASE SAVEPOINT
Эта страница переведена при помощи нейросети GigaChat.
RELEASE SAVEPOINT - удаление ранее созданной точки сохранения.
Синтаксис
RELEASE [ SAVEPOINT ] savepoint_name
Описание
RELEASE SAVEPOINT удаляет ранее созданную точку сохранения в рамках текущей транзакции.
Удаление точки сохранения делает ее недоступной для отката (то есть больше нельзя выполнить ROLLBACK TO SAVEPOINT к ней), но не оказывает никакого другого видимого влияния на поведение транзакции. Она не отменяет действия, выполненные после создания точки сохранения. Чтобы откатиться к определенному моменту — используйте ROLLBACK TO SAVEPOINT.
RELEASE SAVEPOINT также удаляет все точки сохранения, установленные после заданной точки.
Параметры
savepoint_name
Точка сохранения, которая должна быть удалена.
Примечания
Указание имени точки сохранения, которая не была создана ранее, приведет к ошибке.
Нельзя удалить точку сохранения, если транзакция находится в прерванном состоянии.
Если было создано несколько точек сохранения с одинаковым именем, то команда удалит только самый последний. Повторные вызовы RELEASE SAVEPOINT будут удалять последовательно более старые точки с тем же именем.
Примеры
Создание и удаление точки сохранения:
BEGIN;
INSERT INTO table1 VALUES (3);
SAVEPOINT my_savepoint;
INSERT INTO table1 VALUES (4);
RELEASE SAVEPOINT my_savepoint;
COMMIT;
Данная транзакция вставит значения 3 и 4.
Совместимость
Эта команда соответствует стандарту SQL. Стандарт определяет, что ключевое слово SAVEPOINT является обязательным, но PostgreSQL позволяет его опускать.