Степень связи - это количество сущностей, которые охвачены данной связью. Если связь определена между двумя сущностями, то ее степень 2, а называется такая связь бинарной. Связь между тремя сущностями называется тернарной, между четырьмя сущностями кватернарной и т.д.. В общем случае связь между n сущностями называется n-арной. Унарная (рекурсивная) связь - это связь в которой одни и те же сущности участвуют несколько раз в разных ролях.
При построении инфологической модели на сущности участницы некоторых связей могут накладываться ограничения отражающие семантику предметной области. С этими ограничениями связано понятие показателя координальности связи. Показатель координальности указывает количественное соотношение экземпляров сущности для каждой связи. Классическими признаны бинарные связи с показателями координальности "один к одному", "один ко многим", "многие ко многим". Пусть в предметной области выделим сущности A и B, при связи "один к одному" в каждый момент времени каждому экземпляру сущности A соответствует не более одного экземпляра сущности B.
Связь ОДИН-К-ОДНОМУ.
При связи "один ко многим" каждому экземпляру сущности A соответствует 0, 1 или несколько представителей сущности B.
Связь ОДИН-КО-МНОГИМ.
При связи "многие ко многим" каждому экземпляру сущности A соответствует 0, 1 или несколько сущностей B, а каждому экземпляру сущности B соответствует 0, 1 или несколько сущностей A.
Связь МНОГИЕ-КО-МНОГИМ.
Если связь между сущностями мужчина и женщина называется брак, то существует 4 возможных представления представления такой связи.
Пример связи БРАК между сущностями МУЖЧИНЫ и ЖЕНЩИНЫ.
Характер связи между сущностями может оказаться более сложным.
Пример множества связей между сущностями ПРЕПОДАВАТЕЛЬ и СТУДЕНТ.
В приведенных предметах для повышения иллюстративности рассматриваемых связей не показаны атрибуты сущностей и ассоциации, т.е. связи во всех ее диаграммах. Так, ввод лишь нескольких основных атрибутов в описание значительно усложняет диаграмму. В связи с этим язык ER-диаграмм используется для построения небольших моделей и иллюстрации отдельных фрагментов - больших. Для представления полных инфологических моделей предметной области применяется менее наглядный, но более содержательный язык инфологического моделирования, в котором сущности и ассоциации представляются предложениями следующего вида:
S - показывает степень связи, а атрибуты , являющиеся ключом должны быть отмечены с помощью подчеркивания. Так, рассмотренный выше пример, множество связей между сущностями, может быть описан на языке инфологического моделирования следующим образом:
Консультант [ПРЕПОДАВАТЕЛЬ N, СТУДЕНТ P] (УслНомерП, УслНомерС).
Для определения связи между сущностями необходимо как минимум выделить в интересующей предметной области сами сущности. Однако, эта задача является достаточно сложной, т.к. в разных предметных областях один и тот же объект может быть сущностью, атрибутом или связью.
Проблемы ER моделирования.
В процессе создания инфологической модели на языке R-диаграмм могут возникать нежелательные ситуации, называемая ловушками соединения. Причины этих проблем кроются в неправильной интерпретации семантики предметной области, в том числе смысла некоторых связей между выделенными сущностями. Очень важно своевременно выявлять модели в модель данных ловушки соединения, иначе они могут привести к неадекватному описанию предметной области и необходимости перестройки всей концептуальной модели. Наиболее распространенными являются 2 вида ловушек соединения:
1. Ловушки разветвления.
2. Ловушки разрыва.
Ловушки разветвления имеют место в том случае, если модель отображает связь между сущностями, но путь между отдельными экземплярами этих сущностей однозначно не определяется. Ловушка разветвления возникает в том случае, когда две или больше связей "один ко многим" разветвляются из одной сущности.
Пример ловушки разветвления.
Проанализировав модель можно сделать вывод, что на одном факультете осуществляется обучение по нескольким специальностям и на факультете учится множество студентов. Проблема может возникнуть при попытке выяснить по какой специальности обучается каждый студент факультета. Для обнаружения этой проблемы удобно пользоваться семантическими сетями.
Семантическая сеть ER-модели с ловушкой разветвления.
С помощью семантической сетевой модели на конкретном примере невозможно дать однозначный ответ на вопрос по какой специальности обучается студент Гавриюхов. Это ловушка разветвления, произошедшая из-за неправильной трактовки связей между сущностями - ФАКУЛЬТЕТ, СПЕЦИАЛЬНОСТЬ, СТУДЕНТ. Устранить такой дефект можно только путем перестройки исходной модели.