数据库系统概论17模式分解的等价标准
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如果对于R的任一满足F的关系r都有 r=∏R1(r) ∏R2(r) … ∏Rk(r)
则称这个分解ρ是满足依赖集F的无损连接。
(2)验证无损连接的充要条件 如果R的分解为ρ={R1,R2},F为R所满足的函数依赖集合,则分解
ρ具有无损连接性的充分必要条件为
R1∩R2→(R1-R2)∈F+ 或R1∩R2→(R2-R1)∈F+
例:对给定的关系模式R(U,F),U={C,T,H,R,S,G},F={CS→G, C→T,TH→R,HR→C, HS→R},将其无损连接性和 依赖保持性分解为3NF。 解:求出F的最小依赖集,Fm= {CS→G,C→T,TH→R, HR→C, HS→R} (1)不满足条件 (2)不满足条件 (3)R1=CSG,R2=CT,R3=THR,R4=HRC,R5=HSR
b23 b24 b25
BE
AE
b31 a2
a1
b33 b34 a5 a4 a5
CDE b41 b42 a3
b52 b53 b54 a5
表1-1 (2)根据A→C,对上表进行处理,由于属性列A上的第1,2,5行是 相同的符号a1,而C列的1,2,5行没有a1,所以将C列的b13、 b23、 b53改为相同的符号b13。又根据B→C将C列的b13、b33 改为同一符号b13,修改后的表如表1-2所示。
Ri AD AB BE
A a1 a1
B a2
C
D
E b15
Ri
AD AB BE AE
A
a1 a1
B
a2
C
D
E
b15 b25 a5 a5 a5
b12 b13 a4
b12 b13 a4 b13 a4 b13 a4 a4
b13 b24 b25 b13 b34 a5 a4 a5
b31 a2
b31 a2 a1
做自然连接
Sno dean S1 罗 ∈3NF S2 何 S3 何
sno S1
S2 S3
sdept D1
D2 D2
dean 罗
何 何
D1的系主任是谁呢? 何是哪个系的系主任呢? 分解后可以恢复原关系,但数据冗余问题没有得到解决,问 题是丢失了函数依赖sdept→dean。
关系模式S(Sno,sdept,dean), F={Sno→sdept,sdept→dean} 第三种分解:
第17讲 授课主题 第6章 关系数据理论—关系模 式分解的等价标准
计划学 时
2
教学目的 和要求
教学重点 和难点
1、掌握关系模式分解的两个等价标准的算法 2、理解分解为3NF和BCNF的两个算法
关系模式分解的两个等价标准的算法 1、关系模式分解的等价标准 2、无损连接的定义和性质 3、分解具有保持函数依赖 4、模式分解的算法 见课件
CDE a1
b42 a3 b52 a3
表1-4
表1-5
(5)根据CE→A,将属性列A上的第3、4行改为a1,修改后如表 1-5所示。 (6)通过上述更改,使得第3行为a1,a2,a3,a4,a5,算法终 止,且ρ具有无损连接性。
课堂练习:对给定的关系模式R(U,F),U={U,V,W,X,Y,Z}, F={U→V,W→Z,Y→U,WY→X},现如下的分解:
(4) ρ={CSG,CT,THR,HRC,HSR}
(5)判断其无损联接性如下表所示,由此可知ρ具有无损连接性。
Ri C CSG a1 CT a1 THR a1 HRC a1
T a2 a2 a2 a2
H b13 b23 a3 a3
R b14 b24 a4 a4
S a5 b25 b35 b45
G a6 b26 b36 b46
三种分解方案(模式分解不唯一)
例:关系模式S(Sno,sdept,dean) 。 Sno s1 s2 s3 Sdept D1 D2 D2 dean F={Sno→sdept,sdept→dean}
sno sdept dean s1 s1 s1 s1 d1 d1 d2 d2 罗 何 罗 何
罗 何 何
(1)ρ1={WZ,VY,WXY,UV} (2)ρ2={UVY,WXYZ} 判断上述分解是否具有无损连接性。
结果: ρ1不具有无损连接性
ห้องสมุดไป่ตู้
ρ2具有无损连接性
6.4.3 分解保持函数依赖
定义:设有关系模式R,F是R的函数依赖集,Z是R的一个属性 集合,则称Z所涉及到的F+中所有函数依赖为F在Z上的投影, 记为∏Z(F),有 ∏Z(F)={X→Y| X→Y∈F+且XYZ}
HSR a1
(6)不执行
a2
a3
a4
a5
a6
(7)输出 ρ={CSG,CT,THR,HRC,HSR}
算法2:把关系模式无损分解成BCNF(但没要求保持函数依赖) 输入:关系模式R和函数依赖集F 输出:R的一个无损分解ρ={R1,R2,…,Rk}。
前例:现有关系模式R(A,B,C),其上的函数依赖集F={A→B, C→B},判断ρ 1={AB,AC}, ρ 2={AB,BC}是否保持函数 依赖。 第一种分解 ∏AB(F)={A→B} ∏AC(F)=φ ∏AB(F)∪∏AC(F)={A→B}≠F 所以没有保持函数依赖 第二种分解 ∏AB(F)={A→B}
②逐个检查F中的每一个函数依赖,并修改表中的元素。其方式如下: 取F中一个函数依赖X→Y,在X的分量中寻找相同的行,然后将这些 行中Y的分量改为相同的符号,如果其中有aj,则将bij改为aj;若无aj, 则改为bij(i是这些行的行号最小值)。 ③这样反复进行,如果发现某一行变成了a1,a2,…,ak,则分解ρ具 有无损连接性;如果F中所有函数依赖都不能再修改表中的内容,且 没有发现这样的行,则分解ρ不具有无损连接性。
(3)无损连接的测试方法------表格法(算法6.2,P189) 算法:检验无损连接性。 输入:关系模式R(A1,A2,…,An),它的函数依赖集F以及分解ρ={R1, R2,…,Rk}。 输出:确定ρ是否具有无损连接性。 方法:
①构造一个k行n列的表,第i行对应于关系模式Ri,第j列对应于属性 Aj。如果Aj∈Ri,则在第i行第j列上放符号aj,否则放符号bij。
教学内容
教学过程
1NF 2NF
消除非主属性对码的部分函数依赖 消除非主属性对码的传递函数依赖 消除函数依赖的决定因素是非码
3NF
BCNF
关系模式的规范化,是通过对关系模式的分解实现的。 分解的实质: “一事一表”,让一个关系只描述一个实体或联系,使关系单 一化,以利于处理简单化。
6.4 关系模式的分解
∏BC(F)={B→C}
∏AB(F)∪∏BC(F)=F 所以保持函数依赖
说明: (1)分解具有无损连接性和分解保持函数依赖是两个互相独立的标准。 它们两者之间是没有联系的。具有无损连接性的分解不一定保持函数 依赖,保持函数依赖的不一定具有无损连接性。例如上一例题的二种 分解,一种具有无损连接性但没有保持函数依赖,另一种不具有无损 连接性但保持了函数依赖。 因此,关系模式的一个分解可能是保持函数依赖的,可能是具有 无损连接的,也可能是既具有无损连接性又保持函数依赖的。 (2)若要求分解既具有无损连接性,又保持函数依赖,则模式分解可以 达到3NF,但不一定能达到BCNF。
定义:设有关系模式R的一个分解ρ={R1,R2,…,Rk},F是R的 依赖集,如果F等价于∏R1(F) ∪∏R2(F)∪…∪ ∏Rk(F),则称分 解ρ具有依赖保持性。
例:对给定的关系模式R(U,F),U={A,B,C,D},F={A→B, B→C,C→D,D→A},判断关系模式R的分解ρ={AB,
做自然连接
Sno sdept S1 d1 Sdept dean d1 罗 ∈3NF S2 d2 d2 何 S3 d2
sno sdept S1 S2 S3 D1 D2 D2
dean 罗 何 何
问题得到了彻底解决,即不丢失信息,也减少了冗余。
6.4.1 模式分解的等价标准
上面例子中,每种分解方案得到的两个关系模式都属于 3NF(实际上,也属于BCNF)。如何比较这三种分解方案的优 劣呢?将一个关系模式分解为多个关系模式时,除了提高规 范化程度外还需要什么别的考虑吗?
规范化过程就是把一个关系模式分解为若干个关系模式, 而且这种分解应该是可逆的。所谓可逆,是要求模式的分解是 没有信息丢失,并保证分解后产生的关系模式集合和原来的关 系模式等价。
如何对关系模式进行分解才能保证没有信息丢失呢?
对于同一个关系模式可能有多种分解方案。下面的例子 给出三种分解方案,如何判断哪种分解方案更好呢?
常用的关系模式分解的等价标准有:
分解是具有无损连接性的;
分解是保持函数依赖的;
分解既要具有无损连接又要保持函数依赖两种。
6.4.2 无损连接的定义和性质
(1)无损连接的定义
指的是对关系模式分解时,原关系模式下任一合法的关系 实例在分解之后应能通过自然连接运算恢复起来。
定义:设ρ={R1,R2,……,Rk}是关系模式R<U,F>的一个分解,
Ri AD AB
A a1 a1
B a2
C
D
E b15 b25
Ri AD AB
A a1 a1
B a2
C
D
E b15 b25
b12 b13 a4 b13 a4
b12 b13 a4 b13 a4
BE
AE
b31 a2
a1
a3
a4
a4 a4
a5
a5 a5
BE
AE
a1
a1
a2
a3
a4
a4 a4
a5
a5 a5
CDE b41 b42 a3 b52 a3
6.4.3 模式分解的算法
算法1、把一个关系模式分解为3NF,使它具有无损连接性又具有依 赖保持性。
输入:关系模式R和R的最小依赖集Fm 输出:R的一个分解ρ={R1,R2,…,Rk},Ri为3NF(i=1,…,k), ρ具有无损联接性和依赖保持性。 方法: (1)如果Fm中只有一依赖X→A,且XA=R,则输出ρ=(R),则转(4)。
做连接
第一种分解: Sno S1 S2 S3
…………
Sdept dean d1 罗 ∈3NF d2 何
S1是哪个系的学生? 何是哪个系的系主任呢?
D1的系主任是谁呢? 联接后问题没有得到解决,原因是没 有保持函数依赖。
关系模式S(Sno,sdept,dean), F={Sno→sdept,sdept→dean} 第二种分解: Sno sdept S1 d1 S2 d2 S3 d2
例:现有关系模式R(A,B,C),函数依赖集F={A→B,C→B},判 断ρ1={AB,AC}, ρ2={AB,BC}是否具有无损连接性。 解: AB∩AC=A
AB-AC=B
解: AB∩BC=B
AB-BC=A
A→B∈F+
所以:ρ1具有无损连接性。
BC-AB=C
B→A或B→C∈F+ 所以:ρ2不具有无损连接性。
BC,CD}是否具有函数依赖保持性。
解: ∏AB(F)={A→B,B→A} ∏BC(F)={B→C,C→B}
∏CD(F)={C→D,D→C}
∏AB(F)∪∏BC(F) ∪∏CD(F)={A→B,B→A,B→C,C→B, C→D,D→C}
从中可以看到, A→B,B→C,C→D均得以保持。
又因为D+=ABCD,A D+,所以D→A也得以保持。 所以该分解具有依赖保持性。
CDE b41 b42 a3
CDE b41 b42 a3
AE
a1
b52 b13 b54 a5
b52 b13 a4
表1-2
表1-3
(3)根据C→D,对上表进行处理,由于属性列C上的第1,2,3,5是 相同的符号b13,而D列的1,2,3,5行中有a4,所以将D列的b24、 b34、 b54改为相同的符号a4,修改后的表如表1-3所示。 (4)根据DE→C,对上表进行处理,由于属性列DE上的第3,4,5 是相同的符号a4a5,而C列的3,4,5行中有a3,所以将C列的3、 5行改为a3,修改后的表如表1-4所示。
(2)如果R中某些属性与F中所有依赖的左边和右边都无关(N类属 性),则将它们构成关系模式,R中将它们分出去。
(3)对于Fm中的每一个Xi→Ai,都构成一个关系子模式Ri=XiAi。 (4)停止分解, ρ={R1,R2,…,Rk} (5)判定ρ是否具有无损连接性,若是,转(7),若不是,转(6) (6)令ρ= ρ∪{X},其中X是R的候选码。 (7)输出ρ。
例:对给定的关系模式R(U,F),U={A,B,C,D,E},F={A→C, B→C,C→D,DE→C,CE→A},有如下的分解: ρ={AD,AB,
BE,CDE,AE},判断分解ρ是否无损。
解: (1)构造一个初始的二维表,如下表1-1所示。
Ri AD AB A a1 a1 B a2 C D E b15 b12 b13 a4
则称这个分解ρ是满足依赖集F的无损连接。
(2)验证无损连接的充要条件 如果R的分解为ρ={R1,R2},F为R所满足的函数依赖集合,则分解
ρ具有无损连接性的充分必要条件为
R1∩R2→(R1-R2)∈F+ 或R1∩R2→(R2-R1)∈F+
例:对给定的关系模式R(U,F),U={C,T,H,R,S,G},F={CS→G, C→T,TH→R,HR→C, HS→R},将其无损连接性和 依赖保持性分解为3NF。 解:求出F的最小依赖集,Fm= {CS→G,C→T,TH→R, HR→C, HS→R} (1)不满足条件 (2)不满足条件 (3)R1=CSG,R2=CT,R3=THR,R4=HRC,R5=HSR
b23 b24 b25
BE
AE
b31 a2
a1
b33 b34 a5 a4 a5
CDE b41 b42 a3
b52 b53 b54 a5
表1-1 (2)根据A→C,对上表进行处理,由于属性列A上的第1,2,5行是 相同的符号a1,而C列的1,2,5行没有a1,所以将C列的b13、 b23、 b53改为相同的符号b13。又根据B→C将C列的b13、b33 改为同一符号b13,修改后的表如表1-2所示。
Ri AD AB BE
A a1 a1
B a2
C
D
E b15
Ri
AD AB BE AE
A
a1 a1
B
a2
C
D
E
b15 b25 a5 a5 a5
b12 b13 a4
b12 b13 a4 b13 a4 b13 a4 a4
b13 b24 b25 b13 b34 a5 a4 a5
b31 a2
b31 a2 a1
做自然连接
Sno dean S1 罗 ∈3NF S2 何 S3 何
sno S1
S2 S3
sdept D1
D2 D2
dean 罗
何 何
D1的系主任是谁呢? 何是哪个系的系主任呢? 分解后可以恢复原关系,但数据冗余问题没有得到解决,问 题是丢失了函数依赖sdept→dean。
关系模式S(Sno,sdept,dean), F={Sno→sdept,sdept→dean} 第三种分解:
第17讲 授课主题 第6章 关系数据理论—关系模 式分解的等价标准
计划学 时
2
教学目的 和要求
教学重点 和难点
1、掌握关系模式分解的两个等价标准的算法 2、理解分解为3NF和BCNF的两个算法
关系模式分解的两个等价标准的算法 1、关系模式分解的等价标准 2、无损连接的定义和性质 3、分解具有保持函数依赖 4、模式分解的算法 见课件
CDE a1
b42 a3 b52 a3
表1-4
表1-5
(5)根据CE→A,将属性列A上的第3、4行改为a1,修改后如表 1-5所示。 (6)通过上述更改,使得第3行为a1,a2,a3,a4,a5,算法终 止,且ρ具有无损连接性。
课堂练习:对给定的关系模式R(U,F),U={U,V,W,X,Y,Z}, F={U→V,W→Z,Y→U,WY→X},现如下的分解:
(4) ρ={CSG,CT,THR,HRC,HSR}
(5)判断其无损联接性如下表所示,由此可知ρ具有无损连接性。
Ri C CSG a1 CT a1 THR a1 HRC a1
T a2 a2 a2 a2
H b13 b23 a3 a3
R b14 b24 a4 a4
S a5 b25 b35 b45
G a6 b26 b36 b46
三种分解方案(模式分解不唯一)
例:关系模式S(Sno,sdept,dean) 。 Sno s1 s2 s3 Sdept D1 D2 D2 dean F={Sno→sdept,sdept→dean}
sno sdept dean s1 s1 s1 s1 d1 d1 d2 d2 罗 何 罗 何
罗 何 何
(1)ρ1={WZ,VY,WXY,UV} (2)ρ2={UVY,WXYZ} 判断上述分解是否具有无损连接性。
结果: ρ1不具有无损连接性
ห้องสมุดไป่ตู้
ρ2具有无损连接性
6.4.3 分解保持函数依赖
定义:设有关系模式R,F是R的函数依赖集,Z是R的一个属性 集合,则称Z所涉及到的F+中所有函数依赖为F在Z上的投影, 记为∏Z(F),有 ∏Z(F)={X→Y| X→Y∈F+且XYZ}
HSR a1
(6)不执行
a2
a3
a4
a5
a6
(7)输出 ρ={CSG,CT,THR,HRC,HSR}
算法2:把关系模式无损分解成BCNF(但没要求保持函数依赖) 输入:关系模式R和函数依赖集F 输出:R的一个无损分解ρ={R1,R2,…,Rk}。
前例:现有关系模式R(A,B,C),其上的函数依赖集F={A→B, C→B},判断ρ 1={AB,AC}, ρ 2={AB,BC}是否保持函数 依赖。 第一种分解 ∏AB(F)={A→B} ∏AC(F)=φ ∏AB(F)∪∏AC(F)={A→B}≠F 所以没有保持函数依赖 第二种分解 ∏AB(F)={A→B}
②逐个检查F中的每一个函数依赖,并修改表中的元素。其方式如下: 取F中一个函数依赖X→Y,在X的分量中寻找相同的行,然后将这些 行中Y的分量改为相同的符号,如果其中有aj,则将bij改为aj;若无aj, 则改为bij(i是这些行的行号最小值)。 ③这样反复进行,如果发现某一行变成了a1,a2,…,ak,则分解ρ具 有无损连接性;如果F中所有函数依赖都不能再修改表中的内容,且 没有发现这样的行,则分解ρ不具有无损连接性。
(3)无损连接的测试方法------表格法(算法6.2,P189) 算法:检验无损连接性。 输入:关系模式R(A1,A2,…,An),它的函数依赖集F以及分解ρ={R1, R2,…,Rk}。 输出:确定ρ是否具有无损连接性。 方法:
①构造一个k行n列的表,第i行对应于关系模式Ri,第j列对应于属性 Aj。如果Aj∈Ri,则在第i行第j列上放符号aj,否则放符号bij。
教学内容
教学过程
1NF 2NF
消除非主属性对码的部分函数依赖 消除非主属性对码的传递函数依赖 消除函数依赖的决定因素是非码
3NF
BCNF
关系模式的规范化,是通过对关系模式的分解实现的。 分解的实质: “一事一表”,让一个关系只描述一个实体或联系,使关系单 一化,以利于处理简单化。
6.4 关系模式的分解
∏BC(F)={B→C}
∏AB(F)∪∏BC(F)=F 所以保持函数依赖
说明: (1)分解具有无损连接性和分解保持函数依赖是两个互相独立的标准。 它们两者之间是没有联系的。具有无损连接性的分解不一定保持函数 依赖,保持函数依赖的不一定具有无损连接性。例如上一例题的二种 分解,一种具有无损连接性但没有保持函数依赖,另一种不具有无损 连接性但保持了函数依赖。 因此,关系模式的一个分解可能是保持函数依赖的,可能是具有 无损连接的,也可能是既具有无损连接性又保持函数依赖的。 (2)若要求分解既具有无损连接性,又保持函数依赖,则模式分解可以 达到3NF,但不一定能达到BCNF。
定义:设有关系模式R的一个分解ρ={R1,R2,…,Rk},F是R的 依赖集,如果F等价于∏R1(F) ∪∏R2(F)∪…∪ ∏Rk(F),则称分 解ρ具有依赖保持性。
例:对给定的关系模式R(U,F),U={A,B,C,D},F={A→B, B→C,C→D,D→A},判断关系模式R的分解ρ={AB,
做自然连接
Sno sdept S1 d1 Sdept dean d1 罗 ∈3NF S2 d2 d2 何 S3 d2
sno sdept S1 S2 S3 D1 D2 D2
dean 罗 何 何
问题得到了彻底解决,即不丢失信息,也减少了冗余。
6.4.1 模式分解的等价标准
上面例子中,每种分解方案得到的两个关系模式都属于 3NF(实际上,也属于BCNF)。如何比较这三种分解方案的优 劣呢?将一个关系模式分解为多个关系模式时,除了提高规 范化程度外还需要什么别的考虑吗?
规范化过程就是把一个关系模式分解为若干个关系模式, 而且这种分解应该是可逆的。所谓可逆,是要求模式的分解是 没有信息丢失,并保证分解后产生的关系模式集合和原来的关 系模式等价。
如何对关系模式进行分解才能保证没有信息丢失呢?
对于同一个关系模式可能有多种分解方案。下面的例子 给出三种分解方案,如何判断哪种分解方案更好呢?
常用的关系模式分解的等价标准有:
分解是具有无损连接性的;
分解是保持函数依赖的;
分解既要具有无损连接又要保持函数依赖两种。
6.4.2 无损连接的定义和性质
(1)无损连接的定义
指的是对关系模式分解时,原关系模式下任一合法的关系 实例在分解之后应能通过自然连接运算恢复起来。
定义:设ρ={R1,R2,……,Rk}是关系模式R<U,F>的一个分解,
Ri AD AB
A a1 a1
B a2
C
D
E b15 b25
Ri AD AB
A a1 a1
B a2
C
D
E b15 b25
b12 b13 a4 b13 a4
b12 b13 a4 b13 a4
BE
AE
b31 a2
a1
a3
a4
a4 a4
a5
a5 a5
BE
AE
a1
a1
a2
a3
a4
a4 a4
a5
a5 a5
CDE b41 b42 a3 b52 a3
6.4.3 模式分解的算法
算法1、把一个关系模式分解为3NF,使它具有无损连接性又具有依 赖保持性。
输入:关系模式R和R的最小依赖集Fm 输出:R的一个分解ρ={R1,R2,…,Rk},Ri为3NF(i=1,…,k), ρ具有无损联接性和依赖保持性。 方法: (1)如果Fm中只有一依赖X→A,且XA=R,则输出ρ=(R),则转(4)。
做连接
第一种分解: Sno S1 S2 S3
…………
Sdept dean d1 罗 ∈3NF d2 何
S1是哪个系的学生? 何是哪个系的系主任呢?
D1的系主任是谁呢? 联接后问题没有得到解决,原因是没 有保持函数依赖。
关系模式S(Sno,sdept,dean), F={Sno→sdept,sdept→dean} 第二种分解: Sno sdept S1 d1 S2 d2 S3 d2
例:现有关系模式R(A,B,C),函数依赖集F={A→B,C→B},判 断ρ1={AB,AC}, ρ2={AB,BC}是否具有无损连接性。 解: AB∩AC=A
AB-AC=B
解: AB∩BC=B
AB-BC=A
A→B∈F+
所以:ρ1具有无损连接性。
BC-AB=C
B→A或B→C∈F+ 所以:ρ2不具有无损连接性。
BC,CD}是否具有函数依赖保持性。
解: ∏AB(F)={A→B,B→A} ∏BC(F)={B→C,C→B}
∏CD(F)={C→D,D→C}
∏AB(F)∪∏BC(F) ∪∏CD(F)={A→B,B→A,B→C,C→B, C→D,D→C}
从中可以看到, A→B,B→C,C→D均得以保持。
又因为D+=ABCD,A D+,所以D→A也得以保持。 所以该分解具有依赖保持性。
CDE b41 b42 a3
CDE b41 b42 a3
AE
a1
b52 b13 b54 a5
b52 b13 a4
表1-2
表1-3
(3)根据C→D,对上表进行处理,由于属性列C上的第1,2,3,5是 相同的符号b13,而D列的1,2,3,5行中有a4,所以将D列的b24、 b34、 b54改为相同的符号a4,修改后的表如表1-3所示。 (4)根据DE→C,对上表进行处理,由于属性列DE上的第3,4,5 是相同的符号a4a5,而C列的3,4,5行中有a3,所以将C列的3、 5行改为a3,修改后的表如表1-4所示。
(2)如果R中某些属性与F中所有依赖的左边和右边都无关(N类属 性),则将它们构成关系模式,R中将它们分出去。
(3)对于Fm中的每一个Xi→Ai,都构成一个关系子模式Ri=XiAi。 (4)停止分解, ρ={R1,R2,…,Rk} (5)判定ρ是否具有无损连接性,若是,转(7),若不是,转(6) (6)令ρ= ρ∪{X},其中X是R的候选码。 (7)输出ρ。
例:对给定的关系模式R(U,F),U={A,B,C,D,E},F={A→C, B→C,C→D,DE→C,CE→A},有如下的分解: ρ={AD,AB,
BE,CDE,AE},判断分解ρ是否无损。
解: (1)构造一个初始的二维表,如下表1-1所示。
Ri AD AB A a1 a1 B a2 C D E b15 b12 b13 a4