В правилах формирования отношений учитывают:
- степень связи между сущностями;
- класс принадлежности экземпляров сущностей.
Рассмотрим 6 правил формирования отношений.
Формирование отношений для связи типа 1:1
-
Правило 1.
При степени связи 1:1 и обязательном классе принадлежности сущностей достаточно сформировать лишь одно отношение. Первичным ключом такого отношения может являться ключ любой из сущностей.
На рисунке 1:
С1, С2 – сущность 1 и сущность 2;
K1, К2 – ключ первой и второй сущности;
R1 – отношение, которое сформировано на основе сущности 1 и сущности 2;
KlvK2 – К1 или К2 может быть ключом отношения R1.
Пример 1Рассмотрим сущности ПРЕПОДАВАТЕЛЬ и ДИСЦИПЛИНА.
Схема отношения, которая содержит информацию об обеих сущностях, и отношение при степени связи и обязательном классе принадлежности сущностей могут быть представлены следующим образом (рисунок 2):
Полученное отношение содержит полную информацию о дисциплинах, преподавателях и связях между ними. Например, Иванов ведет только дисциплину К1, которая ведется только преподавателем Ивановым (связь типа 1:1). В данном отношении нет пустых полей, т.к. класс принадлежности является обязательным для сущностей. Т.е. нет преподавателей, которые бы что-нибудь не вели, и нет дисциплин, которые не проводит ни один из преподавателей.
Следовательно, одного отношения в рассмотренном случае вполне достаточно. Первичным ключом отношения может быть ключ первого или второго отношения.
-
Правило 2.
При степени связи 1:1 и обязательном классе принадлежности одной сущности, и необязательном – второй под каждую сущность достаточно сформировать по отношению с первичными ключами, которые являются ключами соответствующих сущностей. Затем к отношению с сущностью, которая имеет обязательный класс принадлежности, нужно добавить как атрибут ключ сущности, которая имеет необязательный класс принадлежности.
-
Правило 3.
При степени связи 1:1 и необязательном классе принадлежности сущностей необходимо сформировать 3 отношения. Два из них соответствуют обеим сущностям, а их ключи – первичные для этих отношений. Третье отношение связывает первые два и имеет ключ, который объединяет ключевые атрибуты обоих отношений.
Формирование отношений для связи 1:М
Пусть между сущностями С1 и С2 имеется связь типа 1:М, тогда сущность С1 называется односвязной, а сущность С2 – многосвязной (или М-связной).
-
Правило 4.
При степени связи 1:М (М:1) между сущностями и обязательном классе принадлежности М-связной сущности достаточно сформировать 2 отношения (каждое отношение соответствует сущности). Первичными ключами таких отношений будут ключи этих сущностей. Кроме того, в отношение, которое соответствует М-связной сущности, нужно добавить в качестве атрибута (внешнего ключа) ключ односвязной сущности.
-
Правило 5.
При степени связи 1:М (или М:1) и необязательном классе принадлежности М-связной сущности нужно сформировать 3 отношения. Два из них будут соответствовать обоим сущностям, ключи которых будут первичными для этих отношений. Третье отношение связывает первые два и имеет ключ, который объединяет ключевые атрибуты первых двух отношений.
Обратим внимание, что класс принадлежности М-связной сущности является основным фактором в выборе между правилом 4 и 5.
Формирование отношений для связи М:М
-
Правило 6.
При степени связи М:М независимо от класса принадлежности обоих сущностей необходимо сформировать 3 отношения. Два из них будут соответствовать каждой сущности, ключи которых будут первичными ключами для таких отношений. Третье отношение связывает первые два, а его ключ является объединяющим для ключевых атрибутов связываемых отношений.