2017-12-03 123 views
-1

R(A B C)轉換關係到BCNF

AB - > C, Ç - >甲

AB是最小超鍵這是一個候選鍵。 AB - > C很好。 但由於素數屬性取決於Non Prime屬性,因此C - > A不成立。 我知道如何分解,直到3 NF。我也知道爲什麼關係不在BCNF中。 但我不知道如何將這種關係分解爲BCNF。

任何人都可以把這個關係分解成BCNF。

+0

嗨。請編輯您的問題,以提供您正在使用的參考文獻,以及它給出的BCNF *的定義和它分解給BCNF *的算法。注意那些需要知道*所有* CK。因此,顯示所有的CK是什麼。然後按照算法,直到你卡住,然後問一個問題。你只是要求我們重寫你的教科書。 PK是無關緊要的。你爲什麼提到他們? 「保持良好」也意味着什麼。使用你所教的技術術語。 PS定義和分解的例子不是演示的算法;算法的演示。 – philipxy

回答

0

這種關係可以BCNF使用實例的分析算法,產生以下分解分解:

R1(A, C) (with non trivial dependency C → A and candidate key C) 
R2(B, C) (without non trivial dependencies and so with candidate key (B, C)) 

但這種分解不保留相關性:事實上,依賴A B → C丟失。因此,通過這種分解,由於這種依賴性的約束不能簡單地在分解的關係上執行。並且不能產生BCNF中的其他分解,從而維持依賴關係。我們還可以注意到這種關係已經在3NF中。

+0

「不好」是一個意見問題。 3NF設計受到更新異常的影響,並且與BCNF需要執行EQD相比,具有更復雜的謂詞/含義。 – philipxy

+0

謝謝,@philipxy,我刪除了「不好」的形容詞。 – Renzo