Правило ссылочной целостности

Значение внешнего ключа представлено ссылкой к кортежу, содержащему соответствующее значение потенциального ключа (ссылочный кортеж или целевой кортеж).

Проблема ссылочной целостности — проблема обеспечения того, что база данных не включает никаких неверных значений внешних ключей.

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

Отношение, которое содержит внешний ключ, называется ссылающимся отношением (дочерней таблицей), а отношение, которое содержит соответствующий потенциальный ключ, — ссылочным отношением (родительской таблицей) или целевым отношением (target relation)

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

Такое соответствие представляет собой некоторое отношение или взаимосвязь между кортежами.

Правило ссылочной целостности

База данных не должна содержать несогласованных значений внешних ключей. То есть, должны выполняться свойства внешнего ключа.

Правила внешних ключей

o Правило удаления: каскадное удаление связанных записей" при изменении связей между таблицами. При удалении кортежа из родительской таблицы (целевого отношения) будут удалены все соответствующие кортежи дочерней таблицы. Например, при удалении кортежа, в котором атрибут Student_ID таблицы Students имеет значение «5» (рис. 9.1), в таблице Marks будут удалены 2 кортежа, имеющие значение «5» внешнего ключа Student_ID (рис. 9.2).

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

Правило целостности объектов

Null-значения

Null-значения являются базисом, используемым при решении проблемы отсутствующей информации. Э.Кодд для представления отсутствующей информации предложил использовать специальные маркеры, называемые null-значениями. Отсутствие информации не означает, что ее не существует. Информация есть, но она неизвестна пользователю, который работает с базой данных. С этой целью были введены null-значения.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: