Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Диго С.М. Базы данных проектирование и использование.doc
Скачиваний:
723
Добавлен:
14.05.2016
Размер:
12.04 Mб
Скачать

2. Ключи.

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

Ключ обладает следующими свойствами:

а) уникальность - не может быть повторяющихся значений клю­ча в таблице;

б) неизбыточность - удаление любого атрибута из составного клю­ча должно привести к потере его уникальности;

в) элементы ключа не могут иметь неопределенные значения.

2.2. В отношении несколько атрибутов или совокупностей атри­бутов могут претендовать на роль ключа. В этом случае каждый из них называется вероятным (альтернативным) ключом. Один из них должен быть выбран в качестве первичного ключа.

2.3. Атрибут (или совокупность атрибутов), который в данном отношении ключом не является (но может входить в состав составного ключа), а в другом отношении является первичным ключом, назы­вается внешним ключом.

3. Связи.

Связи в реляционной базе данных устанавливаются от ключа к внешнему ключу.

2. Сквозной пример использования er-моделирования для проектирования бд

На рис. П.1 изображен фрагмент ER-модели предметной области в нотации базовой модели.

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

ПРЕПОДАВАТЕЛЬ (Таб_ном_преподавателя, ФИО_преподавателя, Дата_рождения, Должность, Уч_степень, Адрес, Условия_сотрудничества).

ПРЕПОДАВАТЕЛЬ ШТАТНЫЙ (Таб_ном_преподавателя, Дата_ зачисления_в_штат).

ПРЕПОДАВАТЕЛЬ ВНЕШТАТНЫЙ (Таб_ном_преподавателя, Место_основной_работы, Должность_по_основной_работе).

ДЕТИ (Таб_ном_преподавателя, ФИО_ребенка).

ЗН_ИН_ЯЗ (Таб_ном_преподавателя, Ин_язык).

ПРЕДМЕТ (Код_предмета, Наименование_предмета_полное, Наименование_предмета_краткое).

ГРУППА (Номер_группы, Вид_группы).

СТУДЕНТ (Ном_зачетки, ФИО_студента, Номер_группы).

СДАЧА_ЭКЗАМЕНА (Таб_ном_преподавателя, Ном_зачетки, Код_предмета, Дата_сдачи, оценка).

Тот же фрагмент ER-модели в нотации IDEF1X, построенный с использованием ERWin, приведен на рис. П.2.

На рис. П2 приведен фрагмент ER-модели для абстрактного учеб­ного заведения. На рисунке продемонстрировано применение всех изобразительных средств, которые имеются в нотации базовой ER-модели. Изображены все виды объектов - простые объекты (ПРЕД­МЕТ, ПАСПОРТ, ГРУППА, СТУДЕНТ, ДАТА), обобщенный объект ПРЕПОДАВАТЕЛЬ, агрегированный объект СДАЧА_ЭКЗАМЕНА. Также использованы все виды связей (1:1, 1:М и М: М). В данном при­мере предполагается, что студент может учиться только в одной груп­пе. Связь М: М между объектами ПРЕПОДАВАТЕЛЬ и ПРЕДМЕТ означает, что преподаватель может владеть несколькими предмета­ми, а каждый предмет могут вести несколько преподавателей.

При изображении объекта ПРЕПОДАВАТЕЛЬ использованы все разновидности свойств. «Должность» изображена как единичное свой­ство. Это означает, что в данном учебном заведении внутреннее со­вместительство не разрешено. Если речь идет только о профессорс­ко-преподавательском составе, то решение сделать «Должность» свой­ством, а не отдельным объектом вполне оправданно. При построении реальных моделей для других предметных областей может возник­нуть необходимость изобразить «Должность» как объект.

В данном фрагменте «Дату» можно было бы и не выделять в от­дельный объект, сделать свойством агрегированного объекта СДАЧА ЭКЗАМЕНА. В реальной ситуации, когда рисуется общая модель пред­метной области, с «Датой» бывает связано несколько разных объек­тов, и в этом случае выделение ее в виде отдельного объекта сократит число элементов в ER-модели, так объект «Дата» в модель вводится один раз, а соответствующее свойство придется вводить для каждого объекта, где оно встречается.