Предварительные отношения для бинарных связей типа 1: N
Пусть в рассмотренной выше концептуальной модели существует бинарная связь типа 1: N (рис. 6.3).
Для таких связей существует только два правила. Вариант определяется классом принадлежности N-связной сущности, класс принадлежности 1-связной сущности не влияет на конечный результат в обоих случаях.
Первый вариант. ПРЕПОДАВАТЕЛЬ — класс принадлежности необязательный, КУРС — обязательный.
Решение задачи становится возможным, если использовать два отношения, по одному на каждую сущность, при условии, что ключ 79 каждой сущности служит в качестве первичного ключа для соответствующего отношения. В качестве родительского назначается отношение, соответствующее "единичной" стороне связи, а в качестве дочернего назначается отношение, представляющее "множественную" сторону связи. Для представления этой связи необходимо скопировать первичный ключ родительского отношения в дочернее отношение, где данный ключ должен быть описан как внешний.
Окончательно в БД войдут два отношения:
ПРЕПОДАВАТЕЛЬ (ТН, Ф_И_О, Тел_П);
КУРС (НК, Назв_К, НП).
Второй вариант. Класс принадлежности для обеих сущностей — необязательный. Решение — в формировании трех отношений: по одному на каждую сущность (причем ключ каждой сущности служит первичным ключом соответствующего отношения) и одного отношении для связи. Отношение для связи должно иметь среди своих атрибутов ключ каждой сущности:
КУРС (НК, Назв_К);
ПРЕПОДАВАТЕЛЬ (ТН, Ф_И_О, Тел_П);
ЧИТАЕТ (ТН, НК)
6.2.5. Преобразование связи типа "суперкласс/подкласс"
Для каждой присутствующей в логической модели данных связи типа "супертип/подтип" сущность супертипа необходимо определить как родительскую, а сущность подтипа — как дочернюю. Существуют различные варианты представления подобных связей в виде одного или нескольких отношений. Выбор наиболее подходящего варианта зависит от ограничений участия и пересечения, наложенных на участников связи типа "суперкласс/подкласс".
Если суперкласс с его подклассами имеет тотальные и непересекающиеся связи, где каждый экземпляр суперкласса обязательно должен быть членом одного и только одного подкласса, то самым целесообразным решением является представление каждого из подклассов в виде отдельного отношения, содержащего копию первичного ключа суперкласса.
Рассмотрим подклассы АССИСТЕНТ, СТАРШИЙ ПРЕПОДАВАТЕЛЬ, ДОЦЕНТ, ПРОФЕССОР, которые являются членами суперкласса ПРЕПОДАВАТЕЛЬ (рис. 6.4). Это означает, что каждый экземпляр подкласса является в то же время и экземпляром суперкласса. Причем каждый преподаватель обязательно принадлежит одному и только одному подклассу.
Подобная диаграмма преобразуется в следующую реляционную схему отношений:
ПРЕПОДАВАТЕЛЬ (Табельный_номер. Ф_И_О, Адрес, Педагог_стаж).
ПРОФЕССОР (Табельный_номер, Номер_Диплома_профессора);
ДОЦЕНТ (Табельный_номер. Номер_диплома_доцента);
СТАРШИЙ_ПРЕПОДАВАТЕЛЬ (Табельный_номер):
АССИСТЕНТ (Табельный_номер).
Дата добавления: 2016-07-05; просмотров: 2410;