Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы к экзамену по БД (ВФ) / !Все ответы по БД v0.2.13.docx
Скачиваний:
191
Добавлен:
10.05.2014
Размер:
3.32 Mб
Скачать

11. Свойства реляционной модели данных. Представление связи.

Свойства реляционной модели данных

1. Каждый атрибут отношения имеет уникальное в данном отношении имя

2. Каждый атрибут определен на каком-то одном домене.

3. На одном и том же домене может быть определено несколько атрибутов.

4. Имя атрибута может совпадать с именем домена.

5. Порядок следования атрибутов не устанавливается.

6. В отношении нет совпадающих кортежей (каждый кортеж уникален).

7. Порядок следования кортежей не устанавливается.

8. Отношение имеет имя, которое в схеме базы данных отличается от имен всех других отношений.

Внешний ключ (FKForeign Key) – это атрибут или некоторое множество атрибутов отношения R1, которые не являются собственными атрибутами отношения R1, но их значение совпадает со значениями первичного ключа некоторого отношения R2 (возможность идентичности R1 и R2 не исключается).

Основными типами связей между сущностями являются связи 1 : n (“один-ко-многим») и n : n («много-ко-многим»).

1:n. Каждый сотрудник работает в одном определённом отделе, в каждом отделе работают много сотрудников. Эта связь определяется атрибутом внешнего ключа в отношении СОТРУДНИК: в это отношение включается внешний ключ Номер отдела, значения которого совпадают со значениями первичного ключа Номер отдела отношения ОТДЕЛ.

n:n. Каждый поставщик поставляет много деталей, каждая деталь поставляется многими поставщиками. В этом случае связь ПОСТАВКА ( ПОСТАВЩИК, ДЕТАЛЬ ) представляется собственным отношением, в котором будут атрибуты внешних ключей, ссылающиеся на отношения ПОСТАВЩИК и ДЕТАЛЬ. Эти атрибуты могут войти в состав первичного ключа отношения связи. Кроме того, отношение связи может иметь собственный атрибут.

12. Требования целостности в реляционной модели данных.

Требование целостности сущности (entity integrity) - любой кортеж любого отношения должен быть отличим от любого другого кортежа этого же отношения. Другими словами, у любой переменной отношения должен существовать первичный ключ, и никакое значение первичного ключа в кортежах значения-отношения переменной отношения не должно содержать неопределенных значений. Ограничения:

  • уникальность других атрибутов (АК)

  • обязательность значений атрибутов (NULL, NOT NULL)

  • допустимость значений атрибутов (CHECK)

Требование целостности по ссылкам (referential integrity), является более сложным. Ссылочные ограничения целостности в реляционной модели данных представляют собой условия, накладываемые на сосуществование кортежей в связанных отношениях. В реляционной базе данных связи между отношениями представляются с помощью внешних ключей.

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

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

При удалении кортежа существуют три подхода, каждый из которых поддерживает целостность по ссылкам.

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

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

  • при удалении кортежа из отношения, на которое ведет ссылка, из ссылающегося отношения автоматически удаляются все ссылающиеся кортежи.