Ссылочная целостность

Ссылочная целостность — это особый механизм, способствующий поддержанию непротиворечивых сведений в таблицах БД, связанных реляционными отношени­ями. В демонстрационной БД таблица NAKLS содержит данные о накладных, а таб­лица MOVEBOOK — о связанных с ними книгах. Перед удалением данных о наклад­ной нужно предварительно удалить связанный с ней список книг, иначе таблица MOVEBOOK будет содержать записи о «ничейных» книгах. Другой пример. Если мы захотим удалить запись в таблице MOVEBOOK (удалить из накладной данные о ка­кой-либо книге), нам следует соответствующим образом изменить количество книг на складе (таблица BOOKS) и сальдо партнера (таблица FIRMS). Если таблицы свя­заны механизмом ссылочной целостности, BDE будет автоматически блокировать попытки изменения поля связи в родительской таблице, пока соответствующим образом не изменены связанные с ней записи в дочерней таблице.

Для установления ссылочной целостности нужно выбрать пункт Referential Integrity в списке Table properties и щелкнуть на кнопке Define (см. рис. 1.5). Откроется окно Referential Integrity, показанное на рис. 1.8.

Рис. 1.8. Установление ссылочной целостности

В списке Fields выбирается поле связи редактируемой таблицы (она должна быть дочерней), а в списке Table — нужная родительская таблица. После щелчков на кнопках со стрелками имена полей связи переносятся в строки Child fields и Parent's key. Далее нужно щелкнуть на кнопке ОК. DBD запросит имя вновь создаваемой ссылочной целостности и затем создаст ее. После этого попытка удаления инфор­мации о любой накладной будет отвергаться до тех пор, пока не удалены данные обо всех связанных с ней книгах.

С помощью переключателей в группе Update rule определяются правила поддержа­ния ссылочной целостности:

  • Prohibit — BDE отвергает любые изменения в связанном поле родительской таб­лицы без соответствующего изменения записей в дочерней таблице; удаление записи родительской таблицы блокируется до удаления связанных с ней запи­сей в дочерней таблице;
  • Cascade — BDE автоматически производит каскадные изменения в дочерней таблице при изменениях родительской таблицы1.

 








Дата добавления: 2015-04-15; просмотров: 631;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.