数据库期末复习:综合应用题汇总

设计题

  1. 设教学数据库中有三个基本表:
    学生表S(SNO,SNAME,AGE,SEX),其属性分别表示学号、学生姓名、年龄、性别。课程表C(CNO,CNAME,TEACHER),其属性分别表示课程号、课程名、上课教师名。选修表SC(SNO,CNO,GRADE),其属性分别表示学号、课程号、成绩。
    有如下SQL查询语句:
    SELECT CNO
    FROM C
    WHERE CNO NOT IN
    (SELECT CNO
    FROM S,SC
    WHERE S.SNO=SC.SNO
    AND SNAME=‘张三’);
    请完成下列问题:
    (1)用汉语句子阐述上述SQL语句的含义;
    (2)用等价的关系代数表达式表示上述SQL查询语句。
    数据库期末复习:综合应用题汇总_第1张图片
  2. 设有关系R和函数依赖F:
    R(A,B,C,D,E),F = { ABC→DE,BC→D,D→E }。
    试求下列问题:
    (1)关系R的侯选码是什么?R属于第几范式?并说明理由。(3分)
    (2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。(5分)
    要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
    (1)关系R的候选码是(A,B,C),R∈1NF,因为R中存在非主属性D,E对候选码(A,B,C)的部分函数依赖。 (3分)
    (2)首先消除部分函数依赖
    将关系分解为:
    R1(A,B,C) (A,B,C)为候选码,
    R1中不存在非平凡的函数依赖
    R2(B,C,D,E),(B,C)为候选码,
    R2的函数依赖集为:F2={(B,C)→D,D→E}
    在关系R2中存在非主属性E对候选码(B,C)的传递函数依赖,所以将R2进一步分解:
    R21(B,C,D) ,(B,C)为候选码,
    R21的函数依赖集为:F21 = { (B,C)→D }
    R22(D,E) ,D为候选码,
    R22的函数依赖集为:F22 = { D→E }
    在R1中已不存在非平凡的函数依赖,在R21、R22关系模式中函数依赖的决定因素均为候选码,所以上述三个关系模式均是BCNF。

四、设计题
1.设有关系STUDENT(S#,SNAME,SDEPT,MNAME,CNAME,GRADE),(S#,CNAME)为候选码,设关系中有如下函数依赖:
(S#,CNAME)→SNAME,SDEPT,MNAME
S#→SNAME,SDEPT,MNAME
(S#,CNAME)→GRADE
SDEPT→MNAME
试求下列问题:
(1)关系STUDENT属于第几范式?并说明理由。(3分)
(2)如果关系STUDENT不属于BCNF,请将关系STUDENT逐步分解为巧
BCNF。(7分)
要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
(1) 关系STUDENT是1NF,因为F中存在非主属性SNAME,SDEPT,MNAME对侯选码(S#,CNAME)的部分函数依赖。 
(2)
① 首先消除部分函数依赖(S#,CNAME)→SNAME,SDEPT,MNAME将关系分解为:
R1(S#,SNAME,SDEPT,MNAME),S#为候选码,
R1的函数依赖集为:
F1 = { S#→SNAME,SDEPT,MNAME,SDEPT→MNAME}
R2(S#,CNAME,GRADE),S#为候选码,
R2的函数依赖集为:
F2={(S#,CNAME)→GRADE}
② 在关系R1中存在非主属性MNAME对候选码S#的传递函数依赖S#→MNAME,所以将R1进一步分解:
R11(S#,SNAME,SDEPT) ,S#为候选码,
R11的函数依赖集为:
F11 = { S#→SNAME,SDEPT}
R12(SDEPT,MNAME) ,SDEPT为候选码,
R12的函数依赖集为:
F12 = { SDEPT→MNAME}
在R2、R11、R12关系模式中函数依赖都是非平凡的,并且决定因素均是候选码,所以上述三个关系模式均是BCNF。
数据库期末复习:综合应用题汇总_第2张图片

数据库期末复习:综合应用题汇总_第3张图片
数据库期末复习:综合应用题汇总_第4张图片
数据库期末复习:综合应用题汇总_第5张图片


综合设计题

数据库期末复习:综合应用题汇总_第6张图片

你可能感兴趣的:(数据库,database)