《2022年2022年关系数据库理论 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年关系数据库理论 .pdf(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、关系数据库理论补充属性闭包例 1:设有关系模式 R(A,B,C,D,E),其上的函数依赖集:F= ABC,CD E,BD,EA 计算 B+和 CD+ B+ = BD CD+ = ABCDE 规范覆盖例:设有依赖集 F=AB C, CA, BC D,ACD B,DEG,BE C,CG BD,CE AG 计算最小等价依赖集。解:(1). 右边属性单一化F1= AB C BE CCA CG BBC D CG DACD BCE ADE CEGDG (2).去掉 F1 中的左部多余属性F2= AB C BE CCA CG BBC D CG DCD B CADE CE GDG (3). 去掉 F2 中的多
2、余的依赖Fc= AB C BEC CA CGD BCD CE G CDB DE 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 6 页 - - - - - - - - - DG 或者Fc= AB C BEC CA CGB BCD CEG DE DG 侯选码求解理论和算法(两种情况) (Fmin)对于给定的关系 R 和函数依赖集 F,可将其属性分为4 类:L 类:仅出现在 Fmin的函数依赖左部的属性;R类:仅出现在 Fmin的函数依赖右部的属性;N 类:在 Fmin中函数
3、依赖的左右两边均未出现的属性;LR 类:在 Fmin中函数依赖的左右两边均出现过的属性;定理:对于给定的关系模式R 及其函数依赖集 F,若 X 是 L 和 N 类的并集,则X 必为 R 的任一候选码的成员。算法 1:单属性依赖集图论求解法。(1).求 F 的最小依赖集 Fmin;(2).构造函数依赖图;(3).从图中找出 关键属性集 X(L、N 类属性) ;(4).查看图中有无从X 中属性到其它各属性 (U-X) 的路径,若有则输出X 即为 R的唯一候选码,转6;否则转 5;(5).从各独立回路中各取一结点对应的属性与X 组合成一候选码。重复这一过程,取尽可能所有的组合,即为R 的全部候选码。
4、(6).结束。例:设有 R=(O, B, I, S, Q, D), F=SD, DS, IB, BI, BO, OB, IO , 求 R 的所有候选码。解:(1) Fmin= SD, DS, IB, BI, BO, OB 或 Fmin= SD, DS, BI, OB, IO 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 6 页 - - - - - - - - - 或 (2)构造函数依赖图:(3).关键属性集: Q (4).共有 2 条回路,共有 2*3=6 个候选码,每
5、个候选码有1+2=3个属性。所以, R 的所有候选码为: QSI, QSB, QSO, QDI, QDB, QDO。算法 2:多属性依赖集候选码求解法。(1).求 Fmin, 将 R 的所有属性分为 L、R、N、和 LR4 类,并令 X 代表 L、N 两类,Y 代表 LR 类。(2). 求 X+,若 X+包含了 R 的全部属性, 则 X 即为 R 的惟一候选码, 转(5);否则,转(3)。(3).在 Y 中取一属性 A,求(XA)+。若它包含了 R 的全部属性,则转 (4);否则,调换一属性反复进行这一过程,直到试完所有Y 中的属性。(4).如果已找出所有候选码,则转(5);否则,在 Y 中依
6、次取两个、三个等等,求它们的属性闭包,直到其闭包包含R的全部属性。 (5).停止,输出结果。例 1:设有关系模式 R(A,B,C,D,E),其上成立的函数依赖集:F=ABC,CDE,B D,EA 求 R 的所有候选码解:Fmin =AB,AC,CDE,BD,EA O Q B I D S 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 6 页 - - - - - - - - - 无关键属性。A+= ABCDE B+=BD C+=C D+=D E+= ABCDE BC+= A
7、BCDE CD+= ABCDEBD+=BD 例 2: 设有关系模式 R,其中:U = A, B, C, D, E, P, F=A B, CP, E A, CED 求出 R 的所有候选码。解:Fmin = A B, CP, E A, CED 关键属性: CE 即候选码中至少包含CE。又因为 CE+ = ABCDEP,即 CEU, 所以 R 只有唯一候选码CE。分解的无损性判断例:设有关系模式R(U,V,W,X,Y,Z),其函数依赖集:F=UV,WZ,Y U,WYX ,现有下列分解:(1). P1=WZ, VY, WXY, UV (2). P2=UVY , WXYZ 判断上述分解是否具有无损连接性
8、。解:(1).P1的无损连接性判断结果如下,由此可以判断P1 是有损分解。RiU V W X Y Z WZ b11 b12 a3 b14 b15 a6 VY b21 a2 b23 b24 a5 b26 WXY b31 b32 a3 a4 a5 b36 UV a1 a2 b43 b44 b45 b46 RiU V W X Y Z WZ a3 a6 VY a2 a5 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 6 页 - - - - - - - - - WXY a2 a3
9、 a4 a5 a6 UV a1 a2 (2) P2的无损连接性判断结果如下,由此可以判断p2 是无损分解。RiU V W X Y Z UVY a1 a2 b13 b14 a5 b16 WXYZ b21 b22 a3 a4 a5 a6 RiU V W X Y Z UVY a1 a2 A5 WXYZ a1 a2 a3 a4 a5 a6 保持依赖判断 (函数依赖集的投影 )例:给定关系模式R(U,F),其中:U=A ,B,C,D , F=A B,BC,CD,DA 判断关系模式 R 的分解 P=(AB,BC,CD)是否能保持依赖。解:AB(F)=AB,B A BC(F)=B C,CB CD(F)=CD
10、,DC F=AB(F)BC(F)CD(F)= AB,BA, BC,CB , CD,DC 从 F中看到, F 中的 AB,BC,CD 均得以保持,又D F+=ABCD ,所以 F中的 DA 也得以保持。所以该分解是保持依赖的。分解成 3NF(Fmin)例:设有关系模式R(ABCDE) ,R 的函数依赖集:F=AD, ED, DB, BCD, CDA (1). 求 R 的候选码。(2). 将 R 分解为 3NF,要求该分解为无损连接并保持依赖。解:(1). Fmin = A D, ED, D B, BCD, CDA 关键属性为 CE, 又 CE+=ABCDE,所以 R 有唯一候选码 CE。(2).
11、对 Fmin分组,可将 R 分解为 DE ,BCD,ACD 。该分解是有损分解,因候名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 6 页 - - - - - - - - - 选码 CE 不包含在分解中,故需加入候选码。最终分解结果:=DE,BCD,ACD,CE 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 6 页 - - - - - - - - -