天天看點

函數依賴

函數依賴是指關系中屬性間(或者說是表中字段間)的對應關系。

定義:設 R 為任一給定關系,如果對于 R 中屬性 X 的每一個值,R 中的屬性 Y 隻有唯一值與之對應,則稱 X 函數決定 Y 或稱 Y 函數依賴于 X ,記作 X—>Y。其中,X 稱為決定因素。

通俗一點,就是給定一個 X 都有唯一的 Y。可以了解為函數 y = f(x); 對于任意的 x 都有唯一的 y ,且 y 的取值由 x 決定。

例如:學生号—>學生姓名,學生年齡等等有關該學生的所有資訊

反之,像學生姓名不能決定唯一的學生,因為存在同名的可能,這種情況就不能稱作函數依賴。

根據函數依賴性質可分為以下三種:

  • 完全函數依賴
    • 書上定義的意思基本是:如果存在 X 屬性集(注意是集合,說明是聯合主鍵)決定 唯一的 Y ,且 X 中的任一子集都不能決定 唯一的 Y,則 Y 完全依賴于 X。
    • 例如:學生數學成績完全由該學生的學号和數學課決定,是以數學課成績完全依賴于(學号,數學課)
  • 部分函數依賴
    • 定義和完全函數依賴有一點不一樣,就是 X 的屬性集中任一子集可以決定唯一的 Y
    • 例如:學生學号和姓名可以決定唯一的學生,但是學生号也可以決定唯一的學生
  • 傳遞函數依賴
    • 定義:設 R 為任一給定關系, X Y Z 為其不同的屬性子集,若 X —> Y, Y 不決定 X 且 Y —>Z,則有 X —>Z,稱為 Z 傳遞函數依賴于 X
    • 例如:書的出版編号是唯一,版權歸出版社所有,是以隻能由該出版社出版。是以存在函數依賴:書出版編号—>出版社名,出版社名—>出版社位址,但是出版社名不能決定唯一的出版書編号(除非出版社隻出版過一本書,那我沒話說?),則有出版社位址傳遞函數依賴于出版書編号

了解好函數依賴,對于了解關系資料庫的三範式起到關鍵作用。

  • 參考
    • 《資料結構系統原理》(黃靖 主編)

繼續閱讀