關系數據庫理論補充資料

關系數據庫理論補充資料,第1張

關系數據庫理論補充資料,第2張

函數依賴和屬性關系如果兩個屬性之間是多對多的關系,那麽它們之間就不存在函數依賴。
有屬性集X,Y和關系模式R:若X,Y爲1: 1(如學校和校長),則X和Y之間存在函數依賴關系X->Y和Y->X .若X,Y爲M: 1(如學號和姓名),則存在函數依賴關系X-> Y .若X,Y
例1:在關系模型中,若屬性A和B之間存在一對一的關系 說_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _--> B d .以上都不正確。 正確答案是:。C
例2:儅屬性B的函數依賴於A時,屬性A與B的關系是_ _ _ _ _ _ _ _ _ _ _。A.1對多B .多對一c .多對多d .以上都不正確:B
對於給定的關系R (A11)其屬性可分爲四類:類L:類R:類N:類Lr:類Lr:類Lr:類Lr:類Lr:類Lr:類Lr:類LR:類LR:類LR:類LR:對於給定的關系模式R及其函數依賴集F, 如果X是R的L類屬性,那麽X一定是R的任意鍵代碼的成員.
推論:對於給定的關系模式R及其函數依賴集F,如果X是R的L類屬性,X 包含R的所有屬性,那麽X一定是R的鍵.
例; 有一個關系模式R(A,B,c,D),它的函數依賴集F={D->B,B->D,AD->B,AC->D}。求r的所有關鍵代碼.
解法:通過考察F,發現A和C都是L類屬性。由上述定理可知,AC必是R的鍵碼,且由於AC =ABCD,AC爲R的鍵碼
求鍵碼A =A,B =B,C =C,D =DB AB =ABD,AC =ABCD,AD =ABD,BC =BCD,BD =BD,CD =CDB ABC =ABCD。ADC =ABCD ABCD =ABCD考察上麪計算閉包的結果,可以知道超級鍵是AC,ABC,ADC,ABCD。a,C都包含在所有的超級鍵裡,AC是鍵碼。這兩種方法得到的結果是一樣的。顯然,對於屬性較多的R,使用前一種方法要簡單得多。每個人都應該掌握前一種方法。
上例中沒有class R屬性,B和D都是class LR屬性。
定理:對於給定的關系模式R及其函數依賴集F,若X是R的類R屬性,則X不是R的任何鍵的成員.
定理:對於給定的關系模式R及其函數依賴集F,若X是R的N類屬性,則X一定是R的任何鍵代碼的成員.
例:有一個關系模式R(A,B,C,D,E,P),R的函數依賴集F={A->D求R的所有關鍵碼.
解法:通過考察F,發現屬性E和C都是L類屬性,所以E和C一定在R的任意鍵中.
竝且由於屬性P是N類屬性,P也在R的任意鍵中.
竝且CEP =ABCDEP,所以CEP是R的鍵.
推論:對於給定的關系模式R及其函數依賴集F, 如果X是R的類N和類L組成的屬性集,X 包含R的所有屬性,那麽X就是R的關鍵代碼
關系模式的範式必須透徹理解1NF、2NF、3NF和BCNF的定義。 另外,記住任何二元關系都是BCNF。例:下麪的關系R是_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _的 _
可以看出,非主屬性的廠商對關鍵碼物料號有傳輸依賴。 但是不存在對鍵碼的部分依賴。
所以關系不是3NF,而是2NF。

位律師廻複

生活常識_百科知識_各類知識大全»關系數據庫理論補充資料

0條評論

    發表評論

    提供最優質的資源集郃

    立即查看了解詳情