и [, № 000, математика],

т. е. первому уравнению во втором условии — кортежи удовлетворяют. Анали­зируя таблицу, заметим, что для того, чтобы существовала многозначная зави­симость ШКОЛА №→→ПРЕДМЕТ, должно выполняться условие

и [Жукова A. M.]=s [],

что действительно имеет место.

Другой способ проверки многозначной зависимости X→→Y на отношение R(X, Y, Z) может быть осуществлен на основе провер­ки существования кортежа <х, у, z> при условии, что существуют кортежи <х, у, z'> и <х, у', z>.

Следует иметь в виду, что в общем случае формальная про­верка должна выполняться на множестве всех возможных экземп­ляров кортежей отношения.

Правила вывода многозначных зависимостей сходны с прави­лами вывода функциональных зависимостей:

МЗ1 (дополнение). Если XU, YU, Х →→Y, то имеет место многозначная зависимость X→→ U - X - Y.

МЗ2 (присоединение). Если XU, YU, ZW, Х→→Y, то име­ет место зависимость X W →→YZ.

МЗ3 (транзитивность). Если XU, YU, Х →→Y, Y→→Z, то

X→→Z— Y.

Существуют также правила вывода для совокупности ФЗ и МЗ:

ФМ1. Если XU, YU, Х →Y, то Х →→Y.

ФМ2. Если XU, YU, Z U, WU и W не пересекается с Y (т. е. WY=0), и Х →→Y, W→Z, то имеет место зависимость Х→→Z.

ФМЗ. Если Х →→Y, XY→Z, то X→Z—Y.

Функциональная и многозначная зависимости являются свой­ствами, существующими между двумя атрибутами (множествами). С их помощью осуществляют декомпозиции (разбиение) отноше­ния на два или восстанавливают исходное отношение, соединяя два отношения (рис. 22.17).

НЕ нашли? Не то? Что вы ищете?

Рис. 22.17. Пример изображения многозначных зависимостей

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

Рассмотрим отношение R{A1, A2,… ,Ап}. Возможный ключ k отношения Rэто комбинация атрибутов (возможно, состоящих из одного атрибута), обладающих следующими свойствами.

1. В каждом кортеже отношения R величина k единственным образом определяет этот кортеж.

2. Не существует атрибута в возможном ключе k, который мог бы быть удален без нарушения свойства 1.

Всегда существует, по крайней мере, один возможный ключ, т. е. комбинация всех атрибутов R удовлетворяет свойству 1.

Если в отношении R имеется несколько возможных ключей, то один из них выбирается в качестве первичного.

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

Нормальные формы схем отношений. Рассмотрим четыре уров­ня нормализации схем отношений и соответственно четыре нор­мальные формы отношений: 1НФ, 2НФ, 3НФ, 4НФ. Их взаимное отношение можно представить в виде, представленном на рис. 22.18.

Из рис. 22.18 следует, что отношения являются как бы вложен­ными друг в друга по возрастанию номеров.

Так, например, если отношение находится в 4НФ, то оно будет удовлетворять и усло­виям 3НФ, 2НФ, 1НФ.

Рис. 22.18. Взаимное отношение нормальных форм

Отношение находится в первой нормальной форме (1НФ), ес­ли каждый атрибут отношения является простым (атомарным) атрибутом, т. е. отсутствуют составные. Рассмотрим схему отно­шения:

АВТОМОБИЛЬ (МОДЕЛЬ, МАРКА, МОЩНОСТЬ, СТОИМОСТЬ, ИЗГОТОВИТЕЛЬ (НАЗВАНИЕ ЗАВОДА, ГОРОД)).

В данном случае атрибут ИЗГОТОВИТЕЛЬ составной. Для приведения к 1НФ отношения необходимо избавиться от состав­ного отношения — ИЗГОТОВИТЕЛЬ. Этого можно добиться, рас­сматривая вместо составного атрибута его составляющие:

АВТОМОБИЛЬ (МОДЕЛЬ, МАРКА МОЩНОСТЬ, СТОИМОСТЬ, НАЗВАНИЕ ЗАВОДА ИЗГОТОВИТЕЛЯ, ГОРОД).

Приведение отношения к 1НФ достаточно для реализации язы­ков запросов.

Чтобы рассмотреть 2НФ, введем понятие полной зависимости. Пусть X и Y — подмножества атрибутов отношения R и XY. Ес­ли Y функционально не зависит от любого подмножества А мно­жества X (причем А не совпадает с X), то Y называется полно­стью зависимым от X в R.

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

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

Транзитивная зависимость наблюдается в R, если существует такой атрибут А, что X→Y и Y→A, Y ↔X, где X — ключ.

Можно заметить, что 2НФ и 3НФ накладывают ограничения на зависимости только в связи с непервичными атрибутами. По­этому в рассмотрение вводят усиленную третью нормальную фор­му (или нормальную форму Бойса-Кодда).

Отношение R находится в усиленной третьей нормальной фор­ме, если для всех зависимостей ХА, когда А не принадлежит X, X является возможным ключом отношения R. Обычно атрибут, от которого функционально полно зависит другой, называют детер-минантой. Поэтому говорят, что отношение R находится в усилен­ной третьей нормализованной форме, если все детерминанты явля­ются ключами.

Можно отметить следующее отличие этих нормальных форм по информационному содержанию. Вторая нормальная форма более информативна, чем первая, а третья более информативна, чем вто­рая.

Поэтому 3НФ и усиленная 3НФ более понятны пользователю и приспособлены к реализации.

Существует также нормальная форма, учитывающая много­значные зависимости, ее называют четвертой нормальной формой (4НФ). Отношение R находится в четвертой нормальной форме, если всякий раз, когда существует многозначная зависимость X→→Y (где Y≠Ø, YX и XY состоит не из всех атрибутов R), также существует зависимость ХА для любого атрибута А в R.

Получение отношений нормальной формы достигается декомпо­зицией их схем. Под декомпозицией схемы отношения R={A1, А2,..., Ап} понимается замена схемы совокупностью отдельных схем ρ={R1, R2,...,Rk} таких, что R1R2...Rn=R={A1, A2,..., Ап}. При этом не накладывается никаких ограничений на пересе­чение любых двух элементов совокупности ρ.

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

языков манипулирования данными используют математический аппарат, основанный на следующих трех подходах:

- реляционная алгебра;

- реляционное исчисление с переменными-кортежами;

- реляционное исчисление с переменными-атрибутами.

Реляционная алгебра. В ней определяются основные операции над данными реляционного типа. Все операции, вводимые в реля­ционной алгебре, можно разделить на традиционные над множе­ствами и специализированные, вводимые для удобства поиска в БД.

К операциям первой группы относятся: объединения, пересече­ние, разность, декартово произведение. К операциям второй груп­пы следует отнести: проекцию, ограничение, соединение, деление.

Объединение. В результате применения этой операции по­лучается отношение, объединяющее кортежи, содержащиеся в ис­ходных отношениях. Пусть имеем два исходных отношения R1 и R2. Операция объединения этих отношений будет обозначаться R1R2:

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87