13122010 (Собственноручно набранные лекции по БД), страница 2
Описание файла
Файл "13122010" внутри архива находится в следующих папках: Собственноручно набранные лекции по БД, лекция 7. Документ из архива "Собственноручно набранные лекции по БД", который расположен в категории "". Всё это находится в предмете "базы данных" из 11 семестр (3 семестр магистратуры), которые можно найти в файловом архиве МАИ. Не смотря на прямую связь этого архива с МАИ, его также можно найти и в других разделах. Архив можно найти в разделе "лекции и семинары", в предмете "базы данных" в общих файлах.
Онлайн просмотр документа "13122010"
Текст 2 страницы из документа "13122010"
Связь 1 - n
Рассмотрим правила преобразования E-R диаграммы с таким типом связи, представленным на рисунке.
Из этой диаграммы следует, что каждый преподаватель может вести занятия по нескольким дисциплинам, при этом занятия каждой дисциплиной может вести только один преподаватель. Класс принадлежности сущности дисциплина является обязательным, это означает, что для каждой дисциплины известен преподаватель, который её ведёт.
При связи 1 - n и обязательном классе принадлежности сущности, рядом с которой на диаграмме стоит n, следует использовать две таблицы, которые описывают свойства сущностей.
Связь устанавливается путём добавления ключа сущности, рядом с которой стоит 1 в таблицу описывающую свойства сущности рядом с которой стоит n.
В таблице представлены исходные данные для рассматриваемой сущности.
Если класс принадлежности сущности дисциплина будет необязательным, то возникнут неопределенные значения атрибута № Пр..
Для исключения этого необходимо будет использовать 3 таблицы.
Однако на взгляд автора, использование варианта из двух таблиц не приводит к каким либо аномалиям и является более предпочтительным. Поэтому в примерах, которые мы будем рассматривать дальше, две сущности со связью 1 - n будем отображать при помощи двух таблиц.
Связь n - m
Рассмотрим правила преобразования такой связи на примере E-R диаграммы Студент - Дисциплина.
При наличии между двумя сущностями связи n - m необходимо использовать 3 таблицы. Две описывают свойства сущностей, а третья связь между ними. Третья таблица должна содержать ключи связываемых сущностей, а также может включать атрибуты, характеризующие эту связь.
В рассматриваемом примере атрибутом, характеризующим связь, является Отметка. Очевидно, что её нельзя поместить ни в таблицу, описывающую свойства сущности Студент, ни в таблицу, описывающую свойства сущности Дисциплина.
В таблице представлены исходные данные для рассматриваемого примера.
Рассмотрев правила преобразования E-R диаграмм в логическую схему реляционной базы данных можно задать вопрос, зачем нужны правила нормализации, если существуют более простые правила логического проектирования, основанные на построении и анализе E-R диаграмм.
Ответ на этот вопрос дадим на примере проектирования базы данных для туристической компании.
В результате анализа предметной области можно выявить две сущности Тур и Турист и следующие атрибуты этих сущностей.
Тур (Код Тура, Начало, Дней, Питание, № отеля, Название отеля, Страна
Категория, Телефон отеля)
Турист (ФИО туриста, Паспорт, Адрес туриста, Телефон туриста)
Между этими сущностями существует бинарная связь типа n - m, так как один тур могут приобрести несколько туристов, и каждый турист может приобрести несколько туров.
Следовательно, рассматриваемую предметную область можно описать следующей E-R диаграммой.
Если исходные данные о предметной области будут представлены таблицей:
То в соответствии с правилами преобразования данного типа диаграммы в логическую схему базы данных получим:
В результате анализа первой таблицы легко обнаружить повторение отелей, то для каждого тура в этом отеле будут дублироваться данные об отеле.
Используя правила нормализации можно обнаружить в этой таблице транзитивную зависимость.
Код тура - № отеля - Название отеля, Страна, Категория, Телефон отеля
В чём же дело? При построении E-R диаграммы была допущена ошибка, которая заключалась в том, что не была выделена сущность Отель.
На взгляд автора правила нормализации являются эффективным средством обнаружения подобных ошибок, поэтому их нужно знать, понимать и применять при проектировании баз данных.
После исправления допущенной ошибки E-R диаграмма будет иметь следующий вид.
7