IDEF1X является методом для разработки реляционных баз данных.
IDEF1X использует условный синтаксис, специально разработанный для удобного построения концептуальной схемы. Сущность описывается в диаграмме IDEF1X графическим объектом в виде прямоугольника. Список атрибутов приводится внутри прямоугольника, обозначающего сущность. Атрибуты, составляющие ключ сущности, группируются в верхней части прямоугольника и отделяются горизонтальной чертой.
Связь изображается линией, проводимой между сущностью-родителем и дочерней сущностью точкой на конце линии у дочерней сущности. Дополнительно может определяться мощность связи (количество экземпляров дочерней сущности, которое может существовать для каждого экземпляра сущности-родителя). В IDEF1X могут быть выражены следующие мощности связей:
-
Каждый экземпляр сущности-родителя может иметь ноль, один или более связанных с ним экземпляров дочерней сущности;
-
Каждый экземпляр сущности-родителя должен иметь не менее одного связанного с ним экземпляра дочерней сущности;
-
Каждый экземпляр сущности-родителя должен иметь не более одного связанного с ним экземпляра дочерней сущности;
-
Каждый экземпляр сущности-родителя связан с некоторым фиксированным числом экземпляров дочерней сущности.
Если экземпляр дочерней сущности однозначно определяется своей связью с сущностью-родителем, то связь называется идентифицирующей, в противном случае - неидентифицирующей.
Идентифицирующая связь между сущностью-родителем и сущностью-потомком изображается сплошной линией (рис. 3.8). Сущность-потомок в идентифицирующей связи является зависимой сущностью (изображается на диаграмме прямоугольником со скрукругленными углами).
В приведенном примере Сущность2
имеет составной первичный ключ (Ключ1, Ключ2), т.е. сущность2 не имеет собственного идентификатора, а идентифицируется через первичный ключ родителя .
Рис. 3.8 - Идентифицирующая связь
Пунктирная линия изображает неидентифицирующую связь (рис. 3.9). Сущность-потомок в неидентифицирующей связи будет независимой от ключа родителя, если она не является также сущностью-потомком в какой-либо идентифицирующей связи. Неидентифицирующая связь является более слабой, чем идентифицирующая, а сущность-потомок – более независимой от родителя.
Рис. 3.9 - Неидентифицирующая связь
На диаграмме связь «многие-ко-многим» в виде сплошной линии с точками на обоих концах (рис.3.10), при этом выполняют автоматическое формирование ассоциированной сущности, которая в физической схеме превращается в таблицу-связку.
Рис. 3.10 - Связь Многие ко многим
В заключение приведем фрагмент диаграммы «сущность-связь», изображенный на рис.3.6, в нотации IDEF1X (рис.3.11).
Рис. 3.11 – Фрагмент диаграммы «сущность-связь» (IDEF1X)
Здесь следует обратить внимание на связи между подразделениями и сотрудниками. Связь слева имеет мощность 1:M
(в каждом подразделении много сотрудников), связь справа имеет мощность 1:1
(каждый сотрудник может руководить не более чем одним подразделением). Но обе связи являются необязательными, т.е. сотрудник может не руководить никаким подразделением, а подразделение может какое-то время существовать без сотрудников.
Дополнение
Внешний вид связи на диаграммах IDEFX1 указывает на ее мощность, тип и обязательность (табл. 7.1).