Пусть
U – набор всех атрибутов отношения
R. Присутствие в отноше-
нии неполной зависимости
В от ключа
К означает, что
∃
A ((
A ⊂
K) ∧ (
B
⊄
A) ∧ (
A →
B)). Построим декомпозицию
R
l
= (
A
∪
B),
R
2
= (
U \
B). От-
ношения
R
1
и
R
2
уже не содержат указанной неполной зависимости, и
полученная декомпозиция обладает свойством соединения без потерь.
Далее аналогичные проверки применяются к отношениям
R
1
и
R
2
, так
продолжается до тех пор, пока не получим декомпозицию
ρ = (
R
1
,
R
2
, ...,
R
k
), каждая из подсхем которой не содержит неполных зависимостей не-
первичных атрибутов от ключей. Декомпозиция
ρ и является искомой
второй нормальной формой схемы
R.
Описанный
способ обосновывается также следующими свойствами
декомпозиции.
а) Пусть задана схема отношения
R = (
U,
F),
ρ = (
R
1
,
R
2
, ...,
R
k
) –
декомпозиция
R, обладающая свойством соединения без потерь относи-
тельно
F, a
F
i
для каждого
i означает проекцию
U на
R
i
. Допустим, что
σ
= (
S
1
,
S
2
, ...,
S
m
) – декомпозиция
R
i
, обладающая свойством соединения
без потерь относительно
F
i
. Тогда декомпозиция
R в подсхемы (
R
1
, ...,
R
i – l
,
S
1
, ...,
S
m
,
R
i + l
, ...,
R
k
) – также обладает свойством соединения без по-
терь относительно
F.
б) Предположим, что
R,
F,
ρ тe же, что в пункте а). Пусть τ = (
R
1
,
R
2
,
...,
R
k
,
R
k + l
, ...,
R
t
) – декомпозиция
R в некоторое множество схем, кото-
рое включает все схемы из
ρ. Тогда τ также обладает свойством соеди-
нения без потерь относительно
F.
Таким образом, если декомпозиция обладает свойством соединения
без потерь, то «разбив» некоторую схему декомпозиции на еще более
мелкие подсхемы, обладающие свойством соединения без потерь отно-
сительно разбиваемой подсхемы, опять получим декомпозицию исход-
ной схемы, обладающую этим свойством. Добавление к декомпозиции
любого количества подсхем не нарушает свойства соединения без по-
терь. Эти свойства часто используются также для приведения отношений
к третьей и усиленной третьей (рассмотрены ниже) нормальным формам.
Подробнее остановимся также на задаче проектирования набора
функций
F на схемы декомпозиции. В общем случае это задача довольно
трудоемкая, но при приведении отношений к нормальным формам чаще
всего в отдельные подсхемы выделяются некоторые зависимости из
F.
Например можно поступать следующим образом.
Пусть задана схема
R = (
U,
F), считаем, что все зависимости в
F в пра-
вой части содержат только один атрибут (всегда можно преобразовать
F
к такому виду). Допустим, строится декомпозиция
R
1
= (
U
1
) и
R
2
= (
U
2
),
причем
U
l
=
X
∪ {
y},
Х ⊂
U,
y ∈
U, (
Х →
у) ∈
F
+
;
U
2
=
U \ {
y}.
38
Для получения проекции
F на
U
2
достаточно найти все зависимости
вида
X
Достарыңызбен бөлісу: