Основные понятия: таблица (отношение), кортеж, домен, первичный ключ. Часть 2.
Действительно, оба отношения R и R1 описывают одну и ту же реальную ситуацию, пусть и по-разному.
Как уже было сказано, любое отношение является динамической моделью некоторого реального объекта (ситуации). Поэтому необходимо ввести понятие экземпляра отношения. Например, в рассмотренном примере «результаты сдачи экзаменов студентами» отношение, описывающее ситуацию, изменится, как только Сидоров сдаст последний экзамен (или кто-то из студентов пересдаст один из предметов).
Вхождение домена в отношение принято называть атрибутом. При этом атрибуты, принимающие значения из одного домена, называются O-сравнимыми, где O – набор операций сравнения (например, для чисел это <, >, =, <=, >=, <>).
Строки отношения называются кортежами. А количество атрибутов в отношении называется его степенью или рангом.
Эти понятия позволяют определить схему отношения, описывающую структуру отношения в целом. Схемой отношения R называется перечень атрибутов данного отношения с указанием доменов, к которым они относятся: S_R = ( A1, A2, …, AN ), Ai <= Di.
Схемы двух отношений называются эквивалентными, если их степени совпадают и существует такая перестановка имен атрибутов в схемах, что на одинаковых местах будут стоять O-сравнимые атрибуты. Пусть S_R1 = ( A1, A2, …, AN) – схема отношения R1, а S_R2 = ( Bi1, Bi2, …, BiM) – схема R2 после упорядочивания. Тогда R1 ~ R2, если 1) N = M, 2) Aj, Bij <= Dj.
Остается ответить на вопрос, каким образом реляционная модель обеспечивает связи между отношениями. Реляционная модель поддерживает иерархические связи между отношениями, то есть одно отношение выступает в качестве основного, а другое – в качестве подчиненного. Это означает, что один кортеж основного отношения может быть связан с несколькими кортежами подчиненного отношения. Для организации таких связей оба отношения должны содержать набор атрибутов, по которым собственно и происходит связь.
В основном отношении в качестве таких атрибутов выступает первичный ключ отношения (PRIMARY KEY), то есть тот набор атрибутов, значения которых позволяют однозначно определить каждый кортеж основного отношения. Данный набор атрибутов должен присутствовать и в подчиненном отношении, где он уже будет выступать в роли внешнего ключа (FOREIGN KEY), позволяя по их значениям определить множество кортежей подчиненного отношения, которое связано с определенным кортежем основного отношения.
Рассмотрим простой пример связи отношения Студент и Преподаватель в случае рассмотренной выше связи «Руководит дипломной работой».
Как мы видим, атрибут «Код преподавателя», являющийся первичным ключом отношения Преподаватель, добавляется в отношение Студент в качестве внешнего ключа. Тогда связь между кортежами отношений устанавливается по значению этого атрибута:
Код преподавателя |
Фамилия |
Имя |
Отчество |
Пк1 |
Петров |
Семен |
Федорович |
Пк2 |
Иванов |
Константин |
Александрович |
Номер студенческого билета |
Фамилия |
Имя |
Отчество |
Факультет |
Код преподавателя |
Сб001 |
Теребов |
Петр |
Павлович |
IT |
Пк2 |
Сб002 |
Тишин |
Сергей |
Сергеевич |
IT |
Пк1 |
Сб003 |
Курилова |
Вера |
Ивановна |
IT |
Пк1 |
Сб005 |
Фурсова |
Ника |
Федоровна |
IT |
Пк2 |
Сб005 |
Теремков |
Иван |
Максимович |
IT |
Пк1 |
Необходимо отметить, что в отличие от, например, модели «сущность-связь», реляционная модель обеспечивает только один тип связей по множественности – связи типа «один-ко-многим».
Добавить комментарий