Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основные шпоры по БД.doc
Скачиваний:
0
Добавлен:
09.12.2019
Размер:
679.42 Кб
Скачать

1. Транзакции, основные свойства и определения (понятие транзакции, основные свойства, понятие графика запуска транзакций).

Под транзакцией понимается неделимая с точки зрения воздействия на БД последовательность операторов манипулирования данными (чтения, удаления, вставки, модификации), приводящая к одному из двух возможных результатов: либо последовательность выполняется, если все операторы правильные, либо вся транзакция откатывается, если хотя бы один оператор не может быть успешно выполнен. Обработка транзакций гарантирует целостность информации в базе данных. Таким образом, транзакция переводит базу данных из одного целостного состояния в другое.

Корректное поддержание транзакций является основой обеспечения целостности БД. Транзакции также составляют основу изолированности в многопользовательских системах, где с одной БД параллельно могут работать несколько пользователей или прикладных программ. Одна из основных задач СУБД – обеспечение изолированности, т.е. создание такого режима функционирования, при котором каждому пользователю казалось бы, что БД доступна только ему. Такую задачу СУБД принято называть параллелизмом транзакций.

Основные свойства:

1) Транзакция неделима. Транзакция выполняется как атомарная операция - либо выполняется вся транзакция целиком, либо она целиком не выполняется.

2) Транзакция является согласованной, потому что не нарушает бизнес-логику и отношения между элементами данных. Транзакция переводит базу данных из одного согласованного (целостного) состояния в другое согласованное (целостное) состояние.

3) Транзакция всегда изолирована, поскольку ее результаты самодостаточны. Они не зависят от предыдущих или последующих.

4) Транзакция устойчива. Если транзакция выполнена, то результаты ее работы должны сохраниться в базе данных, даже если в следующий момент произойдет сбой системы.

График запуска транзакций - последовательность, в которой выполняются элементарные операции заданного набора транзакций.

2. Ограничения целостности, классификация ограничений целостности. Реакция системы на нарушение ограничений целостности.

Ограничение целостности - это некоторое утверждение, которое может быть истинным или ложным в зависимости от состояния базы данных.

База данных находится в согласованном (целостном) состоянии, если выполнены (удовлетворены) все ограничения целостности, определенные для базы данных.

Реакция системы на попытку нарушения целостности - система должна не только проверять, не нарушаются ли ограничения в ходе выполнения различных операций, но и должным образом реагировать, если операция приводит к нарушению целостности. Имеется два типа реакции на попытку нарушения целостности:

1)Отказ выполнить "незаконную" операцию.

2)Выполнение компенсирующих действий.

Ограничения целостности можно классифицировать несколькими способами:

1)По способам реализации.

-Декларативная поддержка ограничений целостности(заключается в определении ограничений средствами языка определения данных (DDL - Data Definition Language). Обычно средства декларативной поддержки целостности определяют ограничения на значения доменов и атрибутов, целостность сущностей (потенциальные ключи отношений) и ссылочную целостность (целостность внешних ключей).

-Процедурная поддержка ограничений целостности

2)По времени проверки:

-Немедленно проверяемые ограничения (проверяются непосредственно в момент выполнения операции, могущей нарушить ограничение.

-Ограничения с отложенной проверкой (проверяется в момент фиксации транзакции оператором COMMIT WORK(завершает текущую транзакцию и автоматически начинает новую транзакцию).

3)По области действия:

-Ограничения домена

-Ограничения атрибута

-Ограничения кортежа

-Ограничения отношения

-Ограничения базы данных