
《《数据库系统概论》试题与答案(一)》由会员分享,可在线阅读,更多相关《《数据库系统概论》试题与答案(一)(25页珍藏版)》请在文档大全上搜索。
1、数据库系统概论试题 A一、选择题(20分,每小题2分):2.对关系模型叙述错误的是。A.建立在严格的数学理论、集合论和谓词演算公式的基础之上B .微机DBMS绝大部分采取关系数据模型C.用二维表表示关系模型是其一大特点D .不具有连接操作的DBMS也可以是关系数据库系统5. FoxBASE、FoxPro 属于 oA.表式系统B.最小关系系统C.关系完备的系统D.全关系系统二、填空题(20分,每小空2分):3 .关系操作的特点是 集合操作。4 .关系代数中,从两个关系中找出相同元组的运算称为运算。5 .在关系数据库的规范化理论中,在执行“分解”时,必须遵守规范化原则: 保持原有的函数依赖和耻6
2、. SQL语言的数据定义功能包括二二和4 .交5 .无损连接6 .定义数据库 定义基本表定义视图定义索引三、简答题(15分,每小题5分):1 .使用数据库系统有什么好处?答查询迅速、准确,而且可以节约大量纸面文件; 数据结构化,并由DBMS统一管理; 数据冗余度小: 具有较高的数据独立性; 数据的共享性好; DBMS还提供了数据的控制功能。2叙述数据字典的主要任务和作用?答: 数据字典的任务就是管理有关数据的信息, 所以又称为 “数据库的数据库” 。它的任务主要有:( 1)描述数据库系统的所有对象,并确定其属性。如一个模式中包含的记录型与一个记录型包含的数据项;用户的标识、口令;物理文件名称、
3、物理位置及其文件组织方式等。数据字典在描述时赋给每个对象一个惟一的标识。( 2)描述数据库系统对象之间的各种交叉联系。如哪个用户使用哪个子模式,哪些模式或记录型分配在哪些区域及对应于哪些物理文件、 存储在何种物理设备上。( 3)登记所有对象的完整性及安全性限制等。( 4)对数据字典本身的维护、保护、查询与输出。数据字典的主要作用是:( 1)供数据库管理系统快速查找有关对象的信息。数据库管理系统在处理用户存取时,要经常查阅数据字典中的用户表、子模式表和模式表等。( 2)供数据库管理员查询,以掌握整个系统的运行情况。( 3)支持数据库设计与系统分析。3简要叙述关系数据库的优点?答: 关系数据库是以
4、关系模型作为数据的组织方式, 关系模型是建立在严格的数学概念基础上的, 关系数据库的主要优点是概念简单清晰, 用户不需了解复杂的存取路径, 不需说明 “怎么干” ,只需说明“干什么” ,易懂易学。四、综合题( 45 分) :1某医院病房计算机管理中需要如下信息: ( 10 分) 科室:科名,科地址,科电话,医生姓名病房:病房号,床位号,所属科室名医生:姓名,职称,所属科室名,年龄,工作证号病人:病历号,姓名,性别,诊断,主管医生,病房号其中,一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个。完成如下设计:( 1)
5、设计该计算机管理系统的E R 图; ( 5 分)( 2)将该E-R 图转换为关系模型结构; ( 3 分)( 3)指出转换结果中每个关系模式的候选码。( 2 分)2.设有关系S、SC、C,试用关系代数、元组关系演算表达式和SQL完成下列操作。( 15 分,每小题 5 分)S(S#,SNAME,AGE,SEX) 例:(001,'李强 ',23, 男')SC(S#,C#,SCORE) 例:(003,'C1',83)C(C#,CNAME,TEACHER) 例:('C1','数据库原理',王华')( 1)用关系代数检索选修课
6、程号(C#)为C1和C2的学生学号(S#) o( 2)用元组关系演算表达式检索选修了“程军 ”老师所授课程之一的学生姓名。( 2)用元组关系演算表达式检索选修了“程军 ”老师所授课程之一的学生学号。( 3)用SQL找出选修了 “程军”老师教的所有课程的学生姓名。3设有关系模式R(U , F) ,其中:( 10分)U=E, F, G, H , F=E-G, G-E, F-EG, H -EG, FH fE求 F 的最小依赖集。4设有关系R 和函数依赖F: ( 10分)R (W, X, Y, Z), F = X-Z, WX-Y 。试求下列问题:( 1)关系R 属于第几范式?( 5 分)( 2)如果关
7、系R不属于BCNF,请将关系R逐步分解为BCNFo (5分)要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。四、综合题(45分):1.解:(1)本题的E-R图如图2所示。(2)对应的关系模型结构如下:科室(科名,科地址,科电话)病房(病房号,床位号,科室名)医生(工作证号,姓名,职称,科室名,年龄)病人(病历号,姓名,性别,诊治,主管医生,病房号)(3)每个关系模式的候选码如下:科室的候选码是科名;病房的候选码是科室名十病房号;医生的候选码是工作证号;病人的候选码是病历号。2 .设有关系S、SC、C,试用关系代数、元组关系演算表达式和SQL完成下列操作。(15分,每小题5分)
8、S(S#,SNAME,AGE,SEX) 例:(001,'李强',23,男')SC(S#,C#,SCORE)例:( 003,'C1',83)C(C#,CNAME,TEACHER) 例:('C1','数据库原理',王华')(1)用关系代数检索选修课程号(C#)为C1和C2的学生学号(S#)。ns#, c# (SC)nc#(oc#='C1' c#='C2,(C) -cc#'C1' c#'C2'(ns#, c# (SC)nc#(c#=;cr c#=C2,(C)2)用元
9、组关系演算表达式检索选修了“程军 ”老师所授课程之一的学生姓名。T |( U)( V)( W)(S(U) A SC(V) A C(W) A T1=U1 A U1=V1 AV2=W1 AW3=' 程军 ')( 2)用元组关系演算表达式检索选修了“程军 ”老师所授课程之一的学生学号。T | ( V)( W)( SC(V) AC(W) AT1=V1 AV2=W1 A W3='程军')( 3)用 SQL 找出选修了 “程军 ”老师教的所有课程的学生姓名。SELECT S.SNAMEFROM SWHERE NOT EXISTS(SELECT *FROM CWHERE CT
10、. EACHER=' 程军 ' AND NOT EXISTS(SELECT *FROM SCWHERE SC.C#=CC.# AND SC.S#=S.S#)本题解释 :SELECT *FROM CWHERE CT.EACHER=' 程军 ' AND EXISTS(SELECT *FROM SCWHERE SC.C#=CC.#这条SQLM查询程军所授的所有课程,外层查询中C.C#乍为变量在内层查询中 被使用,外层教师程军所授课程的课程号C#合内层,内层根据该课程号C#& SC 中查询是否存在这样的课程号, 即程军所授的课程, 如果存在则括号中的记录集不空,
11、EXISTS条件为TRUE因此,执行结果是显示程军所授的所有课程。SELECT *FROM CWHERE C.TEACHEDW AND NOT EXISTS (SELECT *FROM SCWHERE SC.C#=CC.# )这条SQL®旬在刚才语句的EXISTS前加了 NOT变成当内层查询全部是程军所 授课程时NOT EXIST舔件为假。SELECT S.SNAMEFROM SWHERE NOT EXISTS (SELECT *FROM CWHERE CT. EACHER=' 程军 ' AND NOT EXISTS(SELECT *FROM SCWHERE SC.C
12、#=CC.# AND SC.S#=S.S#)这条是完整的语句,比上面一条语句多了一个AND SC.S#=S.S#E示某个学生的学号,加上最外层的NOT EXISTS勺整个语句的含义是,对该某个学生,如果最 内层查询中查询结果全部是程军所授课程时,条件C.CNAME和军ANDNOTEXISTS为FALSE所以SELECT* FROMC的查询结果为空(第二层),这时最外层的NOTEXISTS为TRUE最外层查找成功,该学生是选修了 程军所授全部 课程的。3 .设有关系模式R (U, F),其中:(10分)U=E, F, G, H , F=E-G, GE, FEG, H -EG, FH - E求F的
13、最小依赖集。解: 将F中右部属性单一化:(2分)F1= E G, GE, FE, FG, H E, H G, FH-E 去掉左部冗余的属性。对于FH-E,由于有F-E,则为多余的。F2= E fG, G-E, F-E, F-G, H -E, H -G(2 分)(3)去掉冗余的函数依赖。F2中的F-E和F-G,以及H - E, H-G之一是冗余的,则:F3= E-G, G-E, F-G, H-G(6 分)4.设有关系R和函数依赖F: (10分)R (W, X, Y, Z), F = X-Z, WX-Y 。试求下列问题:1 .关系R属于第几范式? ( 5分)2 .如果关系R不属于BCNF,请将关系
14、R逐步分解为BCNF。( 5分)要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。解:R是1NF。侯选码为 WX,则丫,Z为非主属性,又由于X-Z,因此F中 存在非主属性对侯选码的部分函数依赖。将关系分解为:R1 (W X, 丫 , F1 = WX 一丫 R2 (X, Z) , F2 = X 一Z 消除了非主属性对码的部分函数依赖。F1 和 F2 中的函数依赖都是非平凡的, 并且决定因素是候选码, 所以上述关系模式是 BCNF 。数据库系统概论试题 B1数据库系统的核心是。A.数据库B .数据库管理系统C.数据模型D .软件工具3. SQL语言具有 的功能。A.关系规范化、数据
15、操纵、数据控制B.数据定义、数据操纵、数据控制C.数据定义、关系规范化、数据控制D.数据定义、关系规范化、数据操纵10.设有两个事务T1、T2,其并发操作如图1所示,下面评价正确的是 ,A 该操作不存在问题B 该操作丢失修改C 该操作不能重复读D 该操作读“脏”数据T1T2读 A=10 读 A=10 A=A-5 写回 A=A-8写回图 1 事务并发操作图二、填空题( 20 分,每小空2 分):7完整性约束是指和。 实体完整性参照完整性3 .关系数据库中可命名的最小数据单位是。属性名4 .保护数据安全性的一般方法是。设置用户标识和存取权限控制5“为哪些表,在哪些字段上,建立什么样的索引”这一设计
16、内容应该属于数据库设计中的设计阶段。 物理6 .若关系为1NF,且它的每一非主属性都候选码,则该关系为2NE不部分函数依赖于7关系代数运算中,专门的关系运算有 选择 投影 连接三、简答题和综合题( 15 分,每小题 5 分):1举例说明关系参照完整性的含义。2数据库管理系统有哪些功能?3事务中的提交和回滚是什么意思?45 分):1假定一个部门的数据库包括以下的信息: ( 10 分)职工的信息:职工号、姓名、住址和所在部门。部门的信息:部门所有职工、经理和销售的产品。产品的信息:产品名、制造商、价格、型号及产品内部编号。制造商的信息:制造商名称、地址、生产的产品名和价格。完成如下设计:( 1)设
17、计该计算机管理系统的E R 图;(5 分)(2)将该E-R图转换为关系模型结构;(3分)( 3)指出转换结果中每个关系模式的候选码。(2 分)2 .设有关系S、SG C,试用关系代数、元组关系演算表达式和SQL完成下列操作。( 15 分,每小题 5 分)S(S#,SNAME,AGE,SEX)例:(001,'李强',23,男)SC(S#,C#,SCORE) 例:( 003,'C1',83 )C(C#,CNAME,TEACHER冽:('C1','数据库原理,王华)(1)用关系代数检索既选修了 C1课程,又选修了 C2课程的学生学号(S#) o
18、( 2)用元组关系演算表达式检索年龄大于21 的男生的学号和姓名。(3)用SQL找出“程序设计”课程成绩在90分以上的学生姓名。3 .设有函数依赖集F = D -G 8A, CDHE, A-B,计算闭包D+, (AC)+,(ACD)+ 。(10分)4 .设有关系R和函数依赖F:(10分)R (X, Y, Z) , F = Y -Z, X小Y。试求下列问题:( 1)关系 R 属于第几范式?( 5 分)(2)如果关系R不属于BCNF请将关系R逐步分解为BCNF (5分)要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。试题答案三、简答题( 15 分,每小题 5 分):1举例说明关系
19、参照完整性的含义。答:假如有下表所示的两个关系表,在成绩表中,学号是主码,课程号是外码:在课程表中课程号是主码,根据关系参照完整性的定义,R2是成绩表,R1是课程表,也就是成绩表中课程号的值或者为空或者在课程表中的课程号中能够找到。成绩表课程表学号 姓名 课程号 成绩101 刘军k5 80212 王丽k8 76 221 章华 k9 92乐柞乐柞k5高等数学k8 C语言nk9计算机网络满足这个条件是必须的,如果不满足,假设成绩表中课程号的值k20在课程表中 课程号的信中找不到,则该课程号显然是不正确的,这样会造成数据的不一致性。2.数据库管理系统有哪些功能?答:数据库管理系统(DBMS是位于操作
20、系统与用户之间的一个数据管理软件,它主要功能包括以下几个方面:?数据定义功能DBMS提供数据描述语言(DDL ,用户可通过它来定义数 据。?数据操纵功能DBMS还提供数据操纵语言(DML ,实现对数据库的基本 操作:查询、插入、删除和修改。?数据库的运行管理 这是DBMS1行时的核心部分,它包括开发控制,安全 性检查,完整性约束条件的检查和执行,数据库的内容维护等。?数据库的建立和维护功能它包括数据库初始数据的输入及转换,数据库的转储 与恢复,数据库的重组功能和性能的监视与分析功能等。3事务中的提交和回滚是什么意思?答:事务中的提交(COMMIT是提交事务的所有操作。具体说就是将事务中 所有对
21、数据库的更新写回到磁盘上的物理数据库中去,事务正常结束。事务中的回滚(ROLLBACK是数据库滚回到事务开始时的状态。具体地说就是,在事务运行的过程中发生了某种故障, 事务不能继续执行, 系统将事务中对数据库的所有已完成的更新操作全部撤消,使数据库回滚到事务开始时的状态。四、综合题( 45 分):1( 1)设计该计算机管理系统的E R 图;(5 分)( 2)将该E-R 图转换为关系模型结构;( 3分)( 3)指出转换结果中每个关系模式的候选码。(2 分) 解:本题对应的 E-R 图如图 2 所示。2(1)用关系代数检索既选修了 C1课程,又选修了 C2课程的学生学号。(IISNAME(S C#
22、='C1'(SQ ) n(nSNAME(S C#='C2'(S。)(2)用元组关系演算表达式检索年龄大于21的男生的学号和姓名。t(2)|(r)(S(r) At1=r1 A t2=r2 A r3>21 A r4='男')(3)用SQL找出“程序设计”课程成绩在90分以上的学生姓名。解:SELECT SNAMEFROM S,SC,CWHERE S.S#=SC.S# AND SC.C#=C.C# AND SCORE>=90 AND CNAMES计'或者SELECT SNAMEFROM SWHERER S.S# IN (SELECT
23、 S#FROM SCWHERE SCORE>=90 AND C.C# IN (SELECT C#FROM CWHERE CNAME='程序设计 ')3.设有函数依赖集F = D -G 8A, CDHE, A-B,计算闭包D+, (AC)+, (ACD)+ 。(10分)解: X=D, X(0)= D, X(1)= DG, X(2)=DG,故 D+=DG X=AC, X(0)= AC , X(1)=ABC, X(2)=ABC,故(AC)+ =ABC。 X=ACD, X(0)= ACD, X(1)=ABCD X(2)=ABCDG X(3)=ABCDEG 故(ACD)+ =ABC
24、DEG4.设有关系R和函数依赖F:(10分)R (X, Y, Z) , F = Y -Z, X小Y。试求下列问题:( 1)关系R 属于第几范式?(5 分)(2)如果关系R不属于BCNF请将关系R逐步分解为BCNF (5分)要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。解:R是3NE侯选码为XY和XZ, R中所有属性都是主属性,不存在非主属性对 码的传递依赖。R1 (X, Y, Z) , F = XZ -YR2 (Y, Z) , F = Y -Z 消除了非主属性对码的传递依赖。F1和F2中的函数依赖都是非平凡的,并且决定因素是候选码,所以上述关系模 式是BCNF数据库系统概论
25、试题C1.数据库系统与文件系统的主要区别是 。A.数据库系统复杂,而文件系统简单B.文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决C.二文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件D.文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量8 .数据库的是指数据的正确性和相容性。A.安全性B.完整性 C.并发控制D .恢复9 .授权编译系统和合法性检查机制一起组成了 子系统。A.安全性B.完整性C.并发控制D.恢复1. DBMS的基本工作单位是事务,它是用户定义的一组逻辑一致的程序序列; 并发控制的主要方法是机制。 封锁3 .关系数据库中基于数学上两类运算是和
26、。 关系代数 关系演算4 .数据库设计的几个步骤是二 需求分析,概念设计,逻辑设计,物理设计,编码和 调试关系操作的特点是操作集合。三、简答题( 15 分,每小题5 分) :1什么是数据库?2什么是数据库的数据独立性?3叙述等值连接与自然连接的区别和联系。四、综合题( 45 分) :1 设有如下实体:( 10 分)学生:学号、单位、姓名、性别、年龄、选修课程名课程:编号、课程名、开课单位、任课教师号教师:教师号、姓名、性别、职称、讲授课程编号单位:单位名称、电话、教师号、教师名上述实体中存在如下联系:( 1) 一个学生可选修多门课程,一门课程可为多个学生选修;( 2) 一个教师可讲授多门课程,
27、一门课程可为多个教师讲授;( 3) 一个单位可有多个教师,一个教师只能属于一个单位。试完成如下工作:( 1)分别设计学生选课和教师任课两个局部信息的结构 E-R 图。 (4分)( 2)将上述设计完成的E-R 图合并成一个全局E-R 图。 ( 3 分)( 3)将该全局E-R 图转换为等价的关系模型表示的数据库逻辑结构。 ( 3 分)2.设有关系S、SC、C,试用关系代数、元组关系演算表达式和SQL完成下列操作。( 15 分,每小题 5 分)S(S#,SNAME,AGE,SEX) 例:(001,'李强 ',23, 男')SC(S#,C#,SCORE) 例:(003,'
28、;C1',83)C(C#,CNAME,TEACHER) 例:('C1','数据库原理',王华')( 1)试用关系代数检索选修了 “程军 ”老师所授课程之一的学生姓名。( 2) 试用元组关系演算表达式检索选修了“程军 ”老师所授课程之一的学生姓名。( 3) 试用元组关系演算表达式检索选修了“程军 ”老师所授课程之一的学生学号。(3)试用SQL找出“程序设计”课程成绩在90分以上的学生姓名。( 4) 系模式R (U, F),其中:(10分)U=A , B, C, D, E, F = A-BC, CD-E, B-D, E-A。 计算 B+ 。( 2 分
29、) 求 R 的所有候选码。 (8分)4设有关系STUDENT(S#,SNAME,SDEPT,MNAME,CNAME,GRADE) ,S#,CNAME 为候选码,设关系中有如下函数依赖: ( 10分)S#,CNAME -SNAME,SDEPT,MNAMES#f SNAME,SDEPT,MNAMES#,CNAME-GRADESDEPT- MNAME试求下列问题:( 1)关系STUDENT 属于第几范式?(5分)( 2) 如果关系STUDENT 不属于 BCNF , 请将关系 STUDENT 逐步分解为 BCNF( 5 分)要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。试题答案三
30、、简答题(15分,每小题5分):1 .什么是数据库?答:数据库是长期存储在计算机内、有组织的、可共享的数据集合。数据库是按 某种数据模型进行组织的、存放在外存储器上,且可被多个用户同时使用。因此, 数据库具有较小的冗余度,较高的数据独立性和易扩展性。2 .什么是数据库的数据独立性?答:数据独立性表示应用程序与数据库中存储的数据不存在依赖关系,包括逻辑数据独立性和物理数据独立性。逻辑数据独立性是指局部逻辑数据结构 (外视图即用户的逻辑文件)与全局 逻辑数据结构(概念视图)之间的独立性。当数据库的全局逻辑数据结构(概念 视图)发生变化(数据定义的修改、数据之间联系的变更或增加新的数据类型等) 时,
31、它不影响某些局部的逻辑结构的性质,应用程序不必修改。物理数据独立性是指数据的存储结构与存取方法 (内视图)改变时,对数据 库的全局逻辑结构(概念视图)和应用程序不必作修改的一种特性,也就是说, 数据库数据的存储结构与存取方法独立。数据独立性的好处是,数据的物理存储设备更新了,物理表示及存取方法改变了, 但数据的逻辑模式可以不改变。数据的逻辑模式改变了,但用户的模式可以不改 变,因此应用程序也可以不变。这将使程序维护容易,另外,对同一数据库的逻 辑模式,可以建立不同的用户模式,从而提高数据共享性,使数据库系统有较好 的可扩充性,给DBA维护、改变数据库的物理存储提供了方便。3 .叙述等值连接与自
32、然连接的区别和联系。答:等值连接表示为R*a=bS,自然连接表示为R*S;自然连接是除去重复属 性的等值连接。两者之间的区别和联系如下:自然连接一定是等值连接,但等值连接不一定是自然连接。等值连接不把重复的属性除去;而自然连接要把重复的属性除去。等值连接要求相等的分量,不一定是公共属性;而自然连接要求相等的分 量必须是公共属性。等值连接不把重复的属性除去;而自然连接要把重复的属性除去。四、综合题(45分):1 .试完成如下工作:(10分)(1)分别设计学生选课和教师任课两个局部信息的结构E-R图。 (4分)(2)将上述设计完成的E-R图合并成一个全局E-R图。 (3分)(3)将该全局E-R图转
33、换为等价的关系模型表示的数据库逻辑结构。(3分)解:(1)学生选课局部E-R图如图2所示,教师任课局部E-R图如图3所示。(2)合并的全局E-R图如图4所示。为避免图形复杂,下面给出各实体属性:单位:单位名、电话学生:学号、姓名、性别、年龄教师:教师号、姓名、性别、职称课程:编号、课程名(3)该全局E-R图转换为等价的关系模型表示的数据库逻辑结构如下:单位(单位名,电话)教师(教师号,姓名,性别,职称,单位名)课程(课程编号,课程名,单位名)学生(学号,姓名,性别,年龄,单位名)讲授(教师号,课程编号)mn课程n属于1单位单位名1n单位属于1m1开设拥有nnnmn学生课程选修3教师任课局部E-
34、R图2学生选课局部ER图图4合并的全局ER图2 .设有关系S、SC、C,试用关系代数、元组关系演算表达式和 SQL完成下列操作。(15分,每小题5分)S(S#,SNAME,AGE,SEX)例:(001,季强,23,男')SC(S#,C#,SCORE) 例:(003,C1',83)C(C#,CNAME,TEACHER)例:('C1',数据库原理',王华')(1)试用关系代数检索选修了 程军”老师所授课程之一的学生姓名。nSNAME (S 冈 SC冈 TEACHER='程军,(C)(2)试用元组关系演算表达式检索选修了 程军”老师所授课程之一
35、的学生姓名。T |( U)( V)( W)(S(U) ASC(V) AC(W) AT1=U1 A U1=V1 AV2=W1 AW3='程军')(2)试用元组关系演算表达式检索选修了 程军”老师所授课程之一的学生学号。T | ( V)( W)( SC(V) AC(W) AT1=V1 AV2=W1 A W3='程军')(3)找出“程序设计 ”课程成绩在90分以上的学生姓名。SELECT SNAMEFROM S,SC,CWHERE S.S#=SC.S# AND SC.C#=C.C# AND SCORE>=90 AND CNAME=' 程序设计 '
36、或者SELECT SNAMEFROM SWHERER S.S# IN (SELECT S#FROM SCWHERE SCORE>=90 AND C.C# IN (SELECT C#FROM CWHERE CNAME=' 程序设计 ')3 .设有关系模式R (U, F),其中: (10分)U=A , B, C, D, E, F = A-BC, CD-E, B-D, E-A。 计算 B+ 。( 2 分) 求 R 的所有候选码。( 8 分)解: 令 X=B , X(0)=B , X(1)=BD , X(2)=BD ,故 B+=BD 。 根据候选码的定义, R 的候选码只可能由
37、F 中各个函数依赖的左边属性组成,即 A, B, C, D, E,由于A-BC(A-B, A-C) ,BD,E-A,故:可除去 A , B , C, D , 组成候选码的属性可能是E。计算可知:E+=ABCDE ,即EfU, E是一个候选码。可除去 A , B , E, 组成候选码的属性可能是CD 。计算可知:(CD)+=ABCDE,即 CDfU,但 C+=C, D+=D , CD 是一个候选 码。可除去 B, C, D , E, 组成候选码的属性可能是A 。计算可知:A+=ABCDE ,即A fU, A是一个候选码。可除去 A , D , E, 组成候选码的属性可能是 BC 。计算可知:(B
38、C)+=ABCDE,即 CDfU,但 B+=BD, C+=C , BC 是一个候 选码。R 的所有候选码是A , BC , CD , E。4设有关系STUDENT(S#,SNAME,SDEPT,MNAME,CNAME,GRADE) ,S#,CNAME 为候选码,设关系中有如下函数依赖: ( 10分)S#,CNAME -SNAME,SDEPT,MNAMES#f SNAME,SDEPT,MNAMES#,CNAME-GRADESDEPT- MNAME试求下列问题:( 1)关系STUDENT 属于第几范式?( 5分)( 2) 如果关系STUDENT 不属于BCNF , 请将关系STUDENT 逐步分解
39、为 BCNF。( 5 分)要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。解:( 1)关系STUDENT 是 1NF。( 2)首先消除部分函数依赖S#,CNAME -SNAME,SDEPT,MNAME将关系分解为:R1(S#,SNAME,SDEPT,MNAME)R2(S#,CNAME,GRADE)在关系R1中存在非主属性对候选码的传递函数依赖 S#-SDEPT, SDEPT-MNAME ,所以以上关系模式还不是BCNF ,进一步分解R1:R11(S#,SNAME,SDEPT)R12(SDEPT,MNAME)R11,R12 都是 3NF。关系模式R2(S#,CNAME,GRAD
40、E)R11(S#,SNAME,SDEPT)R12(SDEPT,MNAME)R2,R11,R12关系模式存在的函数依赖S#,CNAME -GRADE S#,SNAME-SNAME,SDEPT SDEPT- MNAME上述函数依赖都是非平凡的,并且决定因素是候选码,所以上述关系模式是BCNF。综合设计题某单位资料室要建立一个图书管理系统,初步的需求分析结果如下:资料室有图书管理员若干名,他们负责已购入图书的编目和借还工作,每名图书管理员的信息包括工号和姓名;读者可在阅览室读书,也可通过图书流通室借还图书,读者信息包括读者ID、姓名、电话和E-mail ,系统为不同读者生成不同的读者ID;每部书在系
41、统中对应唯一的一条图书在版编目数据(CIP,以下简称书目),书目的基本信息包括ISBN号、书名、作者、出版商、出版年月, 以及本资料室拥有该书的册数,不同书目的ISBN号不相同;资料室对于同一书目的图书可拥有多册(本),图书信息包括图书ID、ISBN 号、存放位置、当前状态,每一本书在系统中被赋予唯一的图书ID;一名读者最多只能借阅十本图书,且每本图书最多只能借两个月,读者 借书时需由图书管理员登记读者ID、所借图书ID、借阅时间和应还时间, 读者还书时图书管理员在对应的借书信息中记录归还时间。某书目的信息以及与该书目对应的图书信息如下表所示。书目信息书名作者出版商ISBN 号出版年 月册数经
42、办人数据结 构严蔚敏清华大学出版 社ISBN7-302-02368-91997.4401图书信息图书IDISBN 号仔放位直状态经办人C832.1ISBN7-302-02368-9图书流通室已借出01C832.2ISBN7-302-02368-9图书阅览室不外借01C832.3ISBN7-302-02368-9图书流通室7Htth011 .根据上述语义设计此图书管理的 E-R模型,在E-R图中需注明实体的属 性、联系的类型及实体的标识符。2 .将E-R模型转换成关系模型,并指出每个关系模式的主码和外码。3 .分析每个关系模式已经达到第几范式。1.解:E-R 图:实体及实体属性描述如下:管理员(工,姓名)读者(读者ID,姓名,电话,E-mail)书目(ISBN号,书名,作者,出版商,出版年月,册数)图书(图书ID,存放位置,状态)2.该E-R图转换为等价的关系模型表示的数据库逻辑结构如下:管理员(姓名)读者(读者ID,姓名,电话,E-mail)书目(ISBN号,书名,作者,出版商,出版年月,册数,经办人 )Foreigh key:经办人图书(图书ID, ISBN号,存放位置,状态,经办人)Foreigh key: ISBN 号,经办人借阅(读者ID,图书ID,借出时间,应还时间,归还时间)Foreigh key :读者 ID,图书 ID3.以上关系模式均达到BCNF