函數依賴

關係數據庫理論中,函數依賴(functional dependency)是數據庫的關係的兩個屬性集合之間的一種約束。給定關係RR上的屬性集X函數確定(functionally determine)R上的另一個屬性集Y,(記作 XY),當且僅當R上的每一個X值精確地關聯R上的一個Y值;因而R被說成滿足函數依賴XY。等價的說,投影 是一個函數,即YX的函數。[1][2]簡單說,如果屬性集X的值是已知的(記作x),那麼屬性集Y的對應於x的值可以查表(R中任何包含x的元組)確定。一個函數依賴FD: XY是平凡的,如果YX的子集。

函數依賴在數據庫設計中的重要用途是海斯定理(Heath's theorem):屬性集U上的關係R滿足函數依賴XY,那麼可以無損分解為兩個關係: 其中Z = UXY是剩餘的屬性。

函數依賴的邏輯蘊涵被定義為:函數依賴的集合邏輯蘊涵另一個函數依賴集合,如果任何關係R滿足中的所有依賴也滿足中的所有依賴;記作。函數依賴的邏輯蘊涵擁有可靠完備的有限公理系統,稱作阿姆斯特朗公理系統(Armstrong's axioms)。

參見

參考文獻

  1. ^ Terry Halpin. Information Modeling and Relational Databases 2nd. Morgan Kaufmann. 2008: 140 [2019-09-04]. ISBN 978-0-12-373568-3. (原始內容存檔於2013-12-14). 
  2. ^ Chris Date. Database Design and Relational Theory: Normal Forms and All That Jazz. O'Reilly Media, Inc. 2012: 21 [2019-09-04]. ISBN 978-1-4493-2801-6. (原始內容存檔於2013-12-12).