Лекция 2. ER-моделирование: сущности, атрибуты, связи
1. Моделирование данных
Прежде чем создавать базу данных, необходимо спроектировать ее структуру. Этот процесс называется моделированием данных. ER-модель (Entity-Relationship model, модель «сущность-связь») — это инструмент для концептуального проектирования БД. Она позволяет описать предметную область в виде схемы, понятной как разработчикам, так и заказчикам.
2. Ключевые компоненты ER-модели
2.1. Сущность (Entity)
Сущность — это реальный или воображаемый объект, информация о котором должна храниться в базе данных (например, «Студент», «Книга», «Заказ»). На ER-диаграммах сущность изображается в виде прямоугольника.
2.2. Атрибут (Attribute)
Атрибут — это свойство или характеристика сущности. У каждого атрибута есть имя и допустимое множество значений (домен).
- Простые и составные: Простой атрибут является неделимым (атомарным),
например,
Возраст. Составной атрибут может быть разделен на более мелкие части, например,Адресможно разбить наГород,Улица,Дом. - Однозначные и многозначные: Однозначный атрибут имеет только одно значение
для сущности (
Дата_рождения). Многозначный может иметь несколько значений (Номер_телефонау одного человека). - Хранимые и производные: Хранимые атрибуты — это те, что мы непосредственно
сохраняем в БД (
Дата_рождения). Производные вычисляются на основе других атрибутов (Возрастможно вычислить из даты рождения). - Ключевой атрибут (Primary Key): Это атрибут (или набор атрибутов), который
уникально идентифицирует каждый экземпляр сущности. Например,
Номер_зачеткидля студента. На диаграммах его название обычно подчеркивается.
2.3. Связь (Relationship)
Связь — это ассоциация между двумя или более сущностями. Она показывает, как сущности взаимодействуют друг с другом.
- Степень связи: Количество сущностей, участвующих в связи. Чаще всего встречаются бинарные связи (степень 2), но бывают и унарные (рекурсивные), и тернарные.
- Пример унарной связи: Сотрудник может быть начальником для других сотрудников. Связь «руководит» соединяет сущность «Сотрудник» саму с собой.
3. Кардинальность и участие
Кардинальность определяет, сколько экземпляров одной сущности может быть связано с экземплярами другой сущности.
- Один к одному (1:1): Каждому экземпляру сущности А соответствует не более одного экземпляра сущности Б, и наоборот (например, «Директор» и «Школа»).
- Один ко многим (1:M): Одному экземпляру сущности А может соответствовать много экземпляров сущности Б, но не наоборот (например, «Преподаватель» и «Группа»).
- Многие ко многим (M:N): Любому количеству экземпляров сущности А может соответствовать любое количество экземпляров сущности Б (например, «Студент» и «Курс»).
Тип участия определяет, является ли связь обязательной.
- Полное (total) участие: Каждый экземпляр сущности должен участвовать в связи (например, каждый «Заказ» должен быть связан с «Клиентом»).
- Частичное (partial) участие: Экземпляр сущности может и не участвовать в связи (например, не каждый «Заказ» должен быть связан с «Оплатой»).
Практическое задание 2
Теперь, когда мы разобрали теорию более подробно, примените знания на практике. Для закрепления материала выполните Практическое задание 2: Построение ER-диаграммы.