数据库原理-期末考试试题及答案
数据库原理-期末考试试题及答案
得 分
一、单项选择题
(本大题共15小题,每小题2分,共30分)
在每小题列出的四个备选项中只有一个是符合题目要 求的,错选、多选或未选均无分。
1. 要保证数据库的数据独立性,需要修改的是( ) A.三层模式之间的两种映射 B.模式与内模式 C.模式与外模式 D.三层模式 2. 下列四项中说法不正确的是( ) A.数据库减少了数据冗余 B.数据库中的数据可以共享 C.数据库避免了一切数据的重复 D.数据库具有较高的数据独立性 3. 公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是( ) A.多对多 B.一对一 C.多对一 D.一对多 4. 将E-R模型转换成关系模型,属于数据库的( ) A.需求分析 B.概念设计 C.逻辑设计 D.物理设计 5. 五种基本关系代数运算是( ) A.∪,—,×,π和σ B.∪,—,,π和σ C.∪,∩,×,π和σ D.∪,∩,,π和σ 6. 下列聚合函数中不忽略空值 (NULL) 的是( )。 A.SUM (列名) B.MAX (列名) C.COUNT ( * ) D.AVG (列名) 7. SQL中,下列涉及空值的操作,不正确的是( )。 A. AGE IS NULL B. AGE IS NOT NULL C. AGE = NULL D. NOT (AGE IS NULL) 8. 已知成绩关系如表1所示。 执行SQL语句: SELECT COUNT(DISTINCT学号) FROM成绩 WHERE分数>60 查询结果中包含的元组数目是( )
表1 成绩关系
学号
课程号
分数
S1
C1
80
S1
C2
75
S2
C1
null
S2
C2
55
S3
C3
90
A. 1 B. 2 C. 3 D. 4 9. 在视图上不能完成的操作是( ) A. 更新视图 B. 查询 C. 在视图上定义新的基本表 D. 在视图上定义新视图 10. 关系数据模型的三个组成部分中,不包括( ) A. 完整性约束 B. 数据结构 C. 恢复 D. 数据操作 11. 假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE)。 要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系( ) A.S B.SC,C C.S,SC D.S,SC,C 12. 关系规范化中的删除操作异常是指( ) A.不该删除的数据被删除 B.不该插入的数据被插入 C.应该删除的数据未被删除 D.应该插入的数据未被插入 13. 从E-R模型关系向关系模型转换时,一个m:n联系转换为关系模式时,该关系模式的码是( ) A.M端实体的码 B.N端实体的码 C.M端实体码与N端实体码组合 D.重新选取其他属性 14.已知关系R={A,B,C,D,E,F},F={A→C,BC→DE,D→E,CF→B}。则(AB)F+的闭包是( ) A.ABCDEF B.ABCDE C.ABC D.AB 15.设有关系R(A,B,C)和S(C,D)。与SQL语句select A,B,D from R,S where R.C=S.C等价的关系代数表达式是( ) A.σR.C=S.C(πA,B,D(R×S)) B.πA,B,D(σR,C= S.C(R×S)) C.σR.C=S.C((πA,B (R))×(πD(S))) D.σR,C=S.C(πD((πA,B(R))×S))
得 分
二、多项选择题
(本大题共5小题,每小题2分,共10分)
在每小题列出的四个备选项中有多个是符合题目要求的,多选、少选、错选、不选均无分。
1. 对于关系模式S(Sno,Sname,Age,Dept);C(Cno,Cname,Teacher);SC(Sno,Cno,Score)。下列查询结果相同的是( ) A.πSname((S) σScore>60(SC)) B.πSname(σScore>60(S SC)) C.σScore>60 (πSname (S SC)) D.σScore>60 (πSname (S) (SC)) 2. 某查询语句中有“%田_”语句,则可能的查询结果有( ) A.张田 B.陈力田 C.田华 D.刘田耕 3. 对于下列语句TeacherNO INT NOT NULL UNIQUE,正确的描述是( ) A.TeacherNO是主码 B.TeacherNO不能为空 C.TeacherNO的值可以是“王大力” D.每一个TeacherNO必须是唯一的 4. 下面哪几个依赖是平凡函数依赖( ) A.(Sno,Cname,Grade) →(Cname,Grade) B.(Sno,Cname) →(Cname,Grade) C.(Sno,Cname) →(Sname,Grade) D.(Sno,Sname) →Sname 5. 下面关于数据库模式设计的说法中正确的有( ) A.在模式设计的时候,有时候为了保证性能,不得不牺牲规范化的要求 B.有的情况下,把常用属性和很少使用的属性分成两个关系,可以提高查询的速度 C.连接运算开销很大,在数据量相似的情况下,参与连接的关系越多开销越大 D.减小关系的大小可以将关系水平划分,也可以垂直划分
三、填空题
得 分
(本大题共20空,每空1分,共20分)
错填、不填均无分。
1. SQL语言集数据
、数据
、数据
、数据___________功能于一体。 2. E-R图的主要元素是____________、____________、____________。 3. 关系系统的完整性控制包括____________、____________、____________。 4. 关系模式R的码都为单属性,则R一定是第
_
范式。 5. 数据库系统一般包括数据库、___________、___________、___________与用户。 6. 从关系规范化理论的角度讲,一个只满足1NF的关系可能存在的四方面问题是:数据冗余度大、______________、修改异常和删除异常。 7. 如果两个实体之间具有m:n联系,则将它们转换为关系模型的结果是_________个表。 8. 数据库设计的一般步骤有:需求分析、___________、____________、 _______________、________________、运行与维护等。
得 分
得 分
四、设计题
(本大题共2小题,第1小题5分,第2小题15,
共 20分)
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分) (2)用等价的关系代数表达式表示上述SQL查询语句。(3分) 2. 设有关系R和函数依赖F: R(A,B,C,D,E),F = { ABC→DE,BC→D,D→E }。 试求下列问题: (1)关系R的侯选码是什么?R属于第几范式?并说明理由。(3分) (2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。(12分) 要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
得 分
五、综合题(共20分)
现有如下E-R图: 实体的主要属性如下,其中下划线部分为主码:
仓库(
仓库号
,仓库名,面积,货位数)
零件(
零件号
,零件名称,规格型号,计量单位,供货商号,价格)
库存
(
?
,
?
,库存量) 1. 请在
?
处填上相应的属性。(2分) 2. 试用SQL定义上述E-R图中所有的实体、属性及联系,所对应的英文名称为: Warehouse(wno,wname,square,cou) Material(mno,mname,type,unit,cusnum,price) Storage(
?
,
?
,storenumber),要求反映主码和外码,其中的类型长度可以根据需要自行确定。(6分) 3. 用SQL与关系代数表示查询:(6分) 找出零件名为“镙丝”的零件号、所存放的仓库号、库存量。 4. 建立一个包含仓库号、仓库名、零件号、零件名、价格、库存量的视图VIEW1。(6分)
参考答案与评分细则
一、单项选择题(共15小题,每小题2分,共30分)
题号
1
2
3
4
5
6
7
8
9
10
答案
A
C
C
C
A
C
C
B
C
C
题号
11
12
13
14
15
答案
D
A
C
B
B
二、多项选择题(共5小题,每小题2分,共10分)
题号
1
2
3
4
5
答案
AB
CD
BD
AD
ABCD
三、填空题(共20空,每空1分,共20分)。
1.
定义
、
查询
、
操纵
、
控制
2.
实体型
、
属性
、
联系
3.
实体完整性
、
参照完整性
、
用户定义的完整性
4.
二
5.
数据库管理系统
、
应用系统
、
数据库管理员
6.
插入异常
7.
3
8.
概念结构设计
、
逻辑结构设计
、
物理结构设计
、
数据库的实施
四、设计题(共2小题,第1小题5分,第2小题15分,共20分)
1、参考答案:
(1)查询张三同学没有选修的课程的课程号。(2分) (2)πCNO(C)- πCNO (sSNAME='张三' (S) SC) 或 πCNO(C)- πCNO (sSNAME='张三' (S SC)) (3分)
评分标准:
(1)意思表达正确即可给分;(2)两个关系的差1分,sSNAME='张三'1分, S SC1分。
2、参考答案:
(1)关系R的候选码是(A,B,C),R∈1NF,因为R中存在非主属性D,E对候选码(A,B,C)的部分函数依赖。 (2)首先消除部分函数依赖 将关系分解为: R1(A,B,C) (A,B,C)为候选码, R1中不存在非平凡的函数依赖 R2(B,C,D,E),(B,C)为候选码, R2的函数依赖集为:F2={(B,C)→D,D→E} 在关系R2中存在非主属性E对候选码(B,C)的传递函数依赖,所以将R2进一步分解: R21(B,C,D) ,(B,C)为候选码, R21的函数依赖集为:F21 = {(B,C)→D } R22(D,E)
,D为候选码, R22的函数依赖集为:F22 = { D→E } 在R1中已不存在非平凡的函数依赖,在R21、R22关系模式中函数依赖的决定因素均为候选码,所以上述三个关系模式均是BCNF。
评分标准:
(1)正确指明候选码为(A,B,C)(1分);正确指明R∈1NF(1分);正确说明R∈1NF的理由(1分)。 (2)首先正确将R分解为R1(A,B,C)(3分)和R2(B,C,D,E)(3分),再将R2正确分解为R21(B,C,D)(3分)和R22(D,E)(3分),其中分解属性正确1分,候选码指定正确1分,函数依赖集书写正确1分。分解过程的叙述斟情扣分。
五、综合题(共20分)
1、
仓库号(1分) 零件号(1分)
2、
建立仓库表 Create table warehouse ( wno varchar(10) primary key, wname varchar(20), square number(10,2), cou int) 建立零件表 Create table material ( mno varchar2(10) primary key, mname varchar2(20), type varchar2(10), unit varchar2(10), cusnum varchar2(10), price number(10,2)) 建立库存表 Create table storage ( wno varchar2(10) foreign key references warehouse(wno), mno varchar2(10) foreign key references material(mno), storenumber number(10,2), primary key(wno,mno))
评分标准:
3个primary key各1分,2个foreign key各1分,其它1分,根据实际情况斟情扣分。
3、
用SQL表示: select material.mno,wno,storenumber (1分,mno前无前缀不给分) from material,storage (1分,2个表任少一个不给分) where material.mno=storage.mno and mname=’螺丝’(1分,条件少一个不给分) 用关系代数表示: πmno,wno,storenumber(smname='螺丝' (material) storage) 1分 1分 1分
4、
Create view VIEW1(1分,少关键字或错写不给分) As select warehouse.wno, wname, material.mno, mname, price, storenumber (1分,wno前无前缀不给分,少属性不给分) from warehouse, material, storage (2分,少1个表扣1分,少2个表不给分) where warehouse.wno=storage.wno and material.mno=storage.mno (2分,1个条件1分)