第九章第二次课总结
1.函数依赖集的闭包
所有被F逻辑蕴含的函数依赖的全集称为F的闭包,记作F+。
2.属性集闭包
先确定每一组会在函数依赖左边的属性组X,再确定所有依赖于X的属性组X+,X+称为X在F下的闭包。
判定函数依赖X→Y是否能由F导出的问题,可转换为求X+并判定Y是否是X+子集问题。
步骤:1.初始,X+=X;2.若Y→Z满足Y包含于X+,则X+=X+∪Z;3.重复步骤2,直到X+不再扩大。(若X+包含所有属性,则X+为候选键)。
3.候选键的求解方法
将关系模式R的属性分为如下四类:
(1)L类:仅出现在函数依赖的左边的属性。
(2)R类:仅出现在函数依赖的右边的属性(非主属性)。
(3)N类:函数依赖左右边均不出现。
(4)LR类:函数依赖左右边均出现。
结论:
(1)L类的X属性一定包含在关系模式R的任意一个候选键中,若X+包含全部属性,则X为关系模式R的唯一候选键。
(2)R类的X属性不包含在任意一个候选键之中。
(3)N类的X属性一定包含在任意一个候选键中( U={X,Y,Z,W},(XW)+=U )。
(4)LR类的X属性可能包含在某个候选键之中。
判断候选键的步骤:
1.寻找L、N类的X属性;2.判断(L,N)+是否等于U;3.是,则为候选键,否则寻找LR类的X属性;4.判断(L,N,LR)+是否等于U;5.确定候选键。