2017-09-17 122 views
0

我宣讀了一份聲明說:「如果一個關係是3NF,並且不包含任何重疊的候選鍵那絕對是屬於BCNF」BCNF和3NF財產

假設我們考慮的一個關係R(A,B,C ,d)具有以下功能依賴關係: -

AB - > CD

ç - >甲

這裏只候選鍵是AB,所得關係是3NF而不是在BCNF因爲C不是一個超級關鍵。 所以上述說法並不適用。

我要去哪裏錯了?

+3

AB不是唯一的候選關鍵字,BC也是一個 – reaanb

+0

是的,我的不好:(你可以給這個聲明的一個證據,如果可能的話?有些它對我來說看起來並不直觀 – Zephyr

+1

我們不因爲直覺原因,我們應用定義和算法 – philipxy

回答

2

你的關係有重疊的候選鍵。雖然它不出現在給定函數依賴關係的左側,但我們可以推導出BC是候選關鍵字的事實。

從C - > A開始,我們可以使用阿姆斯壯的擴充公理來確定CB - > AB,並且由於已知AB是候選密鑰,這意味着所有其他屬性都被確定。

+0

我還有一個疑問,一個非prime屬性可以獲得一個素數屬性嗎?像non-prime-> prime屬性,如果不是,那麼爲什麼? – Zephyr

+1

我認爲不是,因爲對於任何具有n個屬性A1..An和函數依賴關係B→Ax的候選關鍵字,B可以代替Ax來產生另一個候選關鍵字,同樣產生B素數 – reaanb

+1

注意,如果B在候選關鍵字A1中確定了多個屬性然後,所有確定的素數屬性將不得不被替換爲單個B,以使結果成爲候選密鑰。 – reaanb