Главная страница

Физическая организация данных


Скачать 487.44 Kb.
НазваниеФизическая организация данных
Дата23.02.2018
Размер487.44 Kb.
Формат файлаdocx
Имя файлаdb.docx
ТипДокументы
#37060
страница15 из 16
1   ...   8   9   10   11   12   13   14   15   16

Таблица 8.4. Отношение КНИГИ-АВТОРЫ-РЕДАКТОРЫ (2НФ)

Id

Author

Editor

20

Бочков С.

Садчиков П.

20

Субботин Д.

Седов П.

10

Джехани Н.

Красилов А. Перминов О.

10




Перминов О.

35

Соловьев Г.




35

Никитин В.




11

Попов Э.В.

Некрасов А.

44




Витенберг Э.

89

Коутс Р.Б

Шаньгин В.






Отношение во 2НФ является менее избыточным, чем в 1НФ, но оно также не свободно от аномалий. Например, при удалении книги Попова «Общение с ЭВМ на естественном языке» мы потеряем информацию о том, что есть рубрика «Кибернетика» с кодом 32.81. И внести сведения о новой рубрике нельзя, пока в списке книг не появится хотя бы одна книга по этой рубрике.

Теперь рассмотрим понятие транзитивной зависимости. Пусть X, Y, Z - атрибуты некоторого отношения. При этом X^Y и Y^Z, но обратное соответствие отсутствует, т.е. Z не зависит от Y или Y не зависит от X. Тогда говорят, что Z транзитивно зависит от X (X^^Z).

Третья нормальная форма (3НФ).

Отношение находится в 3НФ, если оно находится во 2НФ и в нем отсутствуют транзитивные зависимости.

Для отношения КНИГИ (табл. 8.3) атрибут Theme зависит от атрибута Code, а не от ключа (хотя название рубрики, естественно, соответствует её шифру). Поэтому для приведения отношения к 3НФ (табл. 8.5) нужно выделить из него ещё одно отношение РУБРИКАТОР (табл. 8.6).


Табл. 8.6.

ОтношениеР УБРИКА ТОР

Code

Theme

22.18

МК

32.97

BT

32.973

ЭВМ

32.81

Кибернетика








Таблица 8.5. Отношения КНИГИ, приведённые к 3НФ

ID

Code

Title

Type

Year

Pg

20

22.18

Язык

программирования

СИ

учебник

1990

384

10

22.18

Язык АДА

учебник

1988

552

35

32.97

Операционные системы ЭВМ

учебное

пособие

1992

208

11

32.81

Общение с ЭВМ на

естественном

языке

учебник

1982

360

44

32.97

ПУ для ПЭВМ

справочник

1992

208

89

32.973

Интерфейс

«человек-

компьютер»

учебник

1990

501



Отношения, находящиеся в 3НФ, свободны от аномалий модификации. Но для табл. 8.5 можно ещё вынести в отдельную таблицу поле Тип, чтобы реализовать ограничение на домен для этого поля. Таблица ТИПЫ

ИЗДАНИЙ будет состоять из одного поля Название типа, определённого как первичный ключ. Тогда поле Тип таблицы КНИГИ станет внешним ключом.

Примечание: если для атрибутов X,Y,Z есть транзитивная зависимость X Z, и при этом Y ^ X или Z ^ Y, то такая зависимость не требует декомпозиции отношения. Например, для отношения АВТОМОБИЛИ с первичным ключом Государственный номерной знак и полями № кузова и № двигателя очевидно, что номера кузова и двигателя зависят как друг от друга, так и от первичного ключа. Но эта зависимость взаимно однозначная, поэтому декомпозиции отношения не нужна.

Введём понятие многозначной зависимости. Многозначная зависимость существует, если заданным значениям атрибута X соответствует множество, состоящее из нуля (или более) значений атрибута Y. Если в отношении есть многозначные зависимости, то схема отношения должна находиться в 4НФ.

Перефразируя вышесказанное, многозначная зависимость (X-»Y) имеет место, если по значению некоторого атрибута (X) мы можем определить набор значений другого атрибута (Y). Например, зная название страны, мы можем определить названия всех соседних с нею стран.

Различают тривиальные и нетривиальные многозначные зависимости. Тривиальной называется многозначная зависимость X-»Y, для которой Y d X или X U Y = R, где R - рассматриваемое отношение. Тривиальная многозначная зависимость не нарушает 4НФ. Если хотя бы одно из двух этих условий не выполняется (т.е. Y не является подмножеством X или X U Y состоит не из всех атрибутов R), то такая многозначная зависимость называется нетривиальной.

Четвертая нормальная форма (4НФ).

Отношение находится в 4НФ, если оно находится в 3НФ и в нем отсутствуют нетривиальные многозначные зависимости.

Отрицательный момент в нарушении 4НФ заключается в том, что в одно отношение включаются независящие друг от друга атрибуты. Например, у книги «Язык программирования СИ» (табл. 8.1) два автора и два редактора, но это не значит, что редактор Садчиков редактировал автора Бочкова, а редактор Седов - автора Субботина. А если у книги нет автора или редактора, то соответствующие поля останутся пустыми (null). Т.е. в отношении КНИГИ-АВТОРЫ-РЕДАКТОРЫ (табл. 8.4) атрибуты Author и Editor образуют две многозначные зависимости от ключа, и при этом значения этих атрибутов не зависят друг от друга. Поэтому для приведения отношения к 4НФ нужно разбить его на два отношения КНИГИ-АВТОРЫ и КНИГИ-РЕДАКТОРЫ (табл. 8.7, 8.8).


Таблица 8.7. Отношение КНИГИ- АВТОРЫ (4НФ)

ID

Author

200

Бочков С.

200

Субботин Д.

100

Джехани Н.

300

Крон Г.1

876

Г ик Е.Я.

385

Фролов Г.

385

Кузнецов Э.








Таблица 8.8. ОтношениеКНИГИ- РЕДАКТОРЫ(4НФ)

ID

Editor

200

Садчиков П.

300

Баранов А.

876

Кикоин И.

876

Капица С.

440

Витенберг Э.

385

Храмов А.

385

Рожков П.






1   ...   8   9   10   11   12   13   14   15   16


написать администратору сайта