2014-02-19 3 views
1

Может ли любое отношение, которое находится в 2NF, превращаться в 3NF с сохранением без потерь и сохранения зависимостей?Может ли отношение 2NF быть заключено в отношение 3NF?

Edit:

Существует связь R с множеством функциональных зависимостей F. R находится в 2NF, но не в 3NF. Можем ли мы разложить отношение R на меньшее отношение, которое находится в 3NF и иметь соединение без потерь с компоновкой зависимостей? И может ли это быть сделано каждый раз?

+0

Фактически каждое отношение может быть преобразовано в состояние 3NF. –

+0

'Может ли отношение 2NF быть заключено в отношение 3NF?' Что вы хотите спросить, как конвертировать? –

+0

спросите его здесь http://cs.stackexchange.com/questions, чтобы получить ответы –

ответ

1

Вкратце: да - это можно сделать.

Более подробная информация.

Предположим, у нас есть отношение R, которое находится между x -> y. Если предположить, что R не в 2НФЕ, новые отношения P и Qсусла существует, где P: x -> z и Q: z -> y и P, Q не должен быть тривиальным. Здесь x, y, z являются соответствующими функциональными объектами (они не являются «колонны» в общем случае, они также могут быть «набором столбцов», если говорить в терминах таблиц SQL).

Предположим также, что P и Q не имеют переходных суб-отношений (как R есть) - то есть они находятся в 3NF (в противном случае, что ничего не изменится, мы будем просто идти глубже и повторить все снова, пока найдены суб- отношения, не имеющие транзитивных подзависимостей).

Итак, мы имеем:

R(x) = y, 
P(x) = z, => Q(P(x)) = y 
Q(z) = y 

Это по определению транзитивного отношения. Таким образом, R будет разделен на два отношения P и R (потому что только P и Q достаточно установить отношения x -> y, так R является излишним и может быть заменен P и Q с присоединением этих двух отношений). Наши P и Q находятся в 3NF, таким образом, у нас есть R, преобразованный в отношения 3NF. Фактически, это работа, которая должна быть выполнена при нормализации 2NF -> 3NF (т. Е. Найти и разрешить все транзитивные отношения таким образом).

Смежные вопросы