50447 (572562), страница 2
Текст из файла (страница 2)
Согласованность - гарантирует, что по мере выполнения транзакций, данные переходят из одного согласованного состояния в другое, т.е. транзакция не разрушает взаимной согласованности данных.
Изолированность - означает, что конкурирующие за доступ к БД транзакции физически обрабатываются последовательно, изолированно друг от друга, но для пользователей это выглядит так, как будто они выполняются параллельно.
Долговечность - если транзакция завершена успешно, то те изменения, в данных, которые были ею произведены, не могут быть потеряны ни при каких обстоятельствах.
Варианты завершения транзакций:
Если все операторы выполнены успешно и в процессе выполнения транзакции не произошло никаких сбоев программного или аппаратного обеспечения, то транзакция фиксируется.
Фиксация транзакции - это действие, обеспечивающее запись на диск изменений в БД, которые были сделаны в процессе выполнения транзакций. Фиксация транзакций означает, что все результаты ее выполнения становятся постоянными, и станут видимыми другим транзакциям только после того, как текущая транзакция будет зафиксирована. Если в процессе выполнения транзакций случилось нечто такое, что делает невозможным ее нормальное завершение, БД должна быть возвращена в исходное состояние.
Откат транзакции - это действие, обеспечивающее аннулирование всех изменений данных, которые были сделаны операторами SQL в теле текущей незавершенной транзакции.
Каждый оператор в транзакции выполняет свою часть работы, но для успешного завершения всей работы в целом, требуется безусловное завершение всех их операторов. В стандарте ANSI/ISO SQL транзакция завершается одним из 4-х возможных путей:
Оператор COMMIT означает успешное завершение транзакции, его использование делает постоянными изменения, внесенные в БД в рамках текущей транзакции.
Оператор ROLLBACK прерывает транзакцию, отменяя изменения, сделанные в БД в рамках этой транзакции. Новая транзакция начинается непосредственно после использования ROLLBACK.
Успешное завершение программы, в которой была инициирована текущая транзакция, означает успешное завершение транзакции (как будто был использован оператор COMMIT). Ошибочное завершение программы прерывает транзакцию (как будто был использован оператор ROLLBACK).
Список литературы
-
Карпова Т. С. Базы данных: Модели, разработка, реализация/ Т. С. Карпова СПб: Питер 2006 – 98с.
-
Фуфаев Э.В. Разработка и эксплуатация удаленных баз данных/ Э.В. Фуфаев, Д.Э. Фуфаев Изд.: Академия 2008 - 256с.
-
Кренке Д. Теория и практика построения баз данных: пер.с англ / Д. Кренке. - 9 - е изд. - СПб.: Питер, 2005. - 858 с.
-
Петров В.Н. Информационные системы/В.Н. Петров. – СПб.: Питер, 2002 – 123с
-
Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. Базы данных: Учебник для высших учебных заведений / Под ред. проф. А.Д. Хомоненко. - СПб.: КОРОНА 2000. - 416с.
Размещено на Allbest.ru