数据库系统概念经典三套试题及答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

(课程编号,学生编号)
F
成绩
(课程编号,学生编号)
P
课程名称,
(课程编号,学生编号)
P
P
学分
(课程编号,学生编号)
教师编号,
教师姓名传递函数依赖于(课程编号,学生编号) (3) 、判断此关系模式是第几范式,若不是第三范式,请将其规范化为第三 范式的关系模式,并指出分解后的每个关系模式的候选码和外码。
) 。
(B) 、 文件的大小 (D) 、数据之间的联系
8、 有关系:R(A,B,C) (主码为 A)和 S(D,A) (主码为 D,外码为 A) ,外码 A 参照于关系 R 的主码 A。关系 R 和 S 的元组如图所示,指 出关系 S 中必定违反完整性规则的元组是( (A) 、 (1,2) (C) 、(3,3) 关系 R A 1 2 关系 S D 1 2 3 4 A,B A 2 NULL 3 1 B 2 1 C 3 3 ( D) 、(4,1) C ) 。 ( B) 、 (2,null)
三、综合应用题(60 分)
1、 (21 分) 设有一个 Student 数据库,包括学生,课程,选修三个关系: 学生:S ( Sno,Sname,Ssex,Sage,Sdept ) 课程:C ( Cno,Cname,Term,Credit ) 选修:SC ( Sno,Cno,Score )
其中:学生关系 S 的属性分别表示:学号、姓名、性别、年龄、专业 课程关系 C 的属性分别表示:课程号、课程名、开课学期、学分 选修关系 SC 的属性分别表示:学号、课程号、分数 请用关系代数表达式完成如下查询: (1)、 查询选修了课程名为“数据库系统”课程的学生学号、姓名和成绩 (2)、 查询选修了全部课程的学生姓名和所在的专业 (3)、 查询没有选修课程号为“C02”课程的学生姓名和所在的专业 (1)
π (2) π (3) π
Sno,Sname,Score
(бcname=’
数据库系统’
(S SC C) SC))
Sname,Sdept
(S (πSno,Cno(SC)÷ πcno(C)))
Sname,Sdept
(s)-
π
Sname,Sdept
(бcno=’C02’ (S
请用 SQL 语句完成下面的操作: (4)、 检索所有比“王华”年龄大的学生姓名、年龄和性别 Select sname,sage,ssex From S Where sage>(select sage from S where sname=’王华’) (5)、 检索选修了课程号为’C02’课程的学生中成绩最高的学生的学号 Select sno from sc where cno=’c02’ and grade>=ALL(select grade from sc where cno=’c02’) (6)、检索选修了 4 门以上课程的学生学号和总成绩 (不统计不及格的课程) , 并要求按照总成绩的降序排列。 Select sno,sum(grade) from sc Where grade>=60 Group by sno having count(*)>=4 Order by 2 desc (7)、 检索张力同学没有选修的课程的课程号 Select cno from c Where not exists (select * from s,sc where s.sno=sc.sno and sc.cno=c.cno and sname=’张力’)
(A) 、可以根据需要在基本表上建立一个或多个索引,从而提高系统的 (B) 、一个基本表最多只能有一个索引。 (C) 、建立索引的目的是为了给数据表中的元素指定别名,从而使别的 表也可以引用这个元素。 (D) 、一个基本表至少要存在一个索引。 3、 设有两个关系 R(A,B)和 S(A,C) ,下列等式成立的是( (A) 、 (B) 、 (C) 、 (D) 、 4、 在数据库的物理结构中,将具有相同值的元组集中存放在连续的物理块 的存储方法称为( (A) 、HASH (C) 、聚簇 ( ) C ) 。 (B) 、B 树索引 (D) 、其它 A ) 。
关系 R1 A 2 7 7 B b b a C c c e E d d f
(2)、R2 =бR.B=T.B(R×T)
关系 R2 A 2 2 9 7 7 R.B b b a b a R.C c e f c e T.B b b a b a T.C c c e c e E d d f d f
(3)、 R3=R÷T
(C) 、可以对 A 加共享锁,也可以对 A 加排它锁 (D) 、不能再给 A 加任何锁
二、简答题(每小题 5 份,共 10 分)
1、什么是日志文件?登记日志文件时为什么必须要先写日志文件,后写数 据库? 答:
(1)日志文件是用来记录事务对数据库的更新操作的文件。 (2) 把对数据的修改写到数据库中和把表示这个修改的日志记录写到日志文件中是 两个不同的操作。 有可能在这两个操作之间发生故障, 即这两个写操作只完成了一个。 如果先写了数据库修改, 而在日志文件中没有登记这个修改, 则以后就无法恢复这个修 改了。如果先写日志文件,但没有修改数据库,在恢复时只不过是多执行一次 UNDO 操 作,并不会影响数据库的正确性。所以一定要先写日志文件,即首先把日志记录写到日 志文件中,然后写数据库的修改。
2、什么是数据独立性?数据库系统如何实现数据独立性?
答: 数据独立性是指应用程序和数据之间相互独立,不受影响,数据独立性包括物理数 据独立性和逻辑数据独立性。 物理数据独立性是指数据库物理结构改变时, 不需要修改现有 的应用程序,逻辑独立性是指数据库逻辑结构发生改变时,不需要修改现有的应用程序。 数据独立性是由 DBMS 的二级映像功能来实现的。 数据库系统采用外模式、 模式和内 模式三级模式结构,DBMS 在这三级模式之间提供了外模式/模式和模式/内模式两层映像。 当整个系统要求改变模式时,由 DBMS 对外模式/模式的映像作相应的修改,而外模式保持 不变, 应用程序是依据数据库的外模式编写的, 所以应用程序不必修改, 从而保证数据的逻 辑独立性;当数据库的存储结构发生,由 DBMS 对模式/内模式的映像作相应的修改,可以 使模式保持不变, 从而外模式不变, 因此应用程序不必修改, 从而保证数据的物理独立性。
11、 已知关系模式 R(A,B,C,D,E)及其上的函数依赖集合 F={A→ B,E→A,CE→D},则该关系模式的候选键是( (A) 、 AE ( B) 、BE C (C) 、 CE ) 。 12、 下列叙述正确的是( (D) 、 DE
(A) 、关系中元组没有先后顺序,属性有先后顺序 ( B) 、关系中元组有先后顺序,属性没有先后顺序 (C) 、关系中元组没有先后顺序,属性也没有先后顺序 (D) 、关系中元组有先后顺序,属性也有先后顺序 13、 “一个事务中的诸操作要么都做, 要么都不做” , 这是事务的 ( 特性。 (A) 、原子性 (C) 、隔离性 (B) 、一致性 (D) 、持久性 D ) 。 A )
《数据库系统概论》模拟试卷(一) 参考答案 一、单项选择题 (每小题 2 分,共 30 分)
1、 ( B )是按照一定的数据模型组织的,长期储存在计算机内,可 (B) 、数据库 (D) 、数据库管理系统 A ) 。 为多个用户共享的数据的集合。 (A) 、数据库系统 (C) 、关系数据库
2、 下列关于索引的叙述,正确的是( 查询效率。
A,B
A,B
π (B) 、π
σ
C
) 。
C≠'C56'(R
S) )
A,B(R
S) S) ) ) C≠'C56'(R S)
C= 'C56'(R
10、 定义基本表时,若要求年龄属性的取值必须大于 0 ,则可以使用 ( D )约束。 (B) 、 PRIMARY KEY (D) 、 CHECK C )。 (A) 、 NULL (C) 、DISTINCT
14、 关于事务的故障与恢复,下列说法正确的是( (A) 、事务日志用来记录事务执行的频度 (B) 、任何故障的恢复都由系统自动完成 (C) 、系统故障的恢复只需进行 REDO 操作
(D) 、对日志文件设置检查点是为了提高故障恢复的效率 15、 若事务 T1 已经给数据对象 A 加了排它锁,则事务 T2( (A) 、只能再对 A 加共享锁 (B) 、只能再对 A 加排它锁 D ) 。
2、(6 分)设有如下图所示的关系 R 和 T,计算下列代数表达式的结果:
(1)、R1 = R T (2)、R2 =бR.B=T.B(R×T) (3)、R3 = R÷T
关系 R A 2 2 9 7 B b b a b C c e f c
7 关系 T B b a
a
e
C c e
E d f
(1)R1=R T
A=1000
Rollback
6、 关系模式规范化理论主要解决的问题是( (A) 、提高查询速度 (B) 、消除操作异常和数据冗余 (C) 、减少数据操作的复杂性 (D) 、保证数据的安全性和完整性
B

7、 层次型、网状型和关系型数据模型划分原则是( (A) 、 记录长度 (C) 、 联系的复杂程度
D
关系 R3 A 7 3、 (4 分)今有两个关系模式: (1)职工(职工号,姓名,年龄,职务,工资,部门号) ,其中职工号为主 码;部门号为外码; (2)部门(部门号,名称,经理名,地址,电话) ,其中部门号是主码; 请用 SQL 语言的 GRANT 语句(加上视图机制)完成以下授权定义: 用户杨兰具有 SELECT 每个部门的职工最高工资,最低工资,平均工资的
5、 设有两个事务 T1 、 T2 ,其并发操作如图所示,下面评价正确的是 D (A) 、该操作不存在任何问题 (B) 、该操作丢失修改 (C) 、该操作不能重复读
(D) 、该操作读“脏”数据
事务 T1 A=1000 事务 T2
Read A A=A+500 Read A 使用 A 值
A=1500
Write A
第 7 页 共 12 页
权力,但他不能查看每个人的工资。 CREATE VIEW 部门工资统计 (部门号, 最高工资, 最低工资, 平均工资) AS SELECT 部门号,MAX(工资),MIN(工资) ,AVG(工资) FROM 职工 GROUP BY 部门号; GRANT SELECT ON TABLE 部门工资统计 TO 杨兰; 4、 (6 分)在数据库系统中有如下一个调度 S,它涉及到 5 个不同的事务 T1、 T2、T3、T4 和 T5。请问调度 S 是冲突可串行化的吗?为什么?如果调度 S 是 冲突可串行化的,就请给出与之等价的一个串行调度序列。
答: 通过交换调度 S 中的不冲突操作,可以得到一个新的调度 S’ (T1T2T3T4T5),因为调度 S’是串行调度,因此该调度 S 是冲突可串 行化的。与之等价的串行调度顺序是 T1、T2、T3、T4、T5;或 T1、T2、T4、
第 8 页 共 12 页
T3、T5。 5、(8 分) 假设有关系模式: 授课(课程编号,课程名称,学分,教师编号,教师姓名,学生编号,成 绩) 。 其语义为:每个课程(由课程编号决定)有确定的课程名称及学分;每个 课程有唯一的一位老师授课;每个教师(由教师编号决定)有确定的教师姓 名,可以讲授多门课程 ;每个学生可以选修多门课程,每门课程有多个学生 选修;每个学生选修某一课程,有确定的成绩。 (1) 、指出此关系模式的候选码 答:该关系模式的候选码为:(课程编号,学生编号) (2) 、写出此关系模式的函数依赖,如果是部分函数依赖或传递函数依赖请 标明。 答:存在以下函数依赖: { 课程编号课程名称,课程编号学分,课程编号教师编号, 教师编号教师姓名, (课程编号,学生编号) 成绩 }
第 9 页 共 12 页
9、 设有两个关系 R(A,B)和 S(B,C) ,与下列 SELECT 语句 SELECT
FROM R WHERE B NOT IN( SELECT B FROM S WHERE C='C56') ; 等价的关系代数表达式是( ( A) 、
A,B(
π (σ (D) 、R-π (σ
(C) 、 R-Байду номын сангаас
相关文档
最新文档