Нормализация 3NF и BCNF
Если у меня есть следующее отношение R = (A, B, C, D)
И функциональные зависимости:
- A -> B, B -> A, CDB -> A, CDA -> B
Ключами-кандидатами являются CDA и CDB.
Третья нормальная форма говорит о том, что между непростыми атрибутами не может быть функциональной зависимости. Непростой атрибут - это атрибут, который не встречается ни в одном из ключей-кандидатов. Тогда это означает, что это отношение уже равно 3NF, так как A и B, которые зависят друг от друга, являются частью одного из ключей-кандидатов, я прав?
Если так, у меня есть другой вопрос о BCNF. BCNF говорит, что каждый определитель должен быть ключом-кандидатом. В этом случае A и B не являются ключами-кандидатами, что нарушает BCNF, или я что-то здесь упускаю?
Благодарю.
1 ответ
Если предполагается, что три указанных вами FD являются каноническим покрытием FD, удовлетворяемых R, то вы вправе сделать вывод, что CDA и CDB должны быть ключами-кандидатами. (Вы не утверждали, что FD являются каноническими, и если нет, то есть другие способы удовлетворить те же зависимости, но я предполагаю, что цель вопроса заключается в том, что ключи-кандидаты должны выводиться только из того, что вам дано.)
Если CDA и CDB фактически являются ключами-кандидатами R, то вы правы, что R удовлетворяет 3NF, но не BCNF.