资源描述
一、 选择题(每题1分,共20分)
1.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。在这几个阶段中,数据独立性最高的是( A )阶段。
A. 数据库系统 B. 文件系统 C. 人工管理 D.数据项管理
2.数据库三级视图,反映了三种不同角度看待数据库的观点,用户眼中的数据库称为(D)。
A. 存储视图 B. 概念视图 C. 内部视图 D. 外部视图
3.数据库的概念模型独立于(A)。
A. 具体的机器和DBMS B. E-R图
C. 信息世界 D. 现实世界
4.数据库中,数据的物理独立性是指(C)。
A. 数据库与数据库管理系统的相互独立
B. 用户程序与DBMS的相互独立
C. 用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的
D. 应用程序与数据库中数据的逻辑结构相互独立
5.关系模式的任何属性(A)。
A. 不可再分 B. 可再分
C. 命名在该关系模式中可以不惟一 D.以上都不是
6.下面的两个关系中,职工号和设备号分别为职工关系和设备关系的关键字:
职工(职工号,职工名,部门号,职务,工资)
设备(设备号,职工号,设备名,数量)
两个关系的属性中,存在一个外关键字为( C )。
A. 职工关系的“职工号” B. 职工关系的“设备号”
C. 设备关系的“职工号” D. 设备关系的“设备号”
7.以下四个叙述中,哪一个不是对关系模式进行规范化的主要目的( C )。
A. 减少数据冗余 B. 解决更新异常问题
C. 加快查询速度 D. 提高存储空间效率
8.关系模式中各级范式之间的关系为( A )。
A. B.
C. D.
9.保护数据库,防止未经授权或不合法的使用造成的数据泄漏、非法更改或破坏。这是指数据的( A )。
A. 安全性 B.完整性 C.并发控制 D.恢复
10.事务的原子性是指( B )。
A. 事务一旦提交,对数据库的改变是永久的
B. 事务中包括的所有操作要么都做,要么都不做
C. 一个事务内部的操作及使用的数据对并发的其他事务是隔离的
D. 事务必须使数据库从一个一致性状态变到另一个一致性状态
11.下列哪些运算是关系代数的基本运算( D )。
A. 交、并、差 B. 投影、选取、除、联结
C. 联结、自然联结、笛卡尔乘积 D. 投影、选取、笛卡尔乘积、差运算
12.现实世界 “特征” 术语, 对应于数据世界的( D )。
A.属性 B. 联系 C. 记录 D. 数据项
13.关系模型中3NF是指( A )。
A.满足2NF且不存在传递依赖现象
B.满足2NF且不存在部分依赖现象
C.满足2NF且不存在非主属性
D.满足2NF且不存在组合属性
14.下面关于关系性质的叙述中,不正确的是( D )。
A. 关系中元组的次序不重要 B. 关系中列的次序不重要
C. 关系中元组不可以重复 D. 关系不可以为空关系
15.数据库管理系统能实现对数据库中数据的查询、插入、修改和删除,这类功能称为(C)。
A. 数据定义功能 B.数据管理功能
C. 数据操纵功能 D.数据控制功能
16.候选码中的属性可以有( C )。
A. 0个 B. 1个 C. 1个或多个 D.多个
17.取出关系中的某些列,并消去重复元组的关系代数运算称为( B )。
A. 取列运算 B. 投影运算 C. 连接运算 D. 选择运算
18.候选码中的属性称为( B )。
A. 非主属性 B. 主属性 C. 复合属性 D. 关键属性
19.对现实世界进行第二层抽象的模型是( C )。
A. 概念数据模型 B. 用户数据模型
C. 结构数据模型 D. 物理数据模型
20.在关系模式R(A,B,C,D)中,有函数依赖集F={B→C,C→D,D→A},则R能达到(B)。
A. 1NF B. 2NF C. 3NF D. 以上三者都不行
二、 填空题(每空1分,共20分)
1. 数据库保护包括(安全性保护、完整性保护、并发控制、故障恢复)四个方面内容。
2.二元实体间的联系通常可分为 (1:1、1:n、m:n)三种。
3.数据库系统中数据的独立性包括(-物理独立性、逻辑独立性)两个方面。
4.数据库设计通常包括(结构特性(静态)、行为特性(动态))两方面内容。
5.根据数学理论,关系操作通常有(关系代数)和(关系演算)两类。
6.构成E-R图的三个基本要素为(实体、属性、联系)。
7.若商品关系G(GNO,GN,GQ,GC)中,GNO、GN、GQ、GC分别表示商品编号、商品名称、数量、生产厂家,若要查询“上海电器厂生产的其数量小于100的商品名称”用关系代数可表示为 ( ∏GN(σGC=“上海电器厂”∧GQ<100(G))。
8.IBM公司的研究员E. F. Codd于1970年发表了一篇著名论文,主要是论述(关系)模型。
9.判断分解后的关系模式是否合理的两个重要标志是分解是否满足关系的 (无损连接性(不失真)、依赖保持性)。
三、计算题(8分,每小题2分)
若关系X、Y、Z如图所示,求:
(1) ∏A,C(X)
解:
A
C
A1
A1
A2
A3
A3
A4
A1
C1
C4
C1
C2
C4
C2
C2
(2)σB <’B2’ (X)
解:
A
B
C
A1
A3
A4
A1
B1
B1
B1
B1
C1
C2
C2
C2
(3)X⋈ Y
解:
A
B
C
D
A1
A2
A3
A4
A1
B1
B3
B1
B1
B1
C1
C1
C2
C2
C2
D1
D1
D2
D2
D2
(4)X ÷ Z
解:
A
A1
X Y Z
A
B
C
C
D
B
C
A1
A1
A2
A3
A3
A4
A1
B1
B2
B3
B1
B2
B1
B1
C1
C4
C1
C2
C4
C2
C2
C1
C2
C3
D1
D2
D3
B1
B2
B1
C2
C4
C1
四、应用题(12分,每小题3分)
设有三个关系:
S(S#,SNAME,AGE,SEX)
C(C#,CNAME,TEACHER)
SC(S#,C#,GRADE)
试用关系代数表达式表示下列查询语句:
(1)检索至少选修两门课程的学生学号(S#)。
(2)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。
(3)检索选修课程包含“陈军”老师所授课程之一的学生学号(S#)。
(4)检索选修课程号为k1和k5的学生学号(S#)。
解:(1)∏S# (σ1=4∧2≠5(SC×SC) (3分)
(2)∏C#,CNAME(C⋈(∏S#,C#(SC) ÷∏S#(S)) (3分)
(3)∏S#(SC⋈∏C#(σTEACHER=’陈军’(C)) (3分)
(4)∏S#, C# (SC) ÷∏C#(σC#=’k1’∨ C#=’k5’(C)) (3分)
五、证明题(10分
1.设R={A,B,C,D},F={A→B,A→C,C→D},ρ={ABC,CD}。分解是否无损联接分解?试说明理由(5分)。
2.设关系模式R(ABC),函数依赖F={A→B,B→A,A→C}满足3NF还是满足BCNF,试说明理由(5分)
解:1.设R1=ABC,R2=CD
∵R1∩R2=C,R2-R1=D,而C→D(已知),故R1∩R2→R2-R1成立
根据定理,分解ρ为无损联接分解(5分)
2.对于关系模式R(ABC),函数依赖F={A→B,B→A,A→C},
分析可知,该关系模式关键字为A。
同样由分析可得,该关系模式不存在非主属性B、C对关键字A的部分依赖和传递依赖现象,R∈3NF,但由于B→A(已知),而B不是关键字,
故该关系模式R∈BCNF不成立。(5分)
六、程序设计题(20分)
设有如下4个关系模式:
S(SN,SNAME,CITY)
P(PN,PNAME,COLOR,WEIGHT)
J(JN,JNAME,CITY)
SPJ(SN,PN,JN,QTY)
其中:S表示供应商,SN为供应商编码,SNAME为供应商名字,CITY为供应商所在城市;P表示零件,PN为零件编码,PNAME为零件名字,COLOR为零件颜色,WEIGHT为零件重量;J表示工程,JN为工程编码,JNAME为工程名字,CITY为工程所在城市;SPJ表示供应关系,QTY表示提供的零件数量。
写出实现以下各题功能的SQL语句:
(1)取出所有工程的全部细节。(2分)
SELECT *
FROM J;
(2) 取出所在城市为南京的所有工程的全部细节。
SELECT *
FROM J
WHERE CITY=’南京’;
(3)取出为所在城市为上海的工程提供零件的供应商编码。
SELECT DISTINCT SN
FROM SPJ
WHERE JN IN
(SELECT JN
FROM J
WHERE CITY=’上海’);
(4)取出为所在城市为上海或北京的工程提供红色零件的供应商编码。(2分)
SELECT SN
FROM SPJ
WHERE JN IN
(SELECT JN
FROM J
WHERE CITY=’上海’ OR CITY=’北京’)
AND PN IN
(SELECT PN
FROM P
WHERE COLOR=’红’)
(5)取出供应商与工程所在城市相同的供应商提供的零件编码。(3分)
SELECT SPJ.PN
FROM S,J,SPJ
WHERE S.SN=SPJ.SN AND J.JN=SPJ.JN AND S.CITY=J.CITY;
(6)取出至少由一个和工程不在同一城市的供应商提供零件的工程编码。
SELECT DISTINCT SPJ.JN
FROM S,J,SPJ
WHERE S.SN=SPJ.SN AND J.JN=SPJ.JN AND S.CITY<>J.CITY;
(7)取出上海供应商不提供任何零件的工程编码。
SELECT JN
FROM J
WHERE JN NOT IN
(SELECT DISTINCT JN
FROM SPJ
WHERE SN IN
(SELECT SN
FROM S
WHERE CITY=’上海’));
(8)取出所有这样的一些<CITY,CITY>二元组,使得第1个城市的供应商为第2个城市的工程提供零件。(3分)
(8)SELECT S.CITY,J.CITY
FROM S,J,SPJ
WHERE S.SN=SPJ.SN AND J.JN=SPJ.JN; (3分)
七、综合题(10分)
设有如下信息:
下列E-R图是反映产品与仓库两实体间联系的信息模型,要求:
(1)给出该E-R图的关系数据库模式,并指出相应的关键字。(4分)
(2)若仓库号、仓库名及仓库地均为字符型且长度均为10,用SQL语言为仓库关系建立相应的基表并说明实体完整性规则。(4分)
(3)将仓库基表的查询权限授予所有用户,收回User3对仓库的查询权限。(2分)
解:1.关系数据库模式:(4分)
仓库W(仓库号W#,仓库名WN,地址WA) 关键字:W#
产品P(产品号P#,产品名称PN,规格PS,型号PM) 关键字:P#
存放L(仓库号W#,产品号P#,数量QTY) 关键字:(W#,P#)
2. CREATE TABLE W(W# CHAR(10) PRIMARY KEY,
WN CHAR(10),
WA CHAR(10))(4分)
3. GRANT SELECT ON W TO PUBLIC
REVOKE SELECT ON W FROM User3(2分)
数据库原理期末考试试题
一、单项选择题
(本大题共15小题,每小题2分,共30分)
在每小题列出的四个备选项中只有一个是符合题目要 求的,错选、多选或未选均无分。
1. 要保证数据库的数据独立性,需要修改的是( A )
A.三层模式之间的两种映射 B.模式与内模式
C.模式与外模式 D.三层模式
2. 下列四项中说法不正确的是( C )
A.数据库减少了数据冗余 B.数据库中的数据可以共享
C.数据库避免了一切数据的重复 D.数据库具有较高的数据独立性
3. 公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是( C )
A.多对多 B.一对一
C.多对一 D.一对多
4. 将E-R模型转换成关系模型,属于数据库的( C )
A.需求分析 B.概念设计
C.逻辑设计 D.物理设计
5. 五种基本关系代数运算是( A )
A.∪,—,×,π和σ B.∪,—,,π和σ
C.∪,∩,×,π和σ D.∪,∩,,π和σ
6. 下列聚合函数中不忽略空值 (NULL) 的是( C )。
A.SUM (列名) B.MAX (列名)
C.COUNT ( * ) D.AVG (列名)
7. SQL中,下列涉及空值的操作,不正确的是( C )。
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
查询结果中包含的元组数目是( B )
表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. 在视图上不能完成的操作是( C )
A. 更新视图 B. 查询
C. 在视图上定义新的基本表 D. 在视图上定义新视图
10. 关系数据模型的三个组成部分中,不包括( C )
A. 完整性约束 B. 数据结构
C. 恢复 D. 数据操作
11. 假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE)。
要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系( D )
A.S B.SC,C
C.S,SC D.S,SC,C
12. 关系规范化中的删除操作异常是指( A )
A.不该删除的数据被删除 B.不该插入的数据被插入
C.应该删除的数据未被删除 D.应该插入的数据未被插入
13. 从E-R模型关系向关系模型转换时,一个m:n联系转换为关系模式时,该关系模式的码是( C )
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+的闭包是( B )
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等价的关系代数表达式是( B )
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)。下列查询结果相同的是( AB )
A.πSname((S) σScore>60(SC))
B.πSname(σScore>60(SSC))
C.σScore>60 (πSname (S SC))
D.σScore>60 (πSname (S) (SC))
2. 某查询语句中有“%田_”语句,则可能的查询结果有( CD )
A.张田 B.陈力田
C.田华 D.刘田耕
3. 对于下列语句TeacherNO INT NOT NULL UNIQUE,正确的描述是( BD )
A.TeacherNO是主码
B.TeacherNO不能为空
C.TeacherNO的值可以是“王大力”
D.每一个TeacherNO必须是唯一的
4. 下面哪几个依赖是平凡函数依赖( AD )
A.(Sno,Cname,Grade) →(Cname,Grade)
B.(Sno,Cname) →(Cname,Grade)
C.(Sno,Cname) →(Sname,Grade)
D.(Sno,Sname) →Sname
5. 下面关于数据库模式设计的说法中正确的有( ABCD )
A.在模式设计的时候,有时候为了保证性能,不得不牺牲规范化的要求
B.有的情况下,把常用属性和很少使用的属性分成两个关系,可以提高查询的速度
C.连接运算开销很大,在数据量相似的情况下,参与连接的关系越多开销越大
D.减小关系的大小可以将关系水平划分,也可以垂直划分
三、填空题
(本大题共20空,每空1分,共20分)
错填、不填均无分。
1. SQL语言集数据 定义 、数据 查询 、数据 操纵、数据 控制 功能于一体。
2. E-R图的主要元素是实体型、属性_联系 。
3. 关系系统的完整性控制包括_实体完整性 参照完整性 用户定义的完整性 。
4. 关系模式R的码都为单属性,则R一定是第 二 _ 范式。
5. 数据库系统一般包括数据库、_数据库管理系统 应用系统 数据库管理员与用户。
6. 从关系规范化理论的角度讲,一个只满足1NF的关系可能存在的四方面问题是:数据冗余度大、_插入异常、修改异常和删除异常。
7. 如果两个实体之间具有m:n联系,则将它们转换为关系模型的结果是3个表。
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分)
答:πCNO(C)- πCNO (sSNAME='张三' (S)SC) 或
πCNO(C)- πCNO (sSNAME='张三' (SSC)) (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分)
要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
答:(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。
五、综合题(共20分)
现有如下E-R图:
m
零件
仓库
库存
库存量
n
实体的主要属性如下,其中下划线部分为主码:
仓库(仓库号,仓库名,面积,货位数)
零件(零件号,零件名称,规格型号,计量单位,供货商号,价格)
库存(?,?,库存量)
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分)
答:
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))
2007─2008学年 第 一 学期
《数据库原理及应用》期末考试试卷B 答案及评分标准
一、 单选题 (每小题 2 分,共 30 分)
1. 关系数据库规范化是为解决关系数据库中( A )问题而引入的。
A. 插入异常、删除异常和数据冗余 B. 提高查询速度
C. 减少数据操作的复杂性 D. 保证数据的安全性和完整性
2. 数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是( C )。
A.DBMS包括DB和DBS B.DB包括DBS和DBMS
C.DBS包括DB和DBMS D.DBS就是DB,也就是DBMS
3. 数据库管理系统能实现对数据库中数据表、索引等对象的定义、修改、删除,这类语言称为( A )。
A.数据定义语言(DDL) B.数据操纵语言(DML)
C.数据查询语言(DQL) D.数据控制语言(DCL)
4. 同一个关系模型的任意两个元组值( A )。
A. 不能全同 B. 可全同 C. 必须全同 D. 以上都不是
5. 概念模型是( B )
A、用于信息世界的建模,与具体的 DBMS 有关
B、用于信息世界的建模,与具体的 DBMS 无关
C、用于现实的建模,与具体的 DBMS 有关
D、用于现实的建模,与具体的 DBMS 无关
6. 物理数据独立性是指( D )。
A. 模式改变,外模式和应用程序不变
B. 模式改变,内模式不变
C. 内模式改变,模式不变
D. 内模式改变,外模式和应用程序不变
7. SQL语言是( C )语言。
A.层次数据库 B.网络数据库 C.关系数据库 D.非数据库
8. 自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的( D )。
A. 元组 B. 行 C. 记录 D. 属性
9. 关系运算中花费时间可能最长的运算是( C )。
A. 投影 B. 选择 C. 笛卡尔积 D. 除
10. 文件系统与数据库系统的最大区别是( C )。
A. 数据共享 B. 数据独立 C. 数据结构化 D. 数据冗余
11. 用于事务回滚的SQL语句是( D )
A、CREATE TABLE B、COMMIT
C、GRANT和REVOKE D、ROLLBACK
12. ( C )用来记录对数据库中数据进行的每一次更新操作。
A.数据库文件 B.缓冲区 C.日志文件 D.后援副本
13. 并发操作会带来哪些数据不一致性( D )。
A.丢失修改、不可重复读、读脏数据、死锁
B.不可重复读、读脏数据、死锁
C.丢失修改、读脏数据、死锁
D.丢失修改、不可重复读、读脏数据
14. 为提高效率,关系数据库系统必须进行( B )处理。
A、定义视图 B、查询优化
C、建立索引 D、数据规范化到最高范式
15. 设有关系R(A,B,C)的值如下,下列叙述正确的是( B ):
A. 函数依赖A→B在上述关系中成立
B. 函数依赖BC→A在上述关系中成立
C. 函数依赖B→A在上述关系中成立
D. 函数依赖A→BC在上述关系中成立
二、 简答题 (共 25 分)
16. 【4分】设有关系R和S:
试写出如下关系代数的值。
解答:
评分:字段名称正确得1分,结果集每正确一个得1分,总分不超过4分。
17. 【6分】设学生教学数据库中,有两个基本表:
学生表:S(Sno, Sname, Sage, Ssex)
成绩表:SC(Sno, Cno, Grade)
现有如下SQL语句:
SELECT Sname FROM S INNER JOIN SC ON S.Sno=SC.Sno
WHERE Grade >= 60
请给出关系代数式和题目含义。
解答:
关系代数:
题目含义:查询成绩大于等于60分所有学生的姓名。
评分:正确写出关系表达式得4分,正确写出题目含义得2分;若部分正确最高得分不超过3分
18. 【4分】设有关系模式R(A,B,C,D),F是R的函数依赖集,F={AB→C,D→B},试求属性集AD的闭包(AD)+。
解答:
(AD)+=(ABCD)
评分:结果正确得4分,否则0分。
19. 6分】叙述等值连接与自然连接的区别和联系。
解答:
自然连接一定是等值连接,但等值连接不一定是自然连接。
等值连接要求相等的分量,不一定是公共属性;而自然连接要求相等的分量必须是公共属性。
等值连接不把重复的属性除去,自然连接要把重复的属性除去。
评分:正确叙述等值连接与自然连接的联系(1个)得2分,正确叙述其区别(2个)得4分。
20. 【5分】举例说明关系参照完整性的含义。
解答:
如图所示的两个关系表,成绩表是R,课程表是S,在R中,学号是关键字,课程号是外码F;在课程表中课程号是关键字,根据关系参照完整性定义,R中的F课程号或者为空或者在课程表中的课程号中能够找到。
课程号
课程名
K5
高等数学
K8
C语言
K9
计算机网络
成绩表 课程表
学号
姓名
课程号
成绩
101
刘军
K5
80
212
王丽
K8
76
221
章华
K9
92
评分:正确举例者(一个表中有主键,另一个表中有外键)得3分,能用语言描述关系者得2分。
三、 设计题 (共 10 分)
21. 【10分】某医院病房计算机管理中需要如下信息:
科室:科室名,科地址,科电话,医生姓名;
病房:病房号,床位号,所属科室名;
医生:姓名,职称,所属科室名,年龄,工作证号;
病人:病历号,姓名,性别,年龄,主管医生,病房号;
其中,一个科室有多个病房,多个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个。
要求:画出该计算机管理系统的E-R图。
解答:
评分:绘出4个对象及属性得6分;绘出4个关系得4分;若部分正确最高得分不超过5分。
四、 综合题 (共 35 分)
22. 【10分】将下述关系代数表达式进行查询优化,
要求:①写出优化后的关系代数表达式;②画出优化后的语法树。
解答:
①
②
评分:
写出了正确优化后的关系代数表达式5分;画出了正确的优化语法树得5分;如果不能全对,但有部分正确的,得分不超满分的一半。
23. 【10分】设有关系模式R(A,B,C,D,E,G,K),其最小函数依赖集F={AB→C,B→DE,C→G,G→A}
① 求模式R的所有候选码;
② 说明R不是2NF的理由,并把R分解成2NF模式集;
解答:
①
L属性:B;R属性:DE;LR属性:A,C,G;NLR属性:K。
计算(B)+={DE},所以,B不能做为唯一的候选码,需要与LR属性联合;
计算(AB)+={ABCDEG},故ABK是候选码;
计算(BC)+={ABCDEG},故BCK是候选码;
计算(BG)+={ABCDEG},故BGK是候选码;
②
在上面的关系中,非主属性只有{DE},但存在函数依赖B→DE,即存在非主属性对码的部分函数依赖,故不是2NF;
将R分解成:
R1(A,B,C,G,K, AB→C,C→G,G→A)
R2(B,D,E, B→DE)
R1关系中的候选码仍为ABK,BCK,BGK,没有非主属性,故一定满足2NF;R2关系中候选码为B,主属性只有一个,故一定满足2NF
评分:正确求出三个候选码得5分,每求出一个得1分;
正确分解得3分,能正确说明理由者得2分。
24. 【15分】在教学管理数据库中有学生、课程和选课三个表,它们的定义分别为为:
Student(Sno Char(5),Sname Char(6),Ssex Char(2),
Sage Int,Sdept Char(2))
Course(Cno Char(1), Cname Char (10), Cpno Char(1),
Ccredit Int)
SC(Sno Char(5), Cno Char(1), Grade int)
根据下面的要求,写出SQL语句。
① 用SQL语句建立数据表SC,以(Sno, Cno)作为主键;
② 向Student表插入一条记录(95011, 张三, 女, 19,CS);
③ 检索计算机系(CS)所有女同学的姓名和年龄;
④ 检索选修了2号课程学生的学号、姓名、成绩,并按成绩降序排序;
⑤ 建立一个信息系(IS)所有不及格(Grade<60)学生的视图vwStudent。
解答:
① 用SQL语句建立数据表SC,以(Sno, Cno)作为主键
展开阅读全文