您的位置:首页 > 数据库

数据库第五章作业

2015-04-28 22:44 253 查看
作业完成者:王典 2013211958
2、现需要建立关于系、学生、班级、学会等信息的一个关系数据库。语义为:一个系有若干个专业,每个专业每年只招收一个班,每个班有若干个学生,一个系的学生住在同一个宿舍区,每个学生可参加若干学会,每个学会女有若干学生

描述学生的属性有:学号、姓名、出生日期、系名、班号、宿舍区。

描述班级的属性有:班号、专业名、系名、人数、入校年份。

描述系的属性有:系名、系号、系办公室地点、人数。

描述学会的属性有:学会名、成立年份、地点、人数、入会年份

(1) 请写出关系模式

学生 U={学号,姓名,出生日期,系名,班号,宿舍区}

     F={学号->姓名,学号->出生日期,学号->班号, 学号->宿舍区,班号->系名,系名->宿舍区}

班级 U={班号,专业名,系名,人数,入校年份}

     F={班号->人数,班号->系名,班号->入校年份,班号->专业名,专业名->系名}

系   U={系名,系号,系办公室地点,人数}

     F={系号->系名,系号->系办公室地点,系号->人数}

学会 U={学会名,成立年份,地点,人数,入会年份}

     F={学会名->成立年份,学会名->地点,学会名->人数}

(2) 写出每个关系模式的最小依赖集,指出是否存在传递依赖。在函数依赖左部是多属性的情况下,讨论函数依赖是完全依赖还是部分函数依赖

关系模式学生的最小依赖集:{学号->姓名,学号->出生日期,学号->班号,班号->系名,系名->宿舍区}

传递依赖:无

关系模式班级的最小依赖集:{班号->人数,班号->入校年份,班号->专业名,专业名->系名}

传递依赖:

关系模式系的最小依赖集:{系号->系名,系号->系办公室地点,系号->人数}

传递关系:

关系模式学会的最小依赖集:{学会名->成立年份,学会名->地点,学会名->人数}

传递依赖:

(3) 指出各关系模式的候选码、外码、有没有全码。

 

候选码
外码
全码
学生
学号
系名,班号


系号


学会
学会名


3、设关系模式R<A,B,C,D>,函数依赖集F={A->C,C->A,B->AC,D->AC,BD->A }.
(1)求出R的候选码。

答:BD

(2)求出F的最小依赖集

将函数依赖集F右部分解为单属性有F={A->C,C->A,B->C,D->C,BD->A,B->A,D->A}
删除传递函数依赖B->C,D->C得F={A->C,C->A,BD->A,B->A,D->A}
删除部分函数依赖BD->A得F={A->C,C->A,B->A,D->A}
即最小函数依赖集Fm={A->C,C->A,B->A,D->A}

(3)将R分解为3NF,使其既具有无损连接性又具有函数依赖保持性。

由(2)已知最小函数依赖集Fm={A-
4000
>C,C->A,B->A,D->A}
由(1)已知主码为BD
将函数分解为3NF使其既具有无损连接性又具有函数依赖保持性有ρ={BD,CA,BA,DA}
5、设关系模式R(A,B,C,D,E,F),函数依赖集F={AB->E,BC->D,BE->C,CD->B,CE->AF,CF->BD,C->A,D->EF},

求函数F的最小依赖集

将函数依赖集F右部分解为单属性有F{AB->E,BC->D,BE->C,CD->B,CF->B,CE->A,CE->F,CF->D,C->A,D->E,D->F}
设AB->E冗余,则求剩余部分(AB)的闭包=AB,所以AB->E保留
设BC->D冗余,则求剩余部分(BC)的闭包=ABCDEF,所以BC->D删除
设BE->C冗余,则求剩余部分(BE)的闭包=BE,所以BE->C保留
设CD->B冗余,则求剩余部分(CD)的闭包=ABCDEF,所以CD->B删除
设CF->B冗余,则求剩余部分(CF)的闭包=CFA,所以CF->B保留
设CF->D冗余,则求剩余部分(CF)的闭包=CFA,所以CF->D保留
设CE->A冗余,则求剩余部分(CE)的闭包=CEAFDB,所以CE->A删除

设CE->F冗余,则求剩余部分(CE)的闭包=CEA,所以CE->F保留
设C->A冗余,则求剩余部分(C)的闭包=C,所以C->A保留
设D->E冗余,则求剩余部分(D)的闭包=D,所以D->E保留
设D->F冗余,则求剩余部分(D)的闭包=D,所以D->F保留
因此最小函数依赖集Fm={AB->E,BE->C,CE->F,CF->B,CF->D,C->A,D->E,D->F}

8、设关系模式R(B,O,I,S,Q,D),函数依赖集F={S->D,I->S,IS->Q,B->Q}.

(1)找出R的主码

答:IBO

(2)把R分解成BCNF,且具有无损连接性

由(1)得知主码为IBO
令S1=(S,D)(S->D),则有S'1=(B,O,I,S,Q)不满足条件
令S2=(I,S,Q),则有S'2=(B,O,I)满足条件
所以分解为ρ={SD,ISQ,IBO}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: