Базы данных конспект лекций - Коллектив авторов (2007)
-
Год:2007
-
Название:Базы данных конспект лекций
-
Автор:
-
Жанр:
-
Язык:Русский
-
Издательство:Эксмо
-
Страниц:83
-
ISBN:978-5-699-23778-4
-
Рейтинг:
-
Ваша оценка:
Четкое и лаконичное изложение материала, осознанный отбор важных тем позволяют качественно и быстро подготовиться к экзаменам по данному предмету, семинарам и зачетам.
Базы данных конспект лекций - Коллектив авторов читать онлайн бесплатно полную версию книги
Теперь перейдем к рассмотрению второго отношения – «Аудитории». В отношении «Аудитории» атрибут первичного ключа «№ корпуса» является одновременно внешним ключом, ссылающемся на первичный ключ отношения «Корпуса». В этом отношении неключевой атрибут «Площадь кв. м» полностью зависит от всего составного первичного ключа «№ корпуса, № аудитории» и не зависит, даже не может зависеть ни от какой из его частей.
Таким образом, путем декомпозиции исходного отношения, мы пришли к тому, что все условия из определения второй нормальной формы полностью выполнились.
В данном примере все требования функциональной зависимости навязаны объявлением первичных ключей (кандидатных ключей здесь нет) и внешних ключей. Поэтому дальнейшая нормализация не требуется.
4. Третья нормальная форма (3NF)
Следующей нормальной формой, которую мы подвергнем рассмотрению, является третья нормальная форма (или 3NF). В отличие от первой нормальной формы, так же как и вторая нормальная форма, третья – подразумевает задание вместе с отношением системы функциональных зависимостей. Сформулируем, какими свойствами должно обладать отношение, чтобы оно было приведенным к третьей нормальной форме.
Определение. Базовое отношение находится в третьей нормальной форме относительно заданного множества функциональных зависимостей тогда и только тогда, когда оно находится во второй нормальной форме и каждый неключевой атрибут полностью функционально зависит только от ключей.
Таким образом, требования, предъявляемые третьей нормальной формой, сильнее требований, накладываемых первой и второй нормальной формой, даже вместе взятых. Фактически в третьей нормальной форме каждый неключевой атрибут зависит от ключа, причем от всего ключа целиком и ни от чего другого, кроме как от ключа.
Проиллюстрируем процесс приведения ненормализованного отношения к третьей нормальной форме. Для этого рассмотрим пример: отношение, находящееся не в третьей нормальной форме.
Итак, вариант 1 схемы отношения «Сотрудники»:
Сотрудники (№ табельный, Фамилия, Имя, Отчество, Код должности, Оклад);
Primary key (№ табельный);
Кроме того, над данным отношением «Сотрудники» задана следующая система функциональных зависимостей:
{Код должности} → {Оклад};
Действительно, как правило, от должности, а следовательно, от ее кода в соответствующей базе данных напрямую зависит размер оклада, т. е. размер заработной платы.
Именно поэтому это отношение «Сотрудники» и не находится в третьей нормальной форме, ведь получается, что неключевой атрибут «Оклад» полностью функционально зависит от атрибута «Код должности», хотя этот атрибут и не является ключевым.
Любопытно, что к третьей нормальной форме любое отношение приводится точно таким же методом, как и к двум формам до этой, а именно, путем декомпозиции.
Проведя декомпозицию отношения «Сотрудники», получим следующую систему новых самостоятельных отношений:
Итак, вариант 2 схемы отношения «Сотрудники»:
Должности (Код должности, Оклад);
Primary key (Код должности);
Сотрудники (№ табельный, Фамилия, Имя, Отчество, Код должности);
Primary key (Код должности);
Foreign key (Код должности) references Должности (Код должности);
Теперь, как мы видим, в отношении «Должности» неключевой атрибут «Оклад» полностью функционально зависит от простого первичного ключа «Код должности» и только от этого ключа.