Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
GOSI 1 / Bazy_dannykhGOS_L_1241_ys_1241_n.docx
Скачиваний:
33
Добавлен:
17.04.2015
Размер:
518.1 Кб
Скачать
  1. Проектирование баз данных с использованием er-метода. Диаграммы er-экземпляров и er-типа для степеней связи 1:1,1:n, n:m и различных классах принадлежности сущностей.

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

Перечень общих правил генерации отношений из диаграмм ER-типа можно получить, опираясь на класс принадлежности и степень связи как на определяющие факторы. используем ситуацию ПРЕПОДАВАТЕЛЬ ЧИТАЕТ ДИСЦИПЛИНА

отношения необходимые для размещения информации, содержащейся в бинарных связях степени 1:1, является необходимость одного отношения. Пусть это отношение называется ПРЕПОДАВАТЕЛЬ и все атрибуты помещаются в это одно отношение. На рис.6.5 приведен экземпляр такого отношения в том случае, когда класс принадлежности является обязательным для обеих сущностей. В этом отношении сущность ПРЕПОДАВАТЕЛЬ была дополнена двумя типичными атрибутами: фамилия преподавателя (пфам) и телефон-преподавателя (птел). Один атрибут добавлен к сущности ДИСЦИПЛИНА: название дисциплины.

ПРЕПОДАВАТЕЛЬ (нп, пфам, птел, нд, название).

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

нп

пфам

птел

нд

название

П1

Кулаков

523298

Д1

ВМ

П2

Быков

536554

Д2

ТМ

П3

Пухова

426521

Д3

ВТ

П4

Ахмеров

348654

Д4

Физика

Рис.6.5. Экземпляр единичного отношения.

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

Ключ сущности ПРЕПОДАВАТЕЛЬ был избран в качестве первичного ключа для отношения, но также может быть использован ключ сущности ДИСЦИПЛИНА.

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

Если степень связи равна 1:1 и класс принадлежности одной сущности является обязательным, а другой - не обязательным, то одного отношения недостаточно. На рис. 6.6 приведен экземпляр отношения в том случае, когда класс принадлежности сущности ПРЕПОДАВАТЕЛЬ является обязательным, а сущности ДИСЦИПЛИНА – не обязательным. В этом случае пробелы появляются во всех кортежах, содержащих информацию о дисциплинах не читаемых ни одним из преподавателей. Пробелы обозначаются знаками "-".

ПРЕПОДАВАТЕЛЬ (нп, пфам, птел, нд, название)

нп

пфам

птел

нд

название

П1

Кулаков

523298

Д1

ВМ

П2

Быков

536554

Д2

ТМ

П3

Пухова

426521

Д3

ВТ

--

--

--

Д4

Физика

Рис.6.6. Экземпляр единичного отношения

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

случай иллюстрируется на рис. 6.6.

ПРЕПОДАВАТЕЛЬ (нп, Пфам, Птел, нд, )

ДИСЦИПЛИТНА (нд ,название)

ПРЕПОДАВАТЕЛЬ ДИСЦИПЛИНА

нп

пфам

птел

нд

нд

название

П1

Кулаков

523298

Д1

Д1

ВМ

П2

Быков

536554

Д2

Д2

ТМ

П3

Пухова

426521

Д3

Д3

ВТ

Рис.6.7. Экземпляры двух отношений

ПРАВИЛО 2. Если степень бинарной связи равна 1:1 и класс принадлежности одной сущности является обязательным, а другой - необязательным, то необходимо построение двух отношений. Под каждую сущность необходимо выделение одного отношения, при этом ключ сущности должен служить первичным ключом для соответствующего отношения. Кроме того, ключ сущности, для которого класс принадлежности является не обязательным, добавляется в качестве атрибута в отношение, выделенное для сущности с обязательным классом принадлежности.

Воспользовавшись этим правилом в ситуации, где класс принадлежности сущности ДИСЦИПЛИНА является обязательным, а сущности ПРЕПОДАВАТЕЛЬ - необязательным, получим следующие отношения:

ПРЕПОДАВАТЕЛЬ (нп, пфам, птел).

ДИСЦИПЛИНА (нд, название, нп).

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

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

нп

пфам

птел

нд

название

П1

Кулаков

523298

Д1

ВМ

П2

Быков

536554

--

--

П3

Пухова

426521

Д3

ВТ

--

--

--

Д4

Физика

а) Использование одного отношения

ПРЕПОДАВАТЕЛЬ ДИСЦИПЛИНА

нп

пфам

птел

нд

нд

название

П1

Кулаков

523298

Д1

Д1

ВМ

П2

Быков

536554

--

Д2

ТМ

П3

Пухова

426521

Д3

Д3

ВТ

б) Использование двух отношений

ПРЕПОДАВАТЕЛЬ ДИСЦИПЛИНА

нп

пфам

птел

нд

название

П1

Кулаков

523298

Д1

ВМ

П2

Быков

536554

Д3

ВТ

П3

Пухова

426521

Д4

Физика

ЧИТАЕТ

нп

нд

П1

Д1

П3

Д3

в) Использование трех отношений

Рис. 6.8. Возможные варианты отношений для случая бинарной связи степени 1:1, когда ни один из классов принадлежности ни является обязательным.

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

ПРЕПОДАВАТЕЛЬ содержит информацию о всех преподавателях, отношение ДИСЦИПЛИНА - обо всех дисциплинах, а отношение ЧИТАЕТ содержит номера дисциплины только тех, которые читаются, и номера преподавателей только тех, которые читают лекции по дисциплинам.

ПРАВИЛО 3. Если степень бинарной связи равна 1:1 и класс принадлежности ни одной сущности не является обязательным, то необходимо использовать три отношения: по одному для каждой сущности, ключи которых служат в качестве первичных ключей в соответствующих отношениях, и одного для связи. Среди своих атрибутов отношение, выделяемое связи, будет иметь по одному ключу сущности от каждой сущности.

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

Рассмотрим два варианта:а) принадлежности n-связной сущности является обязательным, б)необязательным.

а):

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

б) :

используют правило5: Для бинарной связи степени 1:N, N:1 с необязательным классом принадлежности n-связной сущности, то (независимо от класса принадлежности односвязной сущности) необходимо формирование трех отношений. Первое включает все атрибуты, характеризующую первую сущность, ключ – ключ сущности. Второе включает все атрибуты, третьей сущности, ключ – ключ сущности. Третье отношение включает информацию о связи - помещенные атрибуты – ключи связи сущностей (возможны другие атрибуты); ключ отношения - ключ n–связной сущности.

Построение предварительных отношений для бинарных связей степени M:N. Диаграммы ER – экземпляров и ER – типа для степени связи N:M. Правила получения предварительных отношений по ди­аграммам ER – типа. Пример.

Если степень бинарной связи равна N:M, то для хранения данных требуется три отношения вне зависимости от класса принадлежности как первый, так и второй сущностей. При использовании одного или двух отношений неизбежно возникновение пробелов и/или повторяющихся групп данных в экземплярах этих отношений. Какая из этих двух проблем возникает при использовании двух отношений зависит от классов принадлежности двух сущностей. Предлагается следующие правило генерации предварительных отношений для степени связи m:n.ПРАВИЛО 6. Если степень бинарной связи равна N:M, то для хранения данных необходимо три отношения: по одному для каждой сущности, причем ключ каждой сущности используется в качестве первичного ключа соответствующего отношения, и одного отношения для связи. Последние отношение должно иметь в числе своих атрибутов ключ сущности каждой сущности.

Для случая, когда степень связи равна N:M и ни один класс принадлежности не является обязательным экземпляры:

В этом случае отношение ЧИТАЕТ целиком является ключом. Аналогичными будут экземпляры отношений, содержащие те же данные в тех случаях, когда один или оба класса принадлежности являются обязательными.

ПРАВИЛО 6. Если степень бинарной связи равна N:M, то для хранения данных необходимо три отношения: по одному для каждой сущности, причем ключ каждой сущности используется в качестве первичного ключа соответствующего отношения, и одного отношения для связи.

Соседние файлы в папке GOSI 1