ER моделирование

Работа с базой данных начинается с построения модели. Наиболее распространенной является ER-модель (entity-relationship model) - модель "Сущность-связь". Используют для получения информационной конструкции.

Базовые понятия

Первичный ключ - атрибут или группа атрибутов, однозначно идентифицирующих объект. Первичный ключ может состоять из нескольких атрибутов, тогда подчеркивается каждый из них.

Объект и его атрибуты соединяются ненаправленными дугами.


Ромб связи и прямоугольник объекта соединяются ненаправленными дугами в сторону "ко многим" и направленными в сторону "к одному".


 

Связь может соединять сущность саму с собой, например:

 

 

Если связь соединяет две сущности, она называется бинарной. Связь может соединять более двух сущностей, например, связь, соединяющая три сущности, называется тернарной:

Иногда используют также понятие "слабая сущность". Это сущность, которая не может быть однозначно идентифицирована с помощью собственных атрибутов, а только через связь с другой сущностью. Пусть, например, номер сотрудника является уникальным только в пределах отдела, т.е. в разных отделах могут быть сотрудники с одинаковыми номерами. Уникальной в данном случае будет комбинация "номер сотрудника, номер отдела". Сущность "Сотрудник" является слабой.

На схеме слабые сущности обозначаются двойными линиями.


Иногда для более удобной классификации используются так называемые подтипы сущностей. Их обозначают с помощью треугольника с надписью "есть" (т.е., "является"). Пусть, например, среди контрагентов могут быть как физические, так и юридические лица. Поскольку они имеют разные атрибуты, то удобно создать для них подтипы:



Сущность "Контрагент" является надтипом для своих подтипов.