函数依赖

关系数据库理论中,函数依赖(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).