发布网友 发布时间:2022-04-19 22:48
共1个回答
热心网友 时间:2023-06-01 06:09
∵(BE)+=ABCDE,,B+=BC不属于ABCDE,E+=E不属于ABCDE。
∴BE为R的关键字。
考虑A→C,不包含关键字。
∴将R分解为R11(AC)R12(ABDE)F11的函数依赖为{A→C},F12的函数依赖为(AD)。
∵F11∈BCNF,F12不属于BCNF,继续分解。
将的R12分解为R21(AD),R22(ABE)。
F21的函数依赖为{A→D},F22的函数依赖为{BE→A}。
∵R21∈BCNF,R22∈BCNF。
∴R的一组BCNF模式分解为R11(AC),R21(AD),R22(ABE)。
注:分解的结果可能不唯一。
扩展资料:
推导:
设R(U)是一个属性集U上的关系模式,X和Y是U的子集。
若对于R(U)的任意两个可能的关系r1、r2,若r1[x]=r2[x],则r1[y]=r2[y],或者若r1[y]不等于r2[y],则r1[x]不等于r2[x],称X决定Y,或者Y依赖X。
上面一段话是某些教材上的话,比较不好理解。比如在设计学生表时,一个学生的学号能决定学生的姓名,也可称姓名属性依赖于学号,对于现实来说,就是如果知道一个学生的学号,就一定能知道学生的姓名。
这种情况就是姓名依赖于学号,这就是函数依赖,函数依赖又分为非平凡依赖,平凡依赖;从性质上还可以分为完全函数依赖、部分函数依赖和传递函数依赖。
Y=f(x)
1、数据依赖
在计算机科学中,数据依赖是指一种状态,当程序结构导致数据引用之前处理过的数据时的状态。其中最重要的是函数依赖和多值依赖。
2、函数依赖
设X,Y是关系R的两个属性集合,当任何时刻R中的任意两个元组中的X属性值相同时,则它们的Y属性值也相同,则称X函数决定Y,或Y函数依赖于X。
3、平凡函数依赖
当关系中属性集合Y是属性集合X的子集时(Y⊆X),存在函数依赖X→Y,即一组属性函数决定它的所有子集,这种函数依赖称为平凡函数依赖。
参考资料来源:百度百科--函数依赖
参考资料来源:百度百科--无损分解