ROLLBACK в Oracle SQL. Введение
В процессе работы с данными могут возникнуть ошибки, сбои или неправильные действия. Что делать, если вы случайно обновили или удалили данные до COMMIT? 💡 Ответ — использовать ROLLBACK, чтобы отменить все несохранённые изменения и вернуть БД в исходное состояние.
🔤 Написание
Откатывает текущую незавершённую транзакцию.
🔄 Где часто используется
При ошибках в логике обновления данных
Для безопасного тестирования
В блоках обработки ошибок
Вместе с
SAVEPOINTдля частичного откатаПри ручной работе в SQL Developer/TOAD
🧪 10 Примеров использования с пояснениями
1️⃣ Обычное применение
Операция будет отменена, как будто её не было.
2️⃣ Откат после нескольких действий
Оба действия отменятся.
3️⃣ Проверка до и после COMMIT
Откат работает, пока нет COMMIT.
4️⃣ Внутри PL/SQL блока
Автоматическая проверка и решение: откат или фиксация.
5️⃣ Откат при ошибке (EXCEPTION блок)
Защита от сбоев при ошибке выполнения.
6️⃣ Использование SAVEPOINT с частичным откатом
Вернулись к сохранённой точке, не откатывая всё.
7️⃣ Откат в цикле
Операции до ROLLBACK будут отменены.
8️⃣ Проверка состояния после Роллбэк
Изменения были временными.
9️⃣ Работа в интерфейсах (SQL Developer)
Поведение транзакций в GUI.
🔟 В процедурах (предпочтительно вручную)
Откат, если логика требует отмены действий.
🧩 Заключение
ROLLBACK — это жизненно важный оператор для контроля безопасности данных. Он позволяет отменить нежелательные или ошибочные изменения, пока они не были зафиксированы.
Используй его, чтобы защитить свою базу от потерь и некорректных операций.
💡 Основное:
Работает до
COMMITОтменяет всю текущую транзакцию
Совместим с
SAVEPOINTИспользуется в блоках ошибок и при ручном управлении