Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009 (1084484), страница 36
Текст из файла (страница 36)
Связи типа 1:1 и обязательный класс принадлежности.На рис. 6.3 приведены диаграммы, у которых степень связи между сущностями 1:1, а класс принадлежности обеих сущностей обязательный.В этом случае каждый преподаватель ведет одну дисциплину и каждая дисциплина ведется одним преподавателем.а) ER-экземпляровПРЕПОДАВАТЕЛЬВЕДЕТДИСЦИПЛИНАИВАНОВ И.М. ф ^ ^•фПЕТРОВ М.И.СИДОРОВ Н.Г.фЕГОРОВ В.В.КОЗЛОВ А.С. ф.~СУБДПЛ/1"—•—ФПаскальАлгол•ФортранРис. 6.3. Диаграммы для связи 1:1 и обязательным КП обеих сущностей178Часть 2. Проектирование и использование БДВозможны два промежуточных варианта с необязательным классом принадлежности одной из сущностей.Замечания.• На диаграммах ER-типа обязательное участие в связи экземпляров сущности отмечается блоком с точкой внутри, смежным с блоком этой сущности (рис.
6.36).• При необязательном участии экземпляров сущности в связи дополнительный блок к блоку сущности не пристраивается, а точка размещаетсяна линии связи (рис. 6.2).• Символы на линии связи указывают на степень связи.Под каждым блоком, соответствующим некоторой сущности, указывается ееключ, выделяемый подчеркиванием. Многоточие за ключевыми атрибутамиозначает, что возможны другие атрибуты сущности, но ни один из них не может бытьчастью ее ключа. Эти атрибуты выявляются после формирования отношений.На практике степень связи и класс принадлежности сущностей при проектировании БД определяется спецификой предметной области.
Рассмотримпримеры вариантов со степенью связи 1:М или М:1.Пример 3. Связи типа 1:М.Каждый преподаватель может вести несколько дисциплин, но каждая дисциплина ведется одним преподавателем.Пример 4. Связи типа М:1.Каждый преподаватель может вести одну дисциплину, но каждую дисциплину могут вести несколько преподавателей.Примеры с типом связи 1:М или М:1 могут иметь ряд вариантов, отличающихся классом принадлежности одной или обеих сущностей.
Обозначим обязательный класс принадлежности символом «О», а необязательный - символом«Н», тогда варианты для связи типа 1:М условно можно представить как: О-О,О-Н, Н-О, Н-Н. Для связи типа М:1 также имеются 4 аналогичных варианта.Пример 5.
Связи типа 1:М вариант Н-О.Каждый преподаватель может вести несколько дисциплин или ни одной,но каждая дисциплина ведется одним преподавателем (рис. 6.4).По аналогии легко составить диаграммы и для остальных вариантов.Пример 6. Связи типа М:М.Каждый преподаватель может вести несколько дисциплин, а каждая дисциплина может вестись несколькими преподавателями.Как и в случае других типов связей, для связи типа М:М возможны 4 варианта, отличающиеся классом принадлежности сущностей.Пример 7. Связи типа М:М и вариант класса принадлежности О-Н.Допустим, что каждый преподаватель ведет не менее одной дисциплины, адисциплина может вестись более чем одним преподавателем, есть и такие дисциплины, которые никто не ведет. Соответствующие этому случаю диаграммыприведены на рис.
6.5.6. Метод сущность-связь179а) ER-экземпляровб) ER-типовРис.. 6.4. Диаграммы для связи типа 1:М варианта Н-ОВыявление сущностей и связей между ними, а также формирование на ихоснове диаграмм ER-типа выполняется на начальных этапах метода сущностьсвязь. Рассмотрим этапы реализации метода.а) ER-экземпляровб) ER-типовРис. 6.5.
Диаграммы для связи типа М : М и варианта О-НЧасть 2. Проектирование и использование БД1806.2. Этапы проектированияПроцесс проектирования базы данных является итерационным - допускающим возврат к предыдущим этапам для пересмотра ранее принятых решений и включает следующие этапы:1. Выделение сущностей и связей между ними.2. Построение диаграмм ER-типа с учетом всех сущностей и их связей.3. Формирование набора предварительных отношений с указанием предполагаемого первичного ключа для каждого отношения и использованиемдиаграмм ER-типа.4. Добавление неключевых атрибутов в отношения.5.
Приведение предварительных отношений к нормальной форме Бойса Кодда, например, с помощью метода нормальных форм.6. Пересмотр ER-диаграмм в следующих случаях:• некоторые отношения не приводятся к нормальной форме Бойса - Кодда;• некоторым атрибутам не находится логически обоснованных мест в предварительных отношениях.После преобразования ER-диаграмм осуществляется повторное выполнение предыдущих этапов проектирования (возврат к этапу 1).Одним из узловых этапов проектирования является этап формированияотношений. Рассмотрим процесс формирования предварительных отношений, составляющих первичный вариант схемы БД.В рассмотренных выше примерах связь ВЕДЕТ всегда соединяет две сущности и поэтому является бинарной.
Сформулированные ниже правила формирования отношений из диаграмм ER-типа распространяются именно на бинарныесвязи. Поэтому, когда речь идет о связях, слово «бинарные» далее опускается.6.3. Правила формирования отношенийПравила формирования отношений основываются на учете следующего:• степени связи между сущностями (1:1, 1:М, М:1, М:М);• класса принадлежности экземпляров сущностей (обязательный и необязательный).Рассмотрим формулировки шести правил формирования отношений наоснове диаграмм ER-типа.Формированиеотношенийдля связи1:1Правило \. Если степень бинарной связи 1:1 и класс принадлежности обеих сущностей обязательный, то формируется одно отношение.
Первичнымключом этого отношения может быть ключ любой из двух сущностей.На рис. 6.6 приведены диаграмма ER-типа и отношение, сформированноепо правилу 1 на ее основе.1816. Метод сущность-связьК1,...К2,...K1vK2Рис. 6.6. Диаграмма и отношения для правила 1На рисунке используются следующие обозначения:С1, С2 - сущности 1 и 2;Kl, К2 - ключи первой и второй сущности соответственно;R1 - отношение 1, сформированное на основе первой и второй сущностей;KlvK2,...
означает, что ключом сформированного отношения может бытьлибо К1, либо К2.Это и другие правила будем проверять,.рассматривая различные варианты связи ПРЕПОДАВАТЕЛЬ ВЕДЕТ Д И С Ц И П Л И Н У . Пусть сущностьПРЕПОДАВАТЕЛЬ характеризуется атрибутами НП (идентификационныйномер преподавателя), Ф И О (фамилия, имя и отчество), Стаж (стаж преподавателя). Сущность Д И С Ц И П Л И Н А характеризуется соответственно атрибутами КД (код дисциплины), Часы (часы, отводимые на дисциплину).Тогда схема отношения, содержащего информацию об обеих сущностях, и самоотношение для случая, когда степень связи равна 1:1, а КП обязательный длявсех сущностей, могут иметь вид, показанный на рис. 6.7.ПРЕПОДАВАТЕЛЬ_ДИСЦИПЛИНА(НП,ФИО, Стаж, КД, Часы)ПРЕПОДАВАТЕЛЬ_ДИСЦИПЛИНАНПФИОСтаж КДП1Иванов И.М.5К162П2Петров М.И.7К274ПЗСидоров Н.Г.
10КЗ102П4Егоров В.В.К4805ЧасыРис. 6.7. Полученные по правилу 1 схема и отношениеСформированное отношение содержит полную информацию о преподавателях, дисциплинах и о том, как они связаны между собой. Так, преподаватель Иванов ведет только дисциплину с кодом К1, а дисциплина К1 ведется только Ивановым (связь 1:1). В этом отношении отсутствуют пустыеполя (КП обязательный для всех сущностей), т. к.
нет преподавателей, которые бы что-то не вели, и нет дисциплин, которые никто не ведет. ТакимЧасть 2. Проектирование и использование БД182образом, одного отношения в данном случае достаточно. В качестве первичного ключа может быть выбран ключ первого отношения НП или ключ второго отношения КД.Правило 2. Если степень связи 1:1 и класс принадлежности одной сущности обязательный, а второй - необязательный, то под каждую из сущностейформируется по отношению с первичными ключами, являющимися ключами соответствующих сущностей. Далее к отношению, сущность которого имеет обязательный КП, добавляется в качестве атрибута ключ сущности с необязательным КП.На рис. 6.8 приведены диаграмма ER-типа и отношения, сформированныепо правилу 2 на ее основе.К1_,...К2,...К1,К2К2,...Рис.
6.8. Диаграмма и отношения для правила 2Чтобы убедиться в справедливости правила, рассмотрим следующий пример. На рис. 6.9 приведено исходное отношение, содержащее информацию опреподавателях и дисциплинах. Оно представляет вариант, в котором класссущности ПРЕПОДАВАТЕЛЬ является обязательным, а сущности ДИСЦ И П Л И Н А - необязательным. При этом пробелы «—» (пустые поля) присутствуют во всех кортежах с информацией о дисциплинах, которые не ведутся ни одним из преподавателей.ПРЕПОДАВАТЕЛЬ_ДИСЦИПЛИНАЧасыНПФИОСтаж КДП1Иванов И.М.5К162П2Петров М.И.7К274ПЗСидоров Н.Г.
10КЗ102——К480—Рис. 6.9. Исходное отношениеИзбежать этой ситуации можно, применив правило 2, в соответствии скоторым, выделяются два отношения, приведенные на рис. 6.10.6. Метод сущность-связь183ПРЕПОДАВАТЕЛЬНИЦ], ФИО, Стаж, КД)Д И С Ц И П Л И Н А ^ , Часы)ПРЕПОДАВАТЕЛЬДИСЦИПЛИНАНПФИОСтаж КДКДЧасыП1Иванов И.М.5К1К162П2Петров М.И.7К2К274ПЗСидоров Н.Г.10КЗКЗ102П4Егоров В.В.5К4К480Рис.