Удалить точку сохранения на сервере ORACLE - PullRequest
0 голосов
/ 14 февраля 2019

Я понимаю, что savepoint в Oracle SQL идентифицирует точку в транзакции, к которой вы можете позже rollback.

Технически, если я создаю savepoint сейчас и выполняю 100 манипуляцийна БД я могу rollback до этих 100 манипуляций.

Но что если теперь я не хочу отслеживать свои изменения и удалять точку сохранения?

спасибо

Ответы [ 2 ]

0 голосов
/ 14 февраля 2019

Как прокомментировал a_horse_with_no_name , в Oracle нет синтаксиса для удаления точки сохранения.

Когда вы COMMIT или ROLLBACK проводите транзакции, точки сохранения автоматически удаляются.

С Документы Oracle по управлению транзакциями :

Оператор COMMIT завершает текущую транзакцию и делает все изменения, выполненные в транзакции, постоянными.COMMIT также стирает все точки сохранения в транзакции и снимает блокировки транзакции.

Оператор ROLLBACK отменяет работу, выполненную в текущей транзакции;это вызывает все изменения данных с момента последнего сброса COMMIT или ROLLBACK.

Вы также можете изменить свой код, чтобы не создавать точки сохранения.

0 голосов
/ 14 февраля 2019

Фиксация (или откат), а затем удалить точку сохранения из вашего кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...