Ограничения целостности для связей между таблицами

  • Часть 1
  • | 2
  • | 3

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

Если возникает необходимость удаления или обновления связанных записей в таблицах БД при сохранении целостности данных, в диалоговом окне Связи требуется установить флажки Каскадное обновление связанных полей и Каскадное удаление связанных полей. При установке первого из этих флажков изменения данных в поле (полях) первичного ключа главной таблицы приводят к автоматическому изменению соответствующих значений в связанных полях подчиненных таблиц. Установка второго флажка позволяет автоматически удалить все записи в подчиненных таблицах, связанные с удаляемой записью в главной таблице.

Для многотабличной БД могут быть созданы также ограничения целостности, проверяющие отсутствие логических противоречий между данными связанных таблиц. Например, для каждой товарной группы в одной из таблиц базы данных хранятся диапазоны значений артикулов товаров. При размещении в другой таблице сведений о текущих поставках товаров эти данные используются для контроля правильности вводимой информации.

В качестве ограничения целостности может быть использован запрет на обновление данных в отдельных полях, записях или таблицах БД [ 3 ]. Очевидно, что должны быть защищены от случайных изменений, например, данные о реализованных поставках товаров, справочники о номенклатуре и характеристиках выпускаемых изделий и т.д.

предыдущаяследующая