Полезная статья? Пожалуйста, поставьте "+"
Базы данных - Содержание Транзакция представляет собой
последовательность операторов языка SQL, которая рассматривается как
некоторое неделимое действие над базой данных. В то же время, это
логическая единица работы системы. Понятие транзакции имеет
непосредственное отношение к целостности БД. СУБД автоматически следит,
чтобы каждая отдельная команда SQL не нарушала целостность БД.
Существуют различные модели транзакций, которые могут быть
классифицированы на основании различных свойств, включающих структуру
транзакции, параллельность внутри транзакции, продолжительность и т.д.
Чаще всего имеют в виду традиционные транзакции, характеризуемые
четырьмя классическими свойствами: атомарности, согласованности,
изолированности, долговечности (прочности) — ACID (Atomicity,
Consistency, Isolation, Durability). Иногда традиционные транзакции
называют ACID-транзакциями. Упомянутые выше свойства означают следующее.
1. Свойство атомарности выражается в том, что транзакция должна быть выполнена в целом или не выполнена вовсе. 2.
Свойство согласованности гарантирует, что по мере выполнения транзакций
данные переходят из одного согласованного состояния в другое —
транзакция не разрушает взаимной согласованности данных. 3. Свойство
изолированности означает, что конкурирующие за доступ к базе данных
транзакции физически обрабатываются последовательно, изолированно друг
от друга, но для пользователей это выглядит так, как будто они
выполняются параллельно. 4. Свойство долговечности трактуется
следующим образом: если транзакция завершена успешно, то те изменения в
данных, которые были ею произведены, не могут быть потеряны ни при каких
обстоятельствах (даже в случае последующих ошибок).
Таким образом, возможны два варианта
завершения транзакции. Если все операторы выполнены успешно, и в
процессе выполнения транзакции не произошло никаких сбоев программного
или аппаратного обеспечения, транзакция фиксируется.
|