• 195.50 KB
  • 2022-04-22 11:26:17 发布

《数据库系统概论》试题与答案(1).doc

  • 31页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'《数据库系统概论》试题A一、选择题(20分,每小题2分):1.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。在这几个阶段中,数据独立性最高的是____阶段。A.数据库系统B.文件系统C.人工管理D.数据项管理2.对关系模型叙述错误的是____。A.建立在严格的数学理论、集合论和谓词演算公式的基础之上B.微机DBMS绝大部分采取关系数据模型C.用二维表表示关系模型是其一大特点D.不具有连接操作的DBMS也可以是关系数据库系统3.关系运算中花费时间可能最长的运算是____。A.投影B.选择C.笛卡尔积D.除4.假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE)。要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系____。A.SB.SC,CC.S,SCD.S,C,SC5.FoxBASE、FoxPro属于________。A.表式系统B.最小关系系统C.关系完备的系统D.全关系系统6.关系规范化中的删除操作异常是指________。A.不该删除的数据被删除B.不该插入的数据被插入C.应该删除的数据未被删除D.应该插入的数据未被插入7.在关系数据库设计中,设计关系模式是____的任务。A.需求分析阶段B.概念设计阶段C.逻辑设计阶段D.物理设计阶段8.从E-R模型关系向关系模型转换时,一个M:N联系转换为关系模式时,该关系模式的码是____。31 A.M端实体的码B.N端实体的码C.M端实体码与N端实体码组合D.重新选取其他属性9.下面哪个不是数据库系统必须提供的数据控制功能____。A.安全性B.可移植性C.完整性D.并发控制10.设有两个事务T1、T2,其并发操作如图1所示,下面评价正确的是____。A该操作不存在问题B.该操作丢失修改C.修改该操作不能重复读D.该操作读“脏”数据T1T2①读A=10,B=5②读A=10A=A*2写回③读A=20,B=5求和25验证错图1事务并发操作图二、填空题(20分,每小空2分):1.①事务2.②S锁③X锁3.④集合4.⑤交5.⑥无损连接6.⑦定义数据库⑧定义基本表⑨定义视图⑩定义索引1.①是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列。2.若事务T对数据对象A加了S锁,则其他事务只能对数据A再加②,不能加③,直到事务T释放A上的锁。3.关系操作的特点是④操作。4.关系代数中,从两个关系中找出相同元组的运算称为⑤运算。5.在关系数据库的规范化理论中,在执行“分解”时,必须遵守规范化原则:保持原有的函数依赖和⑥。6.SQL语言的数据定义功能包括⑦、⑧、⑨和⑩。31 三、简答题(15分,每小题5分):1.使用数据库系统有什么好处?2.叙述数据字典的主要任务和作用?3.简要叙述关系数据库的优点?四、综合题(45分):1.某医院病房计算机管理中需要如下信息:(10分)科室:科名,科地址,科电话,医生姓名病房:病房号,床位号,所属科室名医生:姓名,职称,所属科室名,年龄,工作证号病人:病历号,姓名,性别,诊断,主管医生,病房号其中,一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个。完成如下设计:(1)设计该计算机管理系统的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)用关系代数检索选修课程号(C#)为C1和C2的学生学号(S#)。(2)用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生姓名。(2)用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生学号。(3)用SQL找出选修了“程军”老师教的所有课程的学生姓名。3.设有关系模式R(U,F),其中:(10分)U={E,F,G,H},F={E→G,G→E,F→EG,H→EG,FH→E}31 求F的最小依赖集。4.设有关系R和函数依赖F:(10分)R(W,X,Y,Z),F={X→Z,WX→Y}。试求下列问题:(1)关系R属于第几范式?(5分)(2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。(5分)要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。一、选择题(20分,每小题2分):1.A2.D3.C4.D5.B6.A7.C8.C9.B10.C二、填空题(20分,每小空2分):1.①事务2.②S锁③X锁3.④集合4.⑤交5.⑥无损连接6.⑦定义数据库⑧定义基本表⑨定义视图⑩定义索引三、简答题(15分,每小题5分):1.使用数据库系统有什么好处?答:使用数据库系统的好处是:·查询迅速、准确,而且可以节约大量纸面文件;·数据结构化,并由DBMS统一管理;·数据冗余度小:·具有较高的数据独立性;·数据的共享性好;·DBMS还提供了数据的控制功能。31 2.叙述数据字典的主要任务和作用?答:数据字典的任务就是管理有关数据的信息,所以又称为“数据库的数据库”。它的任务主要有:(1)描述数据库系统的所有对象,并确定其属性。如一个模式中包含的记录型与一个记录型包含的数据项;用户的标识、口令;物理文件名称、物理位置及其文件组织方式等。数据字典在描述时赋给每个对象一个惟一的标识。(2)描述数据库系统对象之间的各种交叉联系。如哪个用户使用哪个子模式,哪些模式或记录型分配在哪些区域及对应于哪些物理文件、存储在何种物理设备上。(3)登记所有对象的完整性及安全性限制等。(4)对数据字典本身的维护、保护、查询与输出。数据字典的主要作用是:(1)供数据库管理系统快速查找有关对象的信息。数据库管理系统在处理用户存取时,要经常查阅数据字典中的用户表、子模式表和模式表等。(2)供数据库管理员查询,以掌握整个系统的运行情况。(3)支持数据库设计与系统分析。3.简要叙述关系数据库的优点?答:关系数据库是以关系模型作为数据的组织方式,关系模型是建立在严格的数学概念基础上的,关系数据库的主要优点是概念简单清晰,用户不需了解复杂的存取路径,不需说明“怎么干”,只需说明“干什么”,易懂易学。四、综合题(45分):1.解:(1)本题的E-R图如图2所示。(2)对应的关系模型结构如下:科室(科名,科地址,科电话)病房(病房号,床位号,科室名)医生(工作证号,姓名,职称,科室名,年龄)病人(病历号,姓名,性别,诊治,主管医生,病房号)31 (3)每个关系模式的候选码如下:科室的候选码是科名;病房的候选码是科室名十病房号;医生的候选码是工作证号;病人的候选码是病历号。n病人入住病房1病房号床位号工作证号姓名性别病历号n医生从属科室1科名科电话科地址职称年龄姓名诊治组成n1n1图2E-R图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)用关系代数检索选修课程号(C#)为C1和C2的学生学号(S#)。ΠS#,C#(SC)¸ΠC#(σC#=’C1’ÚC#=’C2’(C))-σC#¹’C1’ÚC#¹’C2’(ΠS#,C#(SC)¸ΠC#(σC#=’C1’ÚC#=’C2’(C)))(2)用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生姓名。{T(1)|($U)($V)($W)(S(U)∧SC(V)∧C(W)∧T[1]=U[1]∧U[1]=V[1]∧V[2]=W[1]∧W[3]="程军")}(2)用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生学号。{T(1)|($V)($W)(SC(V)∧C(W)∧T[1]=V[1]∧V[2]=W[1]∧W[3]="程军")}(3)用SQL找出选修了“程军”老师教的所有课程的学生姓名。SELECTS.SNAMEFROM31 SWHERENOTEXISTS    (     SELECT*     FROMC     WHEREC.TEACHER="程军"ANDNOTEXISTS            (             SELECT*             FROMSC             WHERESC.C#=C.C#ANDSC.S#=S.S#            )     )本题解释:SELECT*FROMCWHEREC.TEACHER="程军"ANDEXISTS     (      SELECT*      FROMSC      WHERESC.C#=C.C#     )这条SQL是查询"程军"所授的所有课程,外层查询中C.C#作为变量在内层查询中被使用,外层教师"程军"所授课程的课程号C#给内层,内层根据该课程号C#在SC中查询是否存在这样的课程号,即程军所授的课程,如果存在则括号中的记录集不空,EXISTS条件为TRUE。因此,执行结果是显示程军所授的所有课程。SELECT*FROMCWHEREC.TEACHER="程军"ANDNOTEXISTS     (      SELECT31 *      FROMSC      WHERESC.C#=C.C#     )这条SQL语句在刚才语句的EXISTS前加了NOT,变成当内层查询全部是"程军"所授课程时NOTEXISTS条件为假。SELECTS.SNAMEFROMSWHERENOTEXISTS(SELECT*                 FROMC                 WHEREC.TEACHER="程军"ANDNOTEXISTS                       (                        SELECT*                        FROMSC                        WHERESC.C#=C.C#ANDSC.S#=S.S#                        )这条是完整的语句,比上面一条语句多了一个ANDSC.S#=S.S#表示某个学生的学号,加上最外层的NOTEXISTS的整个语句的含义是,对该某个学生,如果最内层查询中查询结果全部是‘程军’所授课程时,条件C.CNAME="程军"ANDNOTEXISTS为FALSE,所以SELECT*FROMC的查询结果为空(第二层),这时最外层的NOTEXISTS为TRUE,最外层查找成功,该学生是选修了‘程军’所授全部课程的。3.设有关系模式R(U,F),其中:(10分)U={E,F,G,H},F={E→G,G→E,F→EG,H→EG,FH→E}求F的最小依赖集。3.设有关系模式R(U,F),其中:(10分)U={E,F,G,H},F={E→G,G→E,F→EG,H→EG,FH→E}31 求F的最小依赖集。解:⑴将F中右部属性单一化:(2分)F1={E→G,G→E,F→E,F→G,H→E,H→G,FH→E}⑵去掉左部冗余的属性。对于FH→E,由于有F→E,则为多余的。F2={E→G,G→E,F→E,F→G,H→E,H→G}(2分)⑶去掉冗余的函数依赖。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,请将关系R逐步分解为BCNF。(5分)要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。解:R是1NF。侯选码为WX,则Y,Z为非主属性,又由于X→Z,因此F中存在非主属性对侯选码的部分函数依赖。WXYYZY  将关系分解为:R1(W,X,Y),F1={WX→Y}R2(X,Z),F2={X→Z}消除了非主属性对码的部分函数依赖。F1和F2中的函数依赖都是非平凡的,并且决定因素是候选码,所以上述关系模式是BCNF。《数据库系统概论》试题B31 一、选择题(20分,每小题2分):1.数据库系统的核心是____。1.B2.C3.B4.A5.B6.D7.B8.C9.C10.BA.数据库B.数据库管理系统C.数据模型D.软件工具2.关系模型中,候选码____。A.可由多个任意属性组成B.至多由一个属性组成C.可由一个或多个其值能惟一标识该关系模式中任何元组的属性组成D.以上都不是3.SQL语言具有____的功能。A.关系规范化、数据操纵、数据控制B.数据定义、数据操纵、数据控制C.数据定义、关系规范化、数据控制D.数据定义、关系规范化、数据操纵4.SQL语言的数据操纵语句包括SELECT,INSERT,UPDATE和DELETE,最重要的,也是使用最频繁的语句是____。A.SELECTB.INSERTC.UPDATED.DELETE31 5.FoxBASE、FoxPro属于________。A.表式系统B.最小关系系统C.关系完备的系统D.全关系系统6.关系规范化中的插入操作异常是指________。A.不该删除的数据被删除B.不该插入的数据被插入C.应该删除的数据未被删除D.应该插入的数据未被插入7.消除了部分函数依赖的INF的关系模式,必定是____。A.1NFB.2NFC.3NFD.4NF8.在关系数据库设计中,设计关系模式是____的任务。A.需求分析阶段B.概念设计阶段C.逻辑设计阶段D.物理设计阶段9.____是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列。A.程序B.命令C.事务D.文件10.设有两个事务T1、T2,其并发操作如图1所示,下面评价正确的是____。A.该操作不存在问题B.该操作丢失修改C.该操作不能重复读D.该操作读“脏”数据T1T2①读A=10②读A=10③A=A-5写回31 ④A=A-8写回图1事务并发操作图二、填空题(20分,每小空2分):1.①一致2.②实体完整性③参照完整性3.④属性名4.⑤设置用户标识和存取权限控制5.⑥物理6.⑦不部分函数依赖于7.⑧选择⑨投影⑩连接1.如果数据库中只包含成功事务提交的结果,就说数据库处于①状态。2.完整性约束是指②和③。3.关系数据库中可命名的最小数据单位是④。4.保护数据安全性的一般方法是⑤。5.“为哪些表,在哪些字段上,建立什么样的索引”这一设计内容应该属于数据库设计中的⑥设计阶段。6.若关系为1NF,且它的每一非主属性都⑦候选码,则该关系为2NF。31 7.关系代数运算中,专门的关系运算有⑧、⑨和⑩。三、简答题和综合题(15分,每小题5分):1.举例说明关系参照完整性的含义。2.数据库管理系统有哪些功能?3.事务中的提交和回滚是什么意思?四、综合题(45分):1.假定一个部门的数据库包括以下的信息:(10分)职工的信息:职工号、姓名、住址和所在部门。部门的信息:部门所有职工、经理和销售的产品。产品的信息:产品名、制造商、价格、型号及产品内部编号。制造商的信息:制造商名称、地址、生产的产品名和价格。完成如下设计:(1)设计该计算机管理系统的E-R图;(5分)(2)将该E-R图转换为关系模型结构;(3分)(3)指出转换结果中每个关系模式的候选码。(2分)2.设有关系S、SC、C,试用关系代数、元组关系演算表达式和SQL完成下列操作。(15分,每小题5分)S(S#,SNAME,AGE,SEX)例:(001,"李强",23,’男")31 SC(S#,C#,SCORE)例:(003,"C1",83)C(C#,CNAME,TEACHER)例:("C1","数据库原理","王华")(1)用关系代数检索既选修了C1课程,又选修了C2课程的学生学号(S#)。(2)用元组关系演算表达式检索年龄大于21的男生的学号和姓名。(3)用SQL找出“程序设计”课程成绩在90分以上的学生姓名。3.设有函数依赖集F={D→G,C→A,CD→E,A→B},计算闭包D+,(AC)+,(ACD)+。(10分)4.设有关系R和函数依赖F:(10分)R(X,Y,Z),F={Y→Z,XZ→Y}。试求下列问题:(1)关系R属于第几范式?(5分)(2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。(5分)要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。试题答案一、选择题(20分,每小题2分):1.B2.C3.B4.A5.B6.D7.B8.C9.C10.B二、填空题(20分,每小空2分):1.①一致31 2.②实体完整性③参照完整性3.④属性名4.⑤设置用户标识和存取权限控制5.⑥物理6.⑦不部分函数依赖于7.⑧选择⑨投影⑩连接三、简答题(15分,每小题5分):1.举例说明关系参照完整性的含义。答:假如有下表所示的两个关系表,在成绩表中,学号是主码,课程号是外码:在课程表中课程号是主码,根据关系参照完整性的定义,R2是成绩表,R1是课程表,也就是成绩表中课程号的值或者为空或者在课程表中的课程号中能够找到。成绩表课程表学号姓名课程号成绩101刘军k580212王丽k876221章华k992¼31 课程号课程号k5高等数学k8C语言nk9计算机网络¼满足这个条件是必须的,如果不满足,假设成绩表中课程号的值k20在课程表中课程号的值中找不到,则该课程号显然是不正确的,这样会造成数据的不一致性。2.数据库管理系统有哪些功能?答:数据库管理系统(DBMS)是位于操作系统与用户之间的一个数据管理软件,它主要功能包括以下几个方面:•数据定义功能DBMS提供数据描述语言(DDL),用户可通过它来定义数据。•数据操纵功能DBMS还提供数据操纵语言(DML),实现对数据库的基本操作:查询、插入、删除和修改。•数据库的运行管理这是DBMS运行时的核心部分,它包括开发控制,安全性检查,完整性约束条件的检查和执行,数据库的内容维护等。•数据库的建立和维护功能它包括数据库初始数据的输入及转换,数据库的转储与恢复,数据库的重组功能和性能的监视与分析功能等。3.事务中的提交和回滚是什么意思?31 答:事务中的提交(COMMIT)是提交事务的所有操作。具体说就是将事务中所有对数据库的更新写回到磁盘上的物理数据库中去,事务正常结束。事务中的回滚(ROLLBACK)是数据库滚回到事务开始时的状态。具体地说就是,在事务运行的过程中发生了某种故障,事务不能继续执行,系统将事务中对数据库的所有已完成的更新操作全部撤消,使数据库回滚到事务开始时的状态。四、综合题(45分):1.(1)设计该计算机管理系统的E-R图;(5分)(2)将该E-R图转换为关系模型结构;(3分)(3)指出转换结果中每个关系模式的候选码。(2分)解:本题对应的E-R图如图2所示。31 图2E-R图2.(1)用关系代数检索既选修了C1课程,又选修了C2课程的学生学号。(∏SNAME(SC#="C1"(SC)))∩(∏SNAME(SC#="C2"(SC)))(2)用元组关系演算表达式检索年龄大于21的男生的学号和姓名。{t(2)|($r)(S(r)∧t[1]=r[1]∧t[2]=r[2]∧r[3]>21∧r[4]="男")}(3)用SQL找出“程序设计”课程成绩在90分以上的学生姓名。解:SELECTSNAMEFROMS,SC,CWHERES.S#=SC.S#ANDSC.C#=C.C#ANDSCORE>=90ANDCNAME="程序设计"或者SELECTSNAMEFROMSWHERERS.S#IN(SELECTS#FROMSCWHERESCORE>=90ANDC.C#IN(SELECTC#31 FROMCWHERECNAME="程序设计")3.设有函数依赖集F={D→G,C→A,CD→E,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)+=ABCDEG。4.设有关系R和函数依赖F:(10分)R(X,Y,Z),F={Y→Z,XZ→Y}。试求下列问题:(1)关系R属于第几范式?(5分)(2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。(5分)要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。解:R是3NF。侯选码为XY和XZ,R中所有属性都是主属性,不存在非主属性对码的传递依赖。R1(X,Y,Z),F={XZ→Y}R2(Y,Z),F={Y→Z}消除了非主属性对码的传递依赖。31 F1和F2中的函数依赖都是非平凡的,并且决定因素是候选码,所以上述关系模式是BCNF。《数据库系统概论》试题C一、选择题(20分,每小题2分):1.B2.A3.D4.C5.A6.D7.C8.B9.A10.D1.数据库系统与文件系统的主要区别是____。A.数据库系统复杂,而文件系统简单B.文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决C.二文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件D.文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量2.同一个关系模型的任意两个元组值____。A.不能全同B.可全同C.必须全同D.以上都不是3.自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的____。A.元组B.行C.记录D.属性4.SQL语言具有两种使用方式,分别称为交互式SQL和____。A.提示式SQLB.多用户SQLC.嵌入式SQLD.解释式SQL5.关系规范化中的删除操作异常是指________。A.不该删除的数据被删除B.不该插入的数据被插入C.应该删除的数据未被删除D.应该插入的数据未被插入6.属于BCNF的关系模式________。A.已消除了插入、删除异常B.已消除了插入、删除异常和数据冗余C.仍然存在插入、删除异常31 D.在函数依赖范畴内,已消除了插入和删除的异常7.从E-R模型关系向关系模型转换时,一个M:N联系转换为关系模式时,该关系模式的关键字是____。A.M端实体的关键字B.N端实体的关键字C.M端实体关键字与N端实体关键字组合D.重新选取其他属性8.数据库的____是指数据的正确性和相容性。A.安全性B.完整性C.并发控制D.恢复9.授权编译系统和合法性检查机制一起组成了____子系统。A.安全性B.完整性C.并发控制D.恢复10.设有两个事务T1、T2,其并发操作如图1所示,下列评价正确的是____。A该操作不存在问题B.该操作丢失修改C.该操作不能重复读D.该操作读“脏”数据T1T2①读A=100A=A*2写回②读A=200③ROLLBACK恢复A=100图1事务并发操作图二、填空题(20分,每小空2分):1.DBMS的基本工作单位是事务,它是用户定义的一组逻辑一致的程序序列;并发控制的主要方法是①机制。2.系统在运行过程中,由于某种原因,造成系统停止运行,致使事务在执行过程中以非控制方式终止,这时内存中的信息丢失,而存储在外存上的数据不受影响,这种情况称为②。3.关系数据库中基于数学上两类运算是③和④。4.数据库设计的几个步骤是⑤。5.1NF,2NF,和3NF之间,相互是一种⑥关系。6.视图是一个虚表,它是从⑦中导出的表。在数据库中,只存放视图的⑧,不存放视图的⑨。7.关系操作的特点是⑩操作。31 三、简答题(15分,每小题5分):1.什么是数据库?2.什么是数据库的数据独立性?3.叙述等值连接与自然连接的区别和联系。四、综合题(45分): 1.设有如下实体:(10分)学生:学号、单位、姓名、性别、年龄、选修课程名课程:编号、课程名、开课单位、任课教师号教师:教师号、姓名、性别、职称、讲授课程编号单位:单位名称、电话、教师号、教师名上述实体中存在如下联系:(1)一个学生可选修多门课程,一门课程可为多个学生选修;(2)一个教师可讲授多门课程,一门课程可为多个教师讲授;(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,"C1",83)C(C#,CNAME,TEACHER)例:("C1","数据库原理","王华")(1)试用关系代数检索选修了“程军”老师所授课程之一的学生姓名。(2)试用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生姓名。(2)试用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生学号。31 (3)试用SQL找出“程序设计”课程成绩在90分以上的学生姓名。3.设有关系模式R(U,F),其中:(10分)U={A,B,C,D,E},F={A→BC,CD→E,B→D,E→A}。⑴计算B+。(2分)⑵求R的所有候选码。(8分)4.设有关系STUDENT(S#,SNAME,SDEPT,MNAME,CNAME,GRADE),S#,CNAME为候选码,设关系中有如下函数依赖:(10分)S#,CNAME→SNAME,SDEPT,MNAMES#→SNAME,SDEPT,MNAMES#,CNAME→GRADESDEPT→MNAME试求下列问题:(1)关系STUDENT属于第几范式?(5分)(2)如果关系STUDENT不属于BCNF,请将关系STUDENT逐步分解为BCNF。(5分)要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。 31 试题答案一、选择题(20分,每小题2分):1.B2.A3.D4.C5.A6.D7.C8.B9.A10.D二、填空题(20分,每小空2分):1.①封锁2.②系统故障3.③关系代数④关系演算4.⑤需求分析,概念设计,逻辑设计,物理设计,编码和调试5.⑥3NF2NFLNF成立6.⑦一个或几个基本表⑧定义⑨视图对应的数据7.⑩集合三、简答题(15分,每小题5分):1.什么是数据库?答:数据库是长期存储在计算机内、有组织的、可共享的数据集合。数据库是按某种数据模型进行组织的、存放在外存储器上,且可被多个用户同时使用。因此,数据库具有较小的冗余度,较高的数据独立性和易扩展性。2.什么是数据库的数据独立性?答:数据独立性表示应用程序与数据库中存储的数据不存在依赖关系,包括逻辑数据独立性和物理数据独立性。逻辑数据独立性是指局部逻辑数据结构(外视图即用户的逻辑文件)与全局逻辑数据结构(概念视图)之间的独立性。当数据库的全局逻辑数据结构(概念视图)发生变化(数据定义的修改、数据之间联系的变更或增加新的数据类型等)时,它不影响某些局部的逻辑结构的性质,应用程序不必修改。物理数据独立性是指数据的存储结构与存取方法(内视图)改变时,对数据库的全局逻辑结构(概念视图)和应用程序不必作修改的一种特性,也就是说,数据库数据的存储结构与存取方法独立。31 数据独立性的好处是,数据的物理存储设备更新了,物理表示及存取方法改变了,但数据的逻辑模式可以不改变。数据的逻辑模式改变了,但用户的模式可以不改变,因此应用程序也可以不变。这将使程序维护容易,另外,对同一数据库的逻辑模式,可以建立不同的用户模式,从而提高数据共享性,使数据库系统有较好的可扩充性,给DBA维护、改变数据库的物理存储提供了方便。3.叙述等值连接与自然连接的区别和联系。答:等值连接表示为RA=BS,自然连接表示为RS;自然连接是除去重复属性的等值连接。两者之间的区别和联系如下:l自然连接一定是等值连接,但等值连接不一定是自然连接。等值连接不把重复的属性除去;而自然连接要把重复的属性除去。l等值连接要求相等的分量,不一定是公共属性;而自然连接要求相等的分量必须是公共属性。l等值连接不把重复的属性除去;而自然连接要把重复的属性除去。四、综合题(45分): 1.试完成如下工作:(10分)(1)分别设计学生选课和教师任课两个局部信息的结构E-R图。(4分)(2)将上述设计完成的E-R图合并成一个全局E-R图。(3分)(3)将该全局E-R图转换为等价的关系模型表示的数据库逻辑结构。(3分)解:(1)学生选课局部E-R图如图2所示,教师任课局部E-R图如图3所示。(2)合并的全局E-R图如图4所示。为避免图形复杂,下面给出各实体属性:单位:单位名、电话学生:学号、姓名、性别、年龄教师:教师号、姓名、性别、职称课程:编号、课程名(3)该全局E-R图转换为等价的关系模型表示的数据库逻辑结构如下:单位(单位名,电话)31 教师(教师号,姓名,性别,职称,单位名)课程(课程编号,课程名,单位名)学生(学号,姓名,性别,年龄,单位名)讲授(教师号,课程编号)选修(学号,课程编号)n课程开课1课程名教师号编号n学生拥有单位1年龄单位名姓名性别学号选修mn图2学生选课局部E-R图课程编号1单位属于教师n电话单位名讲授mn职称姓名性别教师号图3教师任课局部E-R图教师n学生拥有单位1属于1nn课程讲授mmn选修开设1n图4合并的全局E-R图31 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)试用关系代数检索选修了“程军”老师所授课程之一的学生姓名。∏SNAME(SSCTEACHER="程军"(C))(2)试用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生姓名。{T(1)|($U)($V)($W)(S(U)∧SC(V)∧C(W)∧T[1]=U[1]∧U[1]=V[1]∧V[2]=W[1]∧W[3]="程军")}(2)试用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生学号。{T(1)|($V)($W)(SC(V)∧C(W)∧T[1]=V[1]∧V[2]=W[1]∧W[3]="程军")}(3)找出“程序设计”课程成绩在90分以上的学生姓名。SELECTSNAMEFROMS,SC,CWHERES.S#=SC.S#ANDSC.C#=C.C#ANDSCORE>=90ANDCNAME="程序设计"或者SELECTSNAMEFROMSWHERERS.S#IN(                 SELECTS#                 FROMSC                 WHERESCORE>=90ANDC.C#IN(                                                SELECTC#                                                FROMC                                                WHERECNAME="程序设计")3.设有关系模式R(U,F),其中:(10分)U={A,B,C,D,E},F={A→BC,CD→E,B→D,E→A}。31 ⑴计算B+。(2分)⑵求R的所有候选码。(8分)解:⑴令X={B},X(0)=B,X(1)=BD,X(2)=BD,故B+=BD。⑵根据候选码的定义,R的候选码只可能由F中各个函数依赖的左边属性组成,即A,B,C,D,E,由于A→BC(A→B,A→C),B→D,E→A,故:可除去A,B,C,D,_组成候选码的属性可能是E。计算可知:E+=ABCDE,即E→U,_E是一个候选码。可除去A,B,E,_组成候选码的属性可能是CD。计算可知:(CD)+=ABCDE,即CD→U,但C+=C,D+=D,_CD是一个候选码。可除去B,C,D,E,_组成候选码的属性可能是A。计算可知:A+=ABCDE,即A→U,_A是一个候选码。可除去A,D,E,_组成候选码的属性可能是BC。计算可知:(BC)+=ABCDE,即CD→U,但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#→SNAME,SDEPT,MNAMES#,CNAME→GRADESDEPT→MNAME试求下列问题:(1)关系STUDENT属于第几范式?(5分)(2)如果关系STUDENT不属于BCNF,请将关系STUDENT逐步分解为BCNF。(5分)要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。 31 解:(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,GRADE)R11(S#,SNAME,SDEPT)R12(SDEPT,MNAME)R2,R11,R12关系模式存在的函数依赖S#,CNAME→GRADE S#,SNAME→SNAME,SDEPT SDEPT→MNAME上述函数依赖都是非平凡的,并且决定因素是候选码,所以上述关系模式是BCNF。综合设计题某单位资料室要建立一个图书管理系统,初步的需求分析结果如下:l资料室有图书管理员若干名,他们负责已购入图书的编目和借还工作,每名图书管理员的信息包括工号和姓名;l读者可在阅览室读书,也可通过图书流通室借还图书,读者信息包括读者ID、姓名、电话和E-mail,系统为不同读者生成不同的读者ID;l每部书在系统中对应唯一的一条图书在版编目数据(CIP,以下简称书目),书目的基本信息包括ISBN号、书名、作者、出版商、出版年月,以及本资料室拥有该书的册数,不同书目的ISBN号不相同;l资料室对于同一书目的图书可拥有多册(本),图书信息包括图书ID、ISBN号、存放位置、当前状态,每一本书在系统中被赋予唯一的图书ID;31 l一名读者最多只能借阅十本图书,且每本图书最多只能借两个月,读者借书时需由图书管理员登记读者ID、所借图书ID、借阅时间和应还时间,读者还书时图书管理员在对应的借书信息中记录归还时间。某书目的信息以及与该书目对应的图书信息如下表所示。书目信息书名作者出版商ISBN号出版年月册数经办人数据结构严蔚敏清华大学出版社ISBN7-302-02368-91997.4401图书信息图书IDISBN号存放位置状态经办人C832.1ISBN7-302-02368-9图书流通室已借出01C832.2ISBN7-302-02368-9图书阅览室不外借01C832.3ISBN7-302-02368-9图书流通室未借出011.根据上述语义设计此图书管理的E-R模型,在E-R图中需注明实体的属性、联系的类型及实体的标识符。2.将E-R模型转换成关系模型,并指出每个关系模式的主码和外码。3.分析每个关系模式已经达到第几范式。1.解:E-R图:实体及实体属性描述如下:管理员(工号,姓名)31 读者(读者ID,姓名,电话,E-mail)书目(ISBN号,书名,作者,出版商,出版年月,册数)图书(图书ID,存放位置,状态)2.该E-R图转换为等价的关系模型表示的数据库逻辑结构如下:管理员(工号,姓名)读者(读者ID,姓名,电话,E-mail)书目(ISBN号,书名,作者,出版商,出版年月,册数,经办人)Foreighkey:经办人图书(图书ID,ISBN号,存放位置,状态,经办人)Foreighkey:ISBN号,经办人借阅(读者ID,图书ID,借出时间,应还时间,归还时间)Foreighkey:读者ID,图书ID3.以上关系模式均达到BCNF。31'