Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 3 Реляционная алгебра.doc
Скачиваний:
4
Добавлен:
16.09.2019
Размер:
438.27 Кб
Скачать

3.2. Свойства отношений

Модель предъявляет к отношениям следующие требования:

  1. отношение имеет имя, которое отличается от имен всех других отношений в реляционной схеме

  2. каждая ячейка отношения содержит только одно элементарное (неделимое) значение

  3. каждый атрибут имеет уникальное имя

  4. значения атрибута берутся из одного и того же домена

  5. каждый кортеж является уникальным

  6. порядок следования атрибутов значения не имеет

  7. порядок следования кортежей не имеет значения (практически порядок может влиять на эффективность доступа)

3.3. Реляционные ключи

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

  • уникальность – значение ключа K единственным образом идентифицирует кортеж

  • неприводимость – никакое подмножество ключа K не обладает свойством уникальности

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

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

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

3.4. Представление схем

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

Концептуальной моделью (концептуальной схемой) называется множество всех реляционных схем БД.

Например,

«Сотрудник»(«Таб.№», «Фамилия И.О.», «Должность», «Ключ адреса»)

«Адрес»(«Номер п/п», «Адрес», «Номер телефона»)

3.5. Реляционная целостность

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

  • ссылочная целостность – значение внешнего ключа либо должно соответствовать значению потенциального ключа либо полностью состоять из значений NULL (NULL-отсутствие значения)

  • корпоративные ограничения целостности (необязательные) – дополнительные правила, определяемые пользователем или администратором БД.

3.6. Внешние представления

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

Базовое отношение – Именованное отношение, соответствующее сущности в концептуальной схеме, кортежи которого физически хранятся в БД.

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

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

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

  • Обновления не допускаются в любых представлениях, включающих выполнение операций агрегирования и группирования

  • Обновления не допускаются в любых представлениях, определенных на основе нескольких базовых отношений