Основы работы с базами данных


Дополнительные стратегии поддержания ссылочной целостности


IGNORE (ИГНОРИРОВАТЬ) - разрешить выполнять операцию без проверки ссылочной целостности. В этом случае в дочерней таблице могут появляться некорректные значения внешних ключей, вся ответственность за целостность базы данных ложится на программиста или пользователя.

SET NULL (ЗАДАТЬ ЗНАЧЕНИЕ NULL) - разрешить выполнение требуемой операции, но все возникающие некорректные значения внешних ключей изменять на null-значения. Эта стратегия имеет два недостатка. Во-первых, для нее требуется разрешение на использование null-значений. Во-вторых, записи дочерней таблицы теряют связь с записями родительской таблицы. Установить, с какой записью родительской таблицы были связаны измененные записи дочерней таблицы, после выполнения операции уже нельзя.

SET DEFAULT (ЗАДАТЬ ЗНАЧЕНИЕ ПО УМОЛЧАНИЮ) - разрешить выполнение требуемой операции, но все возникающие некорректные значения внешних ключей изменять на некоторое значение, принятое по умолчанию. Достоинство этой стратегии по сравнению с предыдущей в том, что она позволяет не пользоваться null-значениями. Установить, с какими записями родительской таблицы были связаны измененные записи дочерней таблицы, после выполнения такой операции тоже нельзя.

На рис. 2.7 представлен пример реляционной базы, содержащей сведения отдела кадров по работникам предприятия, в которой для каждой таблицы базы показан список ее полей и показаны связи между таблицами по простому ключу - значению поля tabn.

Схема реляционной базы данных

Рис. 2.7.  Схема реляционной базы данных

Начиная с 1980-х годов, одновременно с широким распространением персональных компьютеров, большое распространение получили так называемые "настольные" реляционные СУБД (Desktop Databases), такие как dBase, FoхBase (его более поздние версии - FoхPro и Visual FoхPro), Paradoх, Access. Наиболее распространенным форматом таблиц подобных реляционных баз стал *.dbf, с которым работали dBase, FoхBase, а также Clipper - система написания программ (в режиме строкового компилятора) для работы с базами данных.


Начало  Назад  Вперед