
闭包是从一个属性直接或间接派生的所有属性的集合,例如: f a- b,b- c,a- d,e- f从a可以直接获得b和d,并且间接得到c,则a的闭包是a,b,c,d. 令X和Y是关系R的属性集的子集. F是R上的函数依赖集. 如果R的任何属性集B,则X→B时,必定存在B,并且对于R的任何属性集Y1如果满足上述条件,则必须有Y. 这时,Y被称为函数依赖集F下的属性集X的闭包,并记录为X +. 关闭R的属性集X的步骤如下: Y,将Y初始化为X; F中的每个函数都取决于A→B,如果属性集A中的所有属性都在Y中,而B中的某些属性不在Y中,则将其添加到Y中;直到Y. 最后一个Y是X +. 1.假设关系R A,B,C,D,E和G具有函数依赖集FAB→C,BC→AD,D→E,CG→B,并找到AB的闭包. 从AB开始,让XA,B. 由于该函数取决于AB→C,所以左侧的所有属性都在X中,因此您可以在X的右侧将C添加到X,此时是XA,B,C. BC→左边的AD,B和C在X中,右边的D在X中,不在X中添加X,这时将XA,B,C,D. D→E. 类似地,可以将E添加到X ,此时为XA,B,C,D,E. 向X添加属性,因此获得A,B + A,B,C,D,E.

从函数F集合F逻辑上隐含X→Y,步骤如下: X的闭包X是否包含在X +中;如果为Y +,则表示F逻辑蕴涵函数取决于X→Y;否则,F将不依赖于逻辑蕴涵函数. X = Y . : 在示例1中,属性D是在A,B +中获得的,因此F的逻辑意味着AB→D. D→A是否在逻辑上隐含函数依赖集F. D +,得到D + D关系 闭包是什么意思,E. 由于A不在D +中,所以在给定的函数依赖集F中不隐含函数依赖. 关闭和候选代码解决方法关闭概念以下是一种更科学和标准化的闭包解决方案方法,令X和Y是关系R的属性集的子集,F是函数依赖于R的集合R的任何属性集B,一旦XB,必须具有BY,并且对于任何满足上述条件的R的属性集Y1必须存在YY1,这时Y被称为函数依赖集F下的属性集X的闭包,记录为X +. 计算关系R的属性集X的闭包的步骤如下: 步骤1: 将最终成为闭包的属性集设置为Y,并将Y初始化为X;步骤2: 检查F中的每个函数都取决于AB,如果属性集A中的所有属性都在Y中,而B中的某些属性不在Y中,则将它们添加到Y;步骤3: 重复第二步,直到无法将任何属性添加到属性集Y. 最终的Y是X +示例(1): 使用关系模型RU,F(其中UA,B,C,D,E,I关系 闭包是什么意思,F AD,ABE,BIE,CDI,EC),计算AE +解: 1令X AE和X 0 AE 2找出左侧F中未使用的AE子集的功能依赖性. 结果是: AD,EC;因此,X 1 X 0 DC ACDE,显然是X 1≠X0. 3查找在F中未使用的左侧ACDE子集的功能依赖性. 所以X 2 X 1 I ACDEI.

尽管X(2)≠X 1,但F在左侧寻找X(2)的子集,该子集尚未用于函数依赖关系,因此无需再次计算它,即AE + ACDEI. 简而言之: 闭包是从一个属性直接或间接派生的所有属性的集合. 例如: f a- b,b- c,a- d,e- f; b和d可以直接从a和c间接获得,然后a的关闭是a,b,c,d候选代码的求解理论和给定关系R(A1,A2,... An)的算法和功能依赖集F,可以分为四类属性: L类?仅出现在功能依赖项属性的左侧. R级?仅出现在函数依赖项的右侧. N型?没有出现在函数依赖项左右两侧的属性. LR班?属性出现在函数依赖项的左侧和右侧. 定理: 对于给定的关系模式R及其功能依赖集F,如果X(XR)是L型属性,则X必须是R的任何候选代码的成员. 推论: 对于给定的关系模式R及其函数如果X(XR)是L型属性并且X +包含R的所有属性,则为函数依赖集F;则X必须是R的唯一候选代码. 示例(2): 有一个关系模式R(A,B,C,D),其功能取决于所设置的F DB,BD,AD B,AC D,查找解决方案: 检查F会发现A和C这两个属性是L型属性,因此AC必须是R的候选代码成员,并且由于(AC)+ ABCD,AC是R的唯一候选代码. R.定理: 对于给定的关系模式R及其功能依赖集F,如果X(XR)是R型属性,则X不在任何候选代码中. 定理: 对于给定的关系模式R及其功能依赖集F,如果X(XR)是N型属性,则X必须包含在R的任何候选代码中. 推论: 对于给定的关系模型R及其功能如果X(XR)是由L和N个类组成的属性集,并且X +包含R的所有属性,则依赖集F. 那么X是R的唯一候选代码.
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-170635-1.html
我也是5s还在纠结要不要更新
没有酒味也不像饮料
赔不起啊