複製鏈接
請複製以下鏈接發送給好友

多值依賴

鎖定
多值依賴屬4nf的定義範圍,比函數依賴要複雜得多。在關係模式中,函數依賴不能表示屬性值之間的一對多聯繫,這些屬性之間有些雖然沒有直接關係,但存在間接的關係,把沒有直接聯繫、但有間接的聯繫稱為多值依賴的數據依賴
函數依賴中,X與Y是否存在函數依賴關係,只需考察X,Y的兩組屬性,與別的屬性無關。而在多值依賴中,X與Y是否存在多值依賴還需看屬性Z。 [1] 
中文名
多值依賴
外文名
Multivalued Dependency
產生背景
屬4nf的定義範圍
性    質
3
特    點
2
簡    稱
MVD

多值依賴數學定義

設R(U)是屬性集U上的一個關係模式。X,Y,Z是U的子集,並且Z=U-X-Y。關係模式R(U)中多值依賴X→→Y成立,當且僅當對R(U)的任一關係r,給定的一對(x,z)值有一組Y的值,這組值僅僅決定於x值而與z值無關。
平凡的多值依賴與非平凡的多值依賴:
若X→→Y,而Z為空集,則稱X→→Y為平凡的多值依賴;若Z不為空,則稱其為非平凡的多值依賴。

多值依賴性質

(1)對稱性:使用上述定義的符號,若X→→Y,則X→→Z .
(2)實例r的X或Z每增刪一個值,r就須同步增刪多條記錄。
(3)若X→Y,則X→→Y。故可把函數依賴看成多值依賴的特殊情況。

多值依賴舉例

有這樣一個關係 <倉庫管理員,倉庫號,庫存產品號> ,假設一個產品只能放到一個倉庫中,但是一個倉庫可以有若干管理員,那麼對應於一個 <倉庫管理員,庫存產品號>有一個倉庫號,而實際上,這個倉庫號只與庫存產品號有關,與管理員無關,就説這是多值依賴。

多值依賴特點介紹

(1)允許X的一個值決定Y的一組值,這種決定關係與Z取值無關。
(2)多值依賴是全模式的依賴關係。
多值依賴的缺點是:數據冗餘太大

多值依賴關係模式分解

為降低數據冗餘,作模式分解,使子模式的Z=Ø,僅有平凡多值依賴。對前例,子模式為R1(倉庫,僱員),R2(倉庫,物資)
參考資料
  • 1.    尹為民.數據庫原理與技術:科學出版社,2010年1月第二版:115-116