考虑关系模式
R = ABCDG
以及功能依赖(FD)AB -> C C -> A BC -> D ACD -> D D -> EG BE -> C CG -> BD CE -> AG
计算
BD
和CA
的关闭。
我们如何找到它们?
答案 0 :(得分:2)
一组功能依赖项 F 的闭包,意味着 F 逻辑上隐含的所有功能依赖项。例如,给定
BC -> D
和D -> EG
我们可以应用Armstrong's axioms来推导
D -> E
,D -> G
,BC -> E
,BC -> G
,等等。
当您导出 F 隐含的每个FD时,您对
据我所知,关于关系数据库理论的每本教科书都包含一个或多个算法来计算一组函数依赖关系。您最好的选择是遵循教科书中的一种算法(如果有的话)。
答案 1 :(得分:0)
这是一种简单的算法,用于计算一组属性X的闭合:
Closure(X, F) 1 INITIALIZE V:= X 2 WHILE there is a Y -> Z in F such that: - Y is contained in V and - Z is not contained in V 3 DO add Z to V 4 RETURN V