DELETE FROM emp
WHERE JOB = 'SALESMAN'
AND COMM < 100
Пример.
Этот пример, используя подзапрос, выполняет действия, аналогичные предыдущему примеру:
DELETE FROM (select * from emp)
WHERE JOB = 'SALESMAN'
AND COMM < 100
Назначение: отмена работы, выполненной в текущей транзакции.
Требования к использованию: для использования привилегий не требуется.
Синтаксис:
WORK |
требуется для совместимости со стандартом ANSI. |
TO |
откат назад к определённой ранее точке сохранения. Если эта клауза опущена, Oracle делает откат на начало транзакции. |
FORCE |
откат назад дистрибутивной транзакции с именем ‘text’. |
ROLLBACK с клаузой FORCE не поддерживается PL/SQL.
Транзакция (или логическая единица работы) – последовательность SQL-операторов, которые Oracle трактует как единое целое. Транзакция начинается после первого выполнения оператора COMMIT, ROLLBACK или присоединения к базе данных. Транзакция заканчивается операторами COMMIT, ROLLBACK или отсоединением от базы данных.
Использование команды ROLLBACK без клаузы SAVEPOINT выполняет:
* заканчивает транзакцию;
* отменяет все изменения в текущей транзакции;
* удаляет все точки сохранения в данной транзакции;
* освобождает все блокировки данной транзакции;
Использование команды ROLLBACK с клаузой SAVEPOINT выполняет:
* частичный откат транзакции к точке сохранения;
* сохраняет информацию о точке сохранения, к которой был произведен откат, но стирает все последующие точки сохранения;
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.