BC範式

BC範式

設關係模式R∈1NF,如果對於R的每個函數依賴X→Y,若Y不屬於X,則X必含有候選碼,那麼R∈BCNF。

基本介紹


解釋一下:對於關係模式R,若 R為第一範式,且每個屬性都 不部分依賴於候選鍵也 不傳遞依賴於候選鍵,那麼稱R是BC範式。
相對於第三範式,BC範式的要求更加嚴格。第三範式只是要求R為第二範式且非鍵屬性不傳遞依賴於R的候選鍵,而BC範式則是對R的每個屬性都做要求。
在關係模式STJ(S,T,J)中,S表示學生,T表示教師,J表示課程。
每一教師只教一門課。每門課由一名教師教,某一學生選定某門課,就確定了一個固定的教師。某個學生選修某個教師的課就確定了所選課的名稱: (S,J)→T,(S,T)→J,T→J
由關係模式的定義可以得到如下結論,若R屬於BCNF,則R有:
1.所有非主屬性對每一個碼都是完全函數依賴
2.所有的主屬性對每一個不包含它的碼,也是完全函數依賴。
3.沒有任何屬性完全函數依賴於非碼的任何一組屬性。
由於R∈BCNF,按定義排除了任何屬性對碼的傳遞依賴與部分依賴,所以R∈3NF。但是若R∈3NF,則R未必屬於BCNF。