数据库原理-期末考试复习题一
一、单项选择题
(本大题共20小题,每小题2分,共40分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
1. 数据库系统的核心是( B )
A.数据库 B.数据库管理系统 C.数据模型 D.软件工具
2. 下列四项中,不属于数据库系统的特点的是( C )
A.数据结构化 B.数据由DBMS统一管理和控制 C.数据冗余度大 D.数据独立性高
3. 概念模型是现实世界的第一层抽象,这一类模型中最著名的模型是( D )
A.层次模型 C.网状模型
B.关系模型 D.实体-联系模型
4.数据的物理独立性是指( C )
A.数据库与数据库管理系统相互独立 B.用户程序与数据库管理系统相互独立
C.用户的应用程序与存储在磁盘上数据库中的数据是相互独立的 D.应用程序与数据库中数据的逻辑结构是相互独立的
5. 要保证数据库的逻辑数据独立性,需要修改的是( A )
A.模式与外模式之间的映象 B.模式与内模式之间的映象 C.模式 D.三级模式
6. 关系数据模型的基本数据结构是( D ) A.树 B.图 C.索引 D.关系
7. 有一名为“列车运营”实体,含有:车次、日期、实际发车时间、实际抵达时间、情况摘
要等属性,该实体主码是( C )
A.车次 B.日期 C.车次+日期 D.车次+情况摘要
8. 己知关系R和S,R∩S等价于( B ) A. (R-S)-S B. S-(S-R)
C.(S-R)-R D. S-(R-S)
9. 学校数据库中有学生和宿舍两个关系: 学生(学号,姓名)和宿舍(楼名,房间号,床位号,学号)
假设有的学生不住宿,床位也可能空闲。如果要列出所有学生住宿和宿舍分配的情况,包括没有住宿的学生和空闲的床位,则应执行( A ) A. 全外联接 B. 左外联接 C. 右外联接 D. 自然联接
10.用下面的T-SQL语句建立一个基本表:
1
11. 把对关系SPJ的属性QTY的修改权授予用户李勇的T-SQL语句是( C )
A.GRANT QTY ON SPJ TO '李勇'
B.GRANT UPDATE(QTY) ON SPJ TO '李勇' C.GRANT UPDATE (QTY) ON SPJ TO 李勇 D.GRANT UPDATE ON SPJ (QTY) TO李勇 12.图1中( B )是最小关系系统
A B C D
图1
13.关系规范化中的插入操作异常是指 ( D ) A.不该删除的数据被删除 B.不该插入的数据被插入 C.应该删除的数据未被删除 D.应该插入的数据未被插入
14.在关系数据库设计中,设计关系模式是数据库设计中( A)阶段的任务
A. 逻辑设计 B.物理设计 C.需求分析 D.概念设计
15.在E-R模型中,如果有3个不同的实体型,3个m:n联系,根据E-R模型转换为关系模
型的规则,转换后关系的数目为( C )。 A.4 B.5 C.6 D.7
16.事务的隔离性是指( A )。 A.一个事务内部的操作及使用的数据对并发的其他事务是隔离的 B.事务一旦提交,对数据库的改变是永久的 C.事务中包括的所有操作要么都做,要么都不做 D.事务必须是使数据库从一个一致性状态变到另一个一致性状态
17.数据库恢复的基础是利用转储的冗余数据。这些转储的冗余数据是指(C)
A.数据字典、应用程序、审计档案、数据库后备副本 B.数据字典、应用程序、日志文件、审计档案 C.日志文件、数据库后备副本
D.数据字典、应用程序、数据库后备副本
18.若事务T对数据对象A加上S锁,则( B )。
A.事务T可以读A和修改A,其它事务只能再对A加S锁,而不能加X 锁。 B.事务T可以读A但不能修改A,其它事务只能再对A加S锁,而不能加X 锁。
2
CREATE TABLE Student(Sno CHAR(4)PRIMARY KEY,
Sname CHAR(8)NOT NULL, Sex CHAR(2), Age INT)
可以插入到表中的元组是( D ) A. '5021','刘祥',男,21 B. NULL,'刘祥',NULL,21 C.'5021',NULL,男,21 D.'5021','刘祥',NULL,NULL
C.事务T可以读A但不能修改A,其它事务能对A加S锁和X锁。 D.事务T可以读A和修改A,其它事务能对A加S锁和X锁。
19. 设有两个事务T1、T2,其并发操作如图2所示,下面评价正确的是( B ) A.该操作不存在问题 B.该操作丢失修改 C.该操作不能重复读 D.该操作读“脏”数据 T1 T2 ① 读A=100
② 读A=100
③ A=A-5写回 ④A=A-8写回
图2
20.以下( D )封锁违反两段锁协议。
A. Slock A … Slock B … Xlock C ………… Unlock A … Unlock B … Unlock C B. Slock A … Slock B … Xlock C ………… Unlock C … Unlock B … Unlock A C. Slock A … Slock B … Xlock C ………… Unlock B … Unlock C … Unlock A D. Slock A …Unlock A ……Slock B … Xlock C ………...Unlock B … Unlock C
二、填空题
(本大题共9小题,每空1分,共10分)
请在每小题的空格中填上正确答案。错填、不填均无分。
1. 关系数据模型由关系数据结构、关系操作和关系完整性约束三部分组成。
2.一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的属性
3. 在Student表的Sname列上建立一个唯一索引的SQL语句为:
CREATE UNIQUE INDEX Stusname ON student(Sname)
4. SELECT语句查询条件中的谓词“!=ALL”与运算符 NOT IN 等价
5. 关系模式R(A,B,C,D)中,存在函数依赖关系{A→B,A→C,A→D,(B,C)→A},
则侯选码是 A和(B,C) ,R∈ AB NF。
6. 分E-R图之间的冲突主要有属性冲突、命名冲突、结构冲突三种。
7. 事物是DBMS的基本单位,是用户定义的一个数据库操作序列。
8. 存在一个等待事务集{T0,T1,?,Tn},其中T0正等待被T1锁住的数据项,T1正等待被
T2锁住的数据项,Tn-1正等待被Tn锁住的数据项,且Tn正等待被T0锁住的数据项,这种情形称为死锁。
9. 可串行性是并发事务正确性的准则。
三、简答题
(第1、3题3分,第2题4分,共10分) 1. 试述关系模型的参照完整性规则?
答:参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S的主
3
码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:取空值(F的每个属性值均为空值)或者等于S中某个元组的主码值。
2. 试述视图的作用?
(1)视图能够简化用户的操作。(1分) (2)视图使用户能以多种角度看待同一数据。(1分) (3)视图对重构数据库提供了一定程度的逻辑独立性。(1分)
(4)视图能够对机密数据提供安全保护。(1分)
3. 登记日志文件时必须遵循什么原则?
登记日志文件时必须遵循两条原则:
(1)登记的次序严格按并发事务执行的时间次序。(1分) (2)必须先写日志文件,后写数据库。(2分)
四、设计题
( 第1题4分,第2题6分,第3题3分,第4题4分,第5题8分,共25分) 1.设教学数据库中有三个基本表:
学生表S(SNO,SNAME,AGE,SEX),其属性分别表示学号、学生姓名、年龄、性别。课程表C(CNO,CNAME,TEACHER),其属性分别表示课程号、课程名、上课教师名。选修表SC(SNO,CNO,GRADE),其属性分别表示学号、课程号、成绩。 有如下SQL查询语句: SELECT CNO FROM C
WHERE CNO NOT IN (SELECT CNO FROM S,SC
WHERE S.SNO=SC.SNO
AND SNAME='张三');
请完成下列问题:
(1)用汉语句子阐述上述SQL语句的含义;
(2)用等价的关系代数表达式表示上述SQL查询语句。
解:(1)查询张三同学没有选修的课程的课程号。(2分)
(2)πCNO(C)- πCNO (?SNAME='张三' (S)SC) 或 πCNO(C)- πCNO (?SNAME='张三' (SSC)) (2分)
2.设有如图3所示的三个关系。其中各个属性的含义如下:A#(商店代号)、ANAME(商
店名)、WQTY(店员人数)、CITY(所在城市)、B#(商品号)、BNAME(商品名称)、PRICE(价格)、QTY(商品数量)。
A A# ANAME WQTY CITY B# BNAME PRICE 101 韶山商店 204 前门百货商店 256 东风商场 15 89 501 长沙 北京 北京 1 2 3 4
4
毛笔 羽毛球 收音机 书包 21 784 1325 242
345 铁道商店 620 第一百货公司 76 413 长沙 上海 A# 101 101 101 101 204 256 256 345 345 345 620 AB B# 1 2 3 4 3 1 2 1 2 4 4 图3
QTY 105 42 25 104 61 241 91 141 18 74 125 试用SQL语言写出下列查询:
(1)找出店员人数不超过100人或者在长沙市的所有商店的代号和商店名。
(2)找出至少供应了代号为?256?的商店所供应的全部商品的其它商店的商店名和所在城
市。
解:(1)SELECT A#, ANAME FROM A
WHERE WQTY<=100 OR CITY='长沙'; (2分) (2)SELECT ANAME,CITY FROM A
WHERE NOT EXISTS (SELECT * FROM B WHERE EXISTS
(SELECT * FROM AB AB1
WHERE A#='256' AND B#=B.B#) AND NOT EXISTS
(SELECT * FROM AB AB2
WHERE A#!='256' AND A#=A.A# AND B#=B.B#) ); (4分)
3. 设有职工基本表:EMP(ENO,ENAME,AGE,SEX,SALARY),其属性分别表示职
工号、姓名、年龄、性别、工资。为每个工资低于1000元的女职工加薪200元,试写出这个操作的SQL语句。
UPDATE EMP
SET SALARY=SALARY+200
WHERE SALARY<1000 AND SEX='女';(3分)
4.设某工厂数据库中有两个基本表:
车间基本表:DEPT(DNO,DNAME,MGR_ENO),其属性分别表示车间编号、车间名
5
相关推荐: