数据库模拟试卷4及答案

更新时间:2023-11-08 09:50:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

模拟试卷4 题号 得分 一、单项选择题(每小题1.5分,共30分)30% 得分 一 二 三 四 五 六 七 八 九 十 总分 在每小题列出的四个选项中只有一个是符合题目要求的,请将其代码填在题后的括号内。错选或未选均无分。

一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题1分,共10分)

1.要保证数据库的数据独立性,需要修改的是( )

A.三层模式之间的两种映射 B.模式与内模式 C.模式与外模式 D.三层模式 2.下列四项中说法不正确的是( )

A.数据库减少了数据冗余 B.数据库中的数据可以共享

C.数据库避免了一切数据的重复 D.数据库具有较高的数据独立性

3.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是( )

A.多对多 B.一对一 C.多对一 D.一对多

4.下列四项中,必须进行查询优化的是( )

A.关系数据库 B.网状数据库 C.层次数据库 D.非关系模型 5.在视图上不能完成的操作是( )

A.更新视图 B.查询

C.在视图上定义新的基本表 D.在视图上定义新视图

6.关系数据模型的三个组成部分中,不包括( )

A.完整性规则 B.数据结构 C.恢复 D.数据操作

7.关系代数表达式的优化策略中,首先要做的是( )

A.对文件进行预处理 B.尽早执行选择运算

C.执行笛卡儿积运算 D.投影运算

4/16/2013 共 9 页 第1页

8.下列四项中,不属于关系数据库特点的是( )

A.数据冗余小 B.数据独立性高 C.数据共享性好 D.多用户访问 9.数据库的并发操作可能带来的问题包括( )

A.丢失更新 B.数据独立性会提高

C.非法用户的使用 D.增加数据冗余度 10.在基本SQL语言中,不可以实现( )

A.定义视图 B.定义基表 C.查询视图和基表 D.并发控制

11.SQL中,聚合函数SUM(列名)用于( )

A.对数值型列中的值求和 B. 计算属性的个数

C.对一列中的非空值计算个数 D. 对一列中的非空值和空值计算个数

12.数据库的并发操作若不加以控制可能带来的问题包括( ) A.读脏数据 B.数据独立性会提高 C.非法用户的使用 D.都不是 13.取出一个关系中的某些满足条件元组的关系运算称为( )。 A.并运算 B.投影运算 C.选择运算 D.自然连接运算 14.外模式DDL用来描述 ( )

A. 数据库的总体逻辑结构B. 数据库的局部逻辑结构 C. 数据库的物理存储结构D. 数据库的概念结构

15. 如果事务T1获得了数据项A上的S锁,根据相容矩阵则事务T2可获得对A 的锁的类型是( )

A. S锁 B. S锁或X锁 C. X锁 D. 都不能

16.如果一个满足1NF关系的所有非主属性不部分和传递函数依赖于关键字,则该必定满足的最高范式是( ) A. 1NF B. 3NF C. 2NF D.BCNF

17.两段锁协议中要求在释放一个封锁之后,事务不再申请和获得( ) A. S锁 B. S锁或X锁 C. X锁 D. 任何锁

18. 修改列值时新旧值之间要满足的约束条件属于( ) A. 静态列级约束 B. 动态列级约束 C. 静态元组约束 D. 动态元组约束

19.采用静态转储方式的数据库在数据库恢复时, 转储的后备副本连同( )可将数据库恢复到一致状态.

A. 后像文件 B. 前像文件

C. 日志文件 D. 以上三者都不需要

20.一个职工可参加多项比赛,一项比赛可多个职工参加,在用E-R图描述职工和比赛项目之间的联系图中,联系转换为关系模式时,该关系模式的码为( )

A. 职工的码 B. 比赛项目的码

C. 职工和比赛项目的码的组合 D. 以上三者都不是

共 9 页 第 2 页

二、填空题(每空1分,共10分),10%

得分 1.数据库管理系统(DBMS)由以下三类程序组成:语言、控制数据库运行和维护数据库,其中的语言系统分为主语言和______。

2.通过加锁可以保证处理程序并发时的数据______。 3.关系代数中专门的关系运算包括:选择、投影、______和除法。

4.数据库中常用的四种文件组织方式是:顺序文件、______、散列文件、倒排文件。

5.从关系规范化理论的角度讲,一个只满足1NF的关系可能存在的四方面问题是:数据冗余度大、修改异常、插入异常和______。

6.关系数据操作语言(DML)的特点是:操作对象与结果均为关系、操作的______、语言一体化、并且是建立在数学理论基础之上。

7.数据库的物理设计主要考虑三方面的问题:______、分配存储空间、实现存取路径。

8.如果一个满足1NF关系的所有属性合起来组成一个关键字,则该关系最高满足的范式是______(在1NF、2NF、3NF范围内)。 9.数据库完整性的静态约束条件分为:值的约束和______。 10.构成系统说明书的两个重要文档是______。

三、简答题(共23分)23%

1、设关系模式R,其中U={A,B,C,D,E},

若F={A→BC,C→D,BCD→E,E→D},则关系模式R的候选关键字是什么,并指出R所属的范式最高等级及原因。(6分)

4/16/2013 共 9 页 第3页

得分 装

2、阐述活锁的产生原因及解决办法?(4分)

2、 登记日志文件时,为什么必须遵守“先写日志文件,后写数据库”

的原则?(4分)

3、 建索引的目的是什么?那些情况宜建索引?(4分)

4、 视图的作用是什么?为什么说视图的更新是有条件的?(5分)

四、设计题(每小题3分,共24分) 24 %

得分 现有关系数据库如下:

学生(学号,姓名,性别,专业、奖学金) 课程(课程号,名称,学分) 学习(学号,课程号,分数) 用关系代数表达式实现下列1—4小题:

1.检索“国际贸易”专业中获得奖学金的学生信息,包括学号、姓名、课程名和分数;

2.检索学生成绩得过满分(100分)的课程的课程号、名称和学分;

共 9 页 第 4 页

3.检索没有获得奖学金、同时至少有一门课程成绩在95分以上的学生信息,包括学号、姓名和专业;

4.检索没有任何一门课程成绩在80分以下的学生的信息,包括学号、姓名和专业;

用SQL语言实现下列5—8小题:

5.检索没有获得奖学金、同时至少有一门课程成绩在95分以上的学生信息,包括学号、姓名和专业;

6.检索没有任何一门课程成绩在80分以下的所有学生的信息,包括学号、姓名和专业;

7.对成绩得过满分(100分)的学生,如果没有获得奖学金的,将其奖学金设为1000元;

8.定义学生成绩得过满分(100分)的课程视图AAA,包括课程号、名称和学分;

五、综合题(本大题13分) 13 %

得分 现有如下关系模式: R(A#,B#,C,D,E) 其中:A#B#组合为码

R上存在的函数依赖有A#B#→E,B#→C,C→D 1.该关系模式满足2NF吗?为什么? 2.如果将关系模式R分解为: R1(A#,B#,E) R2(B#,C,D)

指出关系模式R2的码,并说明该关系模式最高满足第几范式?(在1NF~BCNF之内)。 3.将关系模式R分解到BCNF。

4.在E-R模型中,如果实体间是1∶M的联系,如何设计相应部分的关系模型?

模拟试卷4答案

一、单项选择题(每小题1分,共10分)

1.A 2.C 3.C 4.A 5.C 6.C 7.B 8.D 9.A 10.D 11 12 13 14 15 16 17 18 19 20 4/16/2013 共 9 页 第5页

A A C B A B D B D C 二、填空题(每小题1分,共10分) 1.数据子语言 2. 层次模型 3. 谓词演算 4. 自反

5. 删除异常 6. 非过程性强 7. 不一致分析 8. 隔离性

9. 选择存储结构 10. 结构的约束

三、简答题(每小题4分,共24分)

1、设关系模式R,其中U={A,B,C,D,E},

若F={A→BC,C→D,BCD→E,E→D},则关系模式R的候选码是什么,并指出R所属的范式最高等级及原因。(6分) 答:E只在函数依赖的右边出现,所以候选码中不可能包含E;A

只在函数依赖的左边出现,所以候选码中一定包含A; 根据F,AF+=ABCDE=U,所以A为候选码。

另,除A外,其他几个属性BCD及其组合在F上的闭包都不等于U,所以,关系模式R的候选码为A。 由于A是单属性,所以R至少是2NF。

因A→BC,所以A→C,由于 C→D,所以D传递函数依赖于A。所以R不是3NF。

R范式最高等级为2NF 。

2、阐述活锁的产生原因及解决办法?(4分)

答:如果事务T1封锁了数据对象R,另一事务T2申请对它加锁就需要等待。若此时还有其他事务T3申请对R加锁,系统根据相容矩阵首先批准了T3的请求。导致T2继续等待,若有更多的事务如T4,T5…请求对R加锁系统在相容矩阵允许的情况下批准了它们的请求,从而导致T2无限期地等待下去。这样导致活锁的产生。

解决办法是采用先来先服务的策略:当多个事务请求封锁同一数据对象时,按请求封锁的先后次序对这些事务排队,该数据对象上的锁一旦释放,首先批准申请队列中第一个事务获得锁。

共 9 页 第 6 页

5、 登记日志文件时,为什么必须遵守“先写日志文件,后写数据库”

的原则?(4分)

答:写数据库和写日志文件是两个不同的操作,在这两个操作之间可能发生故障,如果先写了数据库修改,而在日志文件中没有登记下这个修改,则以后就无法恢复这个修改了,如果先写日志,但没有修改数据库,按日志文件恢复时只不过是多执行一次不必要的UNDO操作,并不会影响数据库的正确性。

6、 建索引的目的是什么?那些情况宜建索引?(4分) 答:建索引的目的是提高数据查询速度。 下列情况宜建索引:

1)如果一个(或一组)属性经常在查询条件中出现,则考虑在这个(或这组)属性上建立索引(或组合索引);

2)如果一个属性经常作为最大值和最小值等聚集函数的参数,则考虑在这个属性上建立索引;

3)如果一个(或一组)属性经常在连接操作的连接条件中出现,则考虑在这个(或这组)属性上建立索引。

7、 视图的作用是什么?为什么说视图的更新是有条件的?(5分) 答:视图的作用:1)视图能够简化用户的操作;2)视图机制能使不同用户以不同方式看待同一数据,适应数据库共享的需要;3)视图对重构数据库提供了一定程度的逻辑独立性;4)视图能够对机密数据提供安全保护。

对视图的更新最终都转化为对基本表的更新,对于一些视图, DBMS无论用实体化法还是消解法都无法将其转换成对基本表SC的更新,他们是不可更新的,因为对这些视图的更新不能唯一地有意义地转换成对相应基本表的更新。对于视图的更新不同系统有不同限制。

四、设计题 (共23分)

1.Π学号,姓名,课程名,分数(σ奖学金>0∧专业=国际贸易(学生∞学习∞课程))

2.Π课程号,名称,学分(σ分数=100(学习∞课程)) 3.Π学号,姓名,专业(σ奖学金<=0∧分数>95(学生∞学习))

4.Π学号,姓名,专业(学生)—Π学号,姓名,专业(σ分数<80(学生∞学习))

5.SELECT 学生.学号,姓名,专业 FROM 学生,学习

WHERE 学生.学号=学习.学号 AND 学习.课程号=课程.课程号 AND 奖学金<=0 AND 分数>95 6.SELECT 学号,姓名,专业 FROM 学生

WHERE 学号 NOT IN (SELECT 学号

4/16/2013 共 9 页 第7页

FROM 学习

WHERE 分数<80) 7.UPDATE 学生

SET 奖学金=1000

WHERE 奖学金<=0 AND 学号 IN (SELECT 学号 FROM 学习

WHERE 分数=100)

8.CREATE VIEW AAA(课程号,名称,学分) AS SELECT 课程号,名称,学分 FORM 课程

WHERE 课程号 IN (SELECT 课程号 FROM 学习

WHERE 分数=100) 五、综合题(共12分) 1.不满足。

因为码为A#B#,并且B#→E,而E是非主属性。 2.R2的码为B# R2最高满足2NF 3.R1(A#,B#,E) R2(B#,C) R3(C,D) 都满足BCNF

4.将两个实体分别对应两个关系模式,并且在“多”端实体对应模式中加入“一”端实体所对应关系模式的码,以及关联属性。

共 9 页 第 8 页

4/16/2013 共 9 页 第9页

本文来源:https://www.bwwdw.com/article/9332.html

Top