Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Целостность сущности и ссылок



Согласно концепции, предложенной Дейтом, реляционная модель состоит из трех частей: структурной, манипуляционной и целостной.

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

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

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

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

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

Каскадное удаление. При удалении картежа из отношения, на которое ведет ссылка и ссылается отношение, автоматически удаляются все ссылки картежи.





Дата публикования: 2014-11-28; Прочитано: 1112 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...