Общие сведения об обработке транзакций в PL/SQL Oracle
Обработка транзакцией служит для поддержания целостности базы данных, обеспечивая выполнение в Oracle либо всех операторов SQL, либо одного из них.
Обработка транзакций – механизм, применяемый для управления последовательности операторов SQL, которые должны выполняться группами, чтобы не сохранять в базе данных частичные результаты выполнения операций.
Благодаря обработке транзакций можно гарантировать, что последовательности операций не прервутся посредине обработки. Они должны быть выполнены либо полностью, либо вообще не выполнен, если только не указано иное. Если никаких ошибок не возникает, вся последовательность операций фиксируется (т.е. результаты записываются) в таблицах базы данных. Если же возникает какая-нибудь ошибка, может произойти откат (или отмена) всей последовательности операций, чтобы восстановить базу данных до известного и безопасного состояния.
Для работы с механизмом транзакций полезно знать ряд основных терминов:
- Транзакция – блок или группа операторов SQL;
- Откат – процесс отмены действия указанных операторов SQL;
- Фиксация – запись не сохранённых результатов выполнения операторов SQL в таблицах базы данных;
- Точка сохранения – временное место в наборе транзакции, к которому можно произвести откат, в отличие от отката всей транзакции.
Управление транзакциями
Самое главное для управления транзакциями – разбить операторы SQL на логические блоки и явно указать, когда именно следует и когда не следует производить откат данных.
В отличие от большинства систем управления базами данных (СУБД), в Oracle не требуется начинать транзакции, поскольку они подразумеваются неявно, то есть всякий раз, когда выполняется оператор SQL, транзакция начинается и завершается. И даже если одновременно выполняется несколько операторов, все они относятся к одной транзакции.
Метки: Oracle, Транзакции.