Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие 3000259.doc
Скачиваний:
27
Добавлен:
30.04.2022
Размер:
1.27 Mб
Скачать

4.4. Метод сущность-связь

Метод сущность-связь называют также методом «ER-диаграмм». Аббревиатура ER происходит от слов Essence (сущность) и Relation (связь). Метод основан на использовании диаграмм, называемых диаграммами ER-экземпляров и диаграммами ER-типа.

Основные понятия метода. Основными понятиями метода сущность-связь являются следующие:

- сущность;

- атрибут сущности;

- ключ сущности;

- связь между сущностями;

- степень связи;

- класс принадлежности экземпляров сущности;

- диаграммы ER-экземпляров;

- диаграммы ER-типа.

Сущность представляет собой объект, информация о котором хранится в БД. Экземпляры сущности отличаются друг от друга и однозначно идентифицируются. Названиями сущностей являются, как правило, существительные, например: ПРЕПОДАВАТЕЛЬ, ДИСЦИПЛИНА, КАФЕДРА, ГРУППА.

Атрибут представляет собой свойство сущности. Это понятие аналогично понятию атрибута в отношении. Так атрибутами сущности ГРУППА могут быть Шифр группы, Факультет, Специальность, Курс, Фамилия_старосты и т.д.

Ключ сущности – атрибут или набор атрибутов, используемый для идентификации экземпляра сущности. Понятие ключа сущности аналогично определению ключа отношения.

Связь двух или более сущностей предполагает существование зависимостей между атрибутами этих сущностей. Название связи обычно представляется глаголом. Примерами связей между сущностями являются следующие: Преподаватель Ведет Дисциплину (Иванов Ведет «Моделирование»), Преподаватель Преподает в Группе (Иванов Преподает в Группе ВМ-021), Преподаватель Работает на Кафедре (Иванов Работает на Кафедре АВС).

С целью повышения наглядности и удобства проектирования для представления сущностей, экземпляров сущностей и связей между ними используются диаграммы ER-экземпляров. Данные диаграммы позволяют оценить степень связи и класс принадлежности сущности.

На рис. 4.5 приведена диаграмма ER-экземпляров для сущностей ПРЕПОДАВАТЕЛЬ и ДИСЦИПЛИНА со связью ВЕДЕТ.

ПРЕПОДАВАТЕЛЬ

ВЕДЕТ

ДИСЦИПЛИНА

СЕРГЕЕВА

МОДЕЛИРОВАНИЕ

ТЮРИН

ЭЛЕКТРОНИКА

БУРКОВСКИЙ

БАЗЫ ДАННЫХ

ПОПОВ

СХЕМОТЕХНИКА

ПИТОЛИН

МЕНЕДЖМЕНТ

Рис.4.5. Диаграмма ER-экземпляров

Диаграмма ER-экземпляров показывает, какую конкретно дисциплину ведет каждый из преподавателей. В приведенной на рис.4.5 диаграмме степень связи между сущностями 1:1 (один преподаватель ведет одну дисциплину и каждая дисциплина читается одним преподавателем), а класс принадлежности обеих сущностей обязательный (все преподаватели и дисциплины участвуют в объявленной связи).

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

Класс принадлежности (КП) сущности может быть: обязательным и необязательным.

Класс принадлежности сущности является обязательным, если все экземпляры этой сущности обязательно участвуют в рассматриваемой связи, в противном случае класс принадлежности сущности является необязательным.

Варьируя классом принадлежности сущностей для каждого из названных типов связи, можно получить несколько вариантов диаграмм ER-типа.

В диаграмме ER-типа используются следующие обозначения:

сущность изображают прямоугольником, внутри него записывают имя сущности (существительное);

под сущностью записывают ключевые поля через запятую, затем ставят запятую и многоточие (означает наличие не ключевых описательных полей); ключевые поля подчеркивают;

связь между сущностями обозначают ромбом, в котором записывают имя связи (глагол); сущности исвязь соединяют линиями;

степень связи изображают цифрами или буквами;

если класс принадлежности обязательный, то точку ставят внутри прямоугольника; если класс принадлежности необязательный, то точку ставят на линии.

Рассмотрим примеры диаграмм ER-типа.

Пример 1.

Связи типа 1:1 и обязательный класс принадлежности.

На рис. 4.6 приведены диаграммы, у которых степень связи между сущностями 1:1, а класс принадлежности обеих сущностей обязательный.

а) диаграмма ER-экземпляров

ПРЕПОДАВАТЕЛЬ

ВЕДЕТ

ДИСЦИПЛИНА

СЕРГЕЕВА

МОДЕЛИРОВАНИЕ

ТЮРИН

ЭЛЕКТРОНИКА

БУРКОВСКИЙ

БАЗЫ ДАННЫХ

ПОПОВ

СХЕМОТЕХНИКА

ПИТОЛИН

МЕНЕДЖМЕНТ

б) диаграмма ER-типа

1 1

Рис.4.6. Диаграммы для связи 1:1 и обязательным классом

принадлежности обеих сущностей

Пример 2. Связи типа 1:М, класс принадлежности первой сущности необязательный, а второй – обязательный. Например, каждый сотрудник кафедры может вести несколько дисциплин или ни одной, но каждая дисциплина ведется одним сотрудником кафедры (рис. 4.7).

а) диаграмма ER-экземпляров

СОТРУДНИКИ

ВЕДЕТ

ДИСЦИПЛИНА

ИНФОРМАТИКА

СЕРГЕЕВА

МОДЕЛИРОВАНИЕ

ТЮРИН

ЭЛЕКТРОНИКА

БУРКОВСКИЙ

БАЗЫ ДАННЫХ

ПОПОВ

СХЕМОТЕХНИКА

ПИТОЛИН

МЕНЕДЖМЕНТ

ВАСИЛЬЕВА

ЭЛЕКТРОТЕХНИКА

ПЛОТНИКОВА

ТЕОРИЯ

АВТОМАТОВ

б) диаграмма ER-типов

1 М

Рис. 4.7. Диаграммы для связи типа 1:М варианта Н-О

Этапы реализации метода сущность-связь. Процесс проектирования базы данных является итерационным – допускающим возврат к предыдущим этапам для пересмотра ранее принятых решений и включает следующие этапы.

  1. Выделение сущностей и связей между ними.

  2. Построение диаграмм ER-типа с учетом всех сущностей и их связей.

  3. Формирование набора предварительных отношений с указанием предполагаемого первичного ключа для каждого отношения.

  4. Добавление неключевых атрибутов в отношения.

  5. Приведение предварительных отношений к нормальной форме Бойса-Кодда, например, с помощью метода нормальных форм.

  6. Пересмотр ER-диаграмм в следующих случаях:

- некоторые отношения не приводятся к нормальной форме Бойса-Кодда;

- некоторым атрибутам не находится логически обоснованных мест в предварительных отношениях.

После преобразования ER-диаграмм осуществляется повторное выполнение предыдущих этапов проектирования (возврат к этапу 1).

Правила формирования отношений. Одним из основных этапов проектирования является этап формирования отношений, который можно формализовать.

Правила формирования отношений основываются на учете следующего:

- степени связи между сущностями (1:1, 1:М, М:1, М:М);

- класса принадлежности экземпляров сущностей (обязательный и необязательный).

Рассмотрим шесть правил формирования отношений на основе диаграмм ER-типа. Правила распространяются на связи между двумя сущностями, т.е. на бинарные связи.

Формирование отношений для связи 1:1.

Правило 1. Если степень бинарной связи 1:1 и класс принадлежности обеих сущностей обязательный, то формируется одно отношение. Первичным ключом этого отношения может быть ключ любого из двух сущностей.

На рис. 4.8 приведены диаграмма ER-типа и отношение, сформированное по правилу 1 на ее основе.

  1. 1

К1,… К2,…

R1

К1 v К2,…

Рис. 4.8. Диаграмма и отношения для правила 1

На рисунке используются следующие обозначения:

С1, С2 – первая и вторая сущности соответственно;

К1, К2 – ключи первой и второй сущности соответственно;

R1 – отношение, сформированное на основе первой и второй сущностей;

К1 v К2,…означает, что ключом сформированного отношения может быть либо К1, либо К2.

Примером использования первого правила, может быть, следующая ситуация. Имеются две сущности – Старосты и Группы; связь между ними один-к-одному, класс принадлежности обеих сущностей обязательный. В результате формируется одно отношение, содержащее информацию о группе в целом и ее старосте. Ключом отношения может быть ключ сущности Группы.

Правило 2. Если степень связи 1:1 и класс принадлежности одной сущности обязательный, а второй – необязательный, то для каждой из сущностей формируется по отношению с первичными ключами, являющимися ключами соответствующих сущностей. Далее к отношению, сущность которого имеет обязательный класс принадлежности, добавляется в качестве атрибута ключ сущности с необязательным классом принадлежности.

На рис. 4.9 приведены диаграмма ER-типа и отношения, сформированные по правилу 2 на ее основе.

R1

R2

  1. 1

К1,… К2,…

К1, К2 К2,…

Рис. 4.9. Диаграмма и отношения для правила 2

Примером использования может быть такая ситуация. Имеются две сущности – Покупатели и Квартиры. Связь между ними – один-к-одному, класс принадлежности первой сущности – обязательный (если человек занесен в сущность Покупатели, значит он обязательно покупает квартиру), а второй – необязательный (не каждая квартира, принадлежащая сущности Квартиры, куплена). В результате формируется два отношения Покупатели (в которое добавляется электронный номер купленной квартиры) и Квартиры.

Правило 3. Если степень связи 1:1 и класс принадлежности обеих сущностей является необязательным, то необходимо создать три отношения. Два отношения соответствуют связываемым сущностям, ключи которых являются первичными ключами в этих отношениях. Третье отношение является связным между первыми двумя, поэтому его ключ объединяет ключевые атрибуты связываемых отношений.

На рис. 4.10 приведены диаграмма ER-типа и отношения, сформированные по правилу 3 на ее основе.

Примером использования третьего правила может быть следующая ситуация. Имеются две сущности Сотрудники фирмы и Товары и услуги. Рассматривается ситуация оформления товарного чека при покупке. Каждый чек может содержать один товар или услугу и оформляется одним продавцом. Класс принадлежности обеих сущностей необязательный (не каждый сотрудник оформляет чеки, необязательно каждый товар продается). В результате создается три отношения – Сотрудники, Товары и услуги, Товарный чек. Товарный чек содержит ключи двух сущностей (номер сотрудника, номер товара), а также может содержать дополнительные атрибуты – номер чека, дата продажи и количество. Номер чека может стать ключом третьего отношения.

1 1

К1,… К2,…

К1,… К2,…

К1, К2

Рис. 4.10. Диаграмма и отношения для правила 3

Формирование отношений для связи 1:М.

Если две сущности С1 и С2 связаны как 1:М, сущность С1 будет называть односвязной (1-связной), а сущность С2 – многосвязной (М-связной). Определяющим фактором при формировании отношений, связанных этим видом связи, является класс принадлежности М-связной сущности. Так, если класс принадлежности М-связной сущности обязательный, то в результате применения правила получим два отношения, если необязательный – три отношения. Класс принадлежности односвязной сущности не влияет на результат.

Правило 4. Если степень связи между сущностями 1:М (или М:1) и класс принадлежности М-связной сущности обязательный, то достаточно формирования двух отношений (по одному на каждую из сущностей). При этом первичными ключами этих отношений являются ключи их сущностей. Кроме того, ключ 1-связной сущности добавляется как атрибут (внешний ключ) в отношение, соответствующее М-связной сущности.

На рис. 4.11 приведены диаграмма ER-типа и отношения, сформированные по правилу 4.

1 М

К2,… К1,…

К1,… К1, К2, …

Рис. 4.11. Диаграмма и отношения для правила 4

Четвертое правило может проиллюстрировать следующая ситуация. Имеются две сущности – Факультеты и Специальности. Факультет может выпускать несколько специальностей и обязательно хотя бы одну. Специальности обязательно выпускаются на каком-то факультете и, как правило, только на одном. В результате формируются два отношения – Факультеты и Специальности, в отношение Специальности добавляется ключ (название факультета) из отношения Факультеты.

Правила 5. Если степень связи 1:М (М:1) и класс принадлежности М-связной сущности является необязательным, то необходимо формирование трех отношений (рис. 4.12).

М 1

К1,… К2,…

К1,… К2,…

К1,К2, …

Рис. 4.12. Диаграмма и отношения для правила 5

На рис. 4.12 два отношения соответствуют связываемым сущностям, ключи которых являются первичными в этих отношениях. Третье отношение является связным между первыми двумя (его ключ объединяет ключевые атрибуты связываемых отношений).

Пятое правило может проиллюстрировать следующая ситуация. Имеются две сущности Стройматериалы и Склад. Один склад поставляет множество материалов, но не каждый материал может участвовать в поставке. Формируются три отношения – Склад, Стройматериалы, Поставка. Отношение Поставка содержит ключи исходных сущностей (номер склада, код материала) и дополнительные атрибуты – номер поставки, дата поставки, количество материала. Номер поставки может быть ключом третьего отношения.

Формирование отношений для связи М:М.

При наличии связи М:М между двумя сущностями необходимо три отношения независимо от класса принадлежности любой из сущностей. Использование одного или двух отношений в этом случае не избавляет от пустых полей или избыточного дублирования данных.

Правило 6. Если степень связи М:М, то независимо от класса принадлежности сущностей формируются три отношения. Два отношения соответствуют связываемым сущностям и их ключи являются первичными ключами этих отношений. Третье отношение является связным между первыми двумя, а его ключ объединяет ключевые атрибуты связываемых отношений.

На рис. 4.13 приведены диаграмма ER-типа и отношения, сформированные по правилу 6. На рисунке показан вариант с необязательным классом принадлежности обеих сущностей.

М М

К1,… К2,…

К1,… К2,…

К1, К2, …

Рис. 4.13. Диаграмма и отношения для правила 6

Шестое правило может проиллюстрировать следующий пример. Имеются две сущности - Специальности и Дисциплины со связью многие-ко-многим (одна специальность изучает много дисциплин и одна дисциплина может изучаться несколькими специальностями). В результате проектирования получатся три отношения – Специальности, Дисциплины, Учебный план (который будет содержать код специальности, номер дисциплины, семестр, количество часов лекций, лабораторных работ и т.д.).