《数据库原理期末考试试卷答.pdf》由会员分享,可在线阅读,更多相关《数据库原理期末考试试卷答.pdf(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、山西大学2008 级数据库原理试卷答案一、填空题(共10 分,每空1 分)1、从数据库管理系统的角度划分数据库系统的体系结构,可分为()、()和()3层。答案:外模式、模式、内模式2、RDBMS 的中文意思是()。答案:关系数据库管理系统3、在关系代数中,连接是由笛卡尔积和()运算组合而成的。答案:选择4、通过模式分解把属于低级范式的关系模式转换为几个属于高级范式的关系模式的集合,这一过程称为()。答案:规范化5、要使关系模式属于第三范式,既要消除(),也要消除()。答案:非主属性对码的部分依赖、非主属性对码的传递依赖6、利用游标进行查询需要4 种语句,分别是说明游标、()、()和关闭游标。答
2、案:打开游标、推进游标二、单选题(共10 分,每题1 分)1、数据库系统的基础是()。A.数据结构B.数据库管理系统C.操作系统D.数据模型答案:D 2、经过投影运算后,所得关系的元组数()原关系的元组数。A.等于B.小于C.小于或等于D.大于答案:C 3、关系 R 与关系 S只有 1 个公共属性,T1 是 R 与 S作连接的结果,T2 是 R 与 S作自然连接的结果,则()。A.T1 的属性个数等于T2 的属性个数B.T1 的属性个数小于T2 的属性个数C.T1 的属性个数大于或等于T2 的属性个数D.T1 的属性个数大于T2 的属性个数答案:D 4、在 SQL 中,与关系代数中的投影运算对
3、应的子句是()A.SELECT B.FROM C.WHERE D.ORDER BY 答案:A 5、在 SQL 的排序子句:ORDER BY 总分DESC,英语DESC 表示()A.总分和英语分数都是最高的在前面B.总分和英语分数之和最高的在前面C.总分高的在前面,总分相同时英语分数高的在前面D.总分和英语分数之和最高的在前面,相同时英语分数高的在前面答案:C 6、下面哪一个依赖是平凡依赖()A.Sno Cname Grade Sno Grade B.Sno CnameCname Grade C.Sno CnameSname Grade D.以上答案都不是答案:A 7、已知关系R 具有属性A,B
4、,C,D,E,F。假设该关系有如下函数依赖:AB C,BCAD,D E,CFB。则 A,B 的闭包是()。A.A,B,C,D,E,F B.A,B,C C.A,B,C,D,E D.A,B 答案:C 8、一个关系模式R(x1,x2,x3,x4),假定该关系存在着如下函数依赖:x1 x2,x1x3,x3x4,则该关系属于()。A.2NF B.3NF C.4NF D.BCNF 答案:A 9、保护数据库中的信息,防止未经授权或非法的使用所造成的数据泄漏、更改或破坏,称为数据库的()。A.安全性B.完整性C.恢复D.并发控制答案:A 10、有两个变量cno,cname 已赋值,对应关系COURSE 中字段
5、 cno,cname。则将表中指定cno 值的数据对应的cname属性值改变为新指定的正确的嵌入式 SQL 语句格式是()。A.EXEC SQL UPDA TE COURSE SET(cname=:cname)WHERE cno=:cno;B.EXEC SQL UPDA TE COURSE SET(cname=cname)WHERE cno=cno;C.EXEC SQL UPDA TE COURSE SET(:cname=cname)WHERE:cno=cno;D.EXEC SQL UPDA TE COURSE SET(:cname=:cname)WHERE:cno=:cno;答案:A 三、判
6、断题(共10 分,每题1 分)1、在设计基本E-R 图时,必须消除所有的冗余数据和冗余联系。()答案:错2、查询优化主要是物理方法的优化,而逻辑方法优化与否影响不大。()答案:错3、一个数据库可以建立多个聚簇,但一个关系只能加入一个聚簇。()答案:对4、当查询结果为多个元组时,交互式SQL 中采用游标机制来指示所取出元组的位置。()答案:错5、数据库重组织与重构造的差别在于:重组织并不修改原有的逻辑模式和内模式;而重构造会部分修改原有的逻辑模式和内模式。()答案:对6、物理设计阶段,根据DBMS 的特点和处理需要,选择存储结构,建立索引,形成数据库的模式。()答案:错7、逻辑设计可以独立于数据
7、库管理系统。()答案:错8、若并发事务的调度是可串行化的,则这些事务一定都遵守两段锁协议。()答案:错9、事务故障的恢复是由系统自动完成的,对用户是透明的。()答案:对10、一个一对多联系可以转换为一个独立的关系模式,也可以与1 端对应的关系模式合并。答案:错四、简答题(共12 分,每题4 分)1、关系模型有何特点?答案:1.关系模型建立在严格的数学概念的基础上;(1 分)2.关系模型的概念单一。无论实体还是实体之间的联系都用关系来表示。对数据的检索和更新结果也是关系。数据结构简单、清晰,用户易懂易用;(2 分)3.关系模型的存取路径对用户透明。(1 分)2、数据库系统中可能发生的故障大致可以
8、分为哪几类?简述各类故障的恢复机制。答案:数据库系统中的故障大致可分为事务内部的故障,系统故障,介质故障以及计算机病毒等。(2 分)对于事务故障,恢复子系统应利用日志文件撤销(UNDO)此事务已对数据库进行的修改;对于系统故障,恢复操作就是要撤销故障发生时未完成的事务,重做已完成的事务;对于介质故障,恢复方法是重装数据库,然后重做已完成的事务。(2 分)3、简述画E-R 图时区别实体与属性的两条准则是什么?答案:(1)作为“属性”,不能再具有需要描述的性质;(2 分)(2)“属性”不能与其他实体具有联系,即E-R 图中所表示的联系时实体之间的联系。(2分)五、综合题(共58 分)1、假设学生选
9、课数据库关系模式如下:(10 分)STUDENT(SNO,SNAME,SAGE,SDEPT);COURSE(CNO,CNAME);SC(SNO,CNO,SCORE)(1)用 SQL 语句实现如下查询:查询学生张林的“数据库原理”成绩;(2)将上述SQL 语句转化为等价的关系代数表达式;(3)画出优化后的查询树。答案:(1)SELECT SCORE(3分)FROM STUDENT,COURSE,SC WHERE STUDENT.SNO=SC.SNO AND COURSE.CNO=SC.CNO AND SNAME=张林AND CNAME=数据库原理(2)SCORE(SNAME=张林(STUDENT
10、)SC(CNAME=数据库原理(COURSE)(3 分)(3)SCORE CNAME=数据库原理2、指出下列关系模式是第几范式?并说明理由。(10 分)(1)R(X,Y,Z)F=X Y,XZ(2)R(A,B,C,D,E)F=AB C,AB E,A D,BD ACE(3)R(W,X,Y,Z)F=X Z,WX Y 答案:(1)BCNF(2 分)。R 的候选码为X,而且 F 中每一个函数依赖的左部都包含了候选码 X。(1 分)(2)3NF(2 分)。R 的候选码是AB 和 BD,R 中非主属性C 和 E 都直接且完全函数依赖于候选码AB 和 BD,但存在主属性D 对候选码AB 的部分函数依赖,因此
11、R 最高属于3NF。(1 分)(3)1NF(2 分)。R 的候选码为WX,则 Y,Z 为非主属性,又由于X Z,因此 F中存在非主属性对候选码的部分函数依赖。(2 分)3、一个车间有多个工人,每个工人有职工号、姓名、年龄、性别、工种;一个车间生产多种产品,产品有产品号、价格;一个车间生产多种零件,一种零件也可能为多个车间制造,零件有零件号、重量、价格;一种产品由多种零件组成,一种零件也可装配到多种产品中,产品与零件均存入仓库中;厂内有多个仓库,仓库有仓库号、主任姓名、电话;请画出该系统的ER 图,并给出相应的关系模型,要求注明主码和外码,其中主码用下划线标出,外码用波浪线标出。(18 分)答案
12、:(ER 图 10 分,其中每个联系的类型为0.5 分)关系模型如下:工厂(厂名,厂长名)(1 分)车间(车间号,主任姓名,地址,电话,厂名)(1 分)仓库(仓库号,主任姓名,电话,厂名)(1 分)零件(零件号,重量,价格,仓库号)(1 分)产品(产品号,价格,仓库号)(1 分)工人(职工号,姓名,年龄,性别,工种,车间号)(1 分)制造(车间号,零件号,数量1),其中车间号和零件号都是外码(1 分)组成(产品号,零件号,数量2),其中产品号和零件号都是外码(1 分)4、关系模式如下:(20 分)学生 S(SNO,SN,SEX,AGE)课程 C(CNO,CN,PCNO)PCNO 为直接先行课选
13、课 SC(SNO,CNO,G)G 为课程考试成绩(1)用关系代数及SQL 语言写出查询语句,查询所有学生都选修的课程名CN。(2)用关系代数及SQL 语言写出查询语句,查询“DB”课成绩在90 分以上的学生的姓名。(3)将选修课程“DB”的学生学号,姓名建立视图SDB。(4)在学生选课关系SC 中,把英语课的成绩提高10%。答案:(1)CN(CNO,SNO(SC)SNO(S)CNO,CN(C)(3 分)SELECT CN FROM C WHERE NOT EXISTS(SELECT*FROM S WHERE NOT EXISTS(SELECT*FROM SC WHERE SNO=S.SNO A
14、ND CNO=C.CNO);(3 分)(2)SN(S G90(SC)CN=DB(C)(3 分)SELECT SN FROM S,SC,C WHERE S.SNO=SC.SNO AND SC.CNO=C.CNO AND CN=DB AND G90;(3 分)(3)CTEATE VIEW SDB AS SELECT SNO,SN FROM S,SC,C WHERE S.SNO=SC.SNO AND SC.CNO=C.CNO AND C.CN=DB;(4 分)(4)UPDA TE SC SET G=1.1*G WHERE CNO IN(SELECT CNO FROM C WHERE CN=英语);(4 分)/本文章来源于“http:/”,原文出处:http:/