《数据库系统概论》试题与答案1.docx
- 文档编号:13464220
- 上传时间:2023-06-14
- 格式:DOCX
- 页数:25
- 大小:101.98KB
《数据库系统概论》试题与答案1.docx
《《数据库系统概论》试题与答案1.docx》由会员分享,可在线阅读,更多相关《《数据库系统概论》试题与答案1.docx(25页珍藏版)》请在冰点文库上搜索。
《数据库系统概论》试题与答案1
《数据库系统概论》试题A
一、选择题(20分,每小题2分):
2.对关系模型叙述错误的是____。
A.建立在严格的数学理论、集合论和谓词演算公式的基础之上
B.微机DBMS绝大部分采取关系数据模型
C.用二维表表示关系模型是其一大特点
D.不具有连接操作的DBMS也可以是关系数据库系统
5.FoxBASE、FoxPro属于________。
A.表式系统 B.最小关系系统
C.关系完备的系统D.全关系系统
二、填空题(20分,每小空2分):
3.关系操作的特点是集合操作。
4.关系代数中,从两个关系中找出相同元组的运算称为⑤运算。
5.在关系数据库的规范化理论中,在执行“分解”时,必须遵守规范化原则:
保持原有的函数依赖和⑥。
6.SQL语言的数据定义功能包括⑦、⑧、⑨和⑩。
4.⑤交
5.⑥无损连接
6.⑦定义数据库⑧定义基本表⑨定义视图 ⑩定义索引
三、简答题(15分,每小题5分):
1.使用数据库系统有什么好处?
答·查询迅速、准确,而且可以节约大量纸面文件;
·数据结构化,并由DBMS统一管理;
·数据冗余度小:
·具有较高的数据独立性;
·数据的共享性好;
·DBMS还提供了数据的控制功能。
2.叙述数据字典的主要任务和作用?
答:
数据字典的任务就是管理有关数据的信息,所以又称为“数据库的数据库”。
它的任务主要有:
(1)描述数据库系统的所有对象,并确定其属性。
如一个模式中包含的记录型与一个记录型包含的数据项;用户的标识、口令;物理文件名称、物理位置及其文件组织方式等。
数据字典在描述时赋给每个对象一个惟一的标识。
(2)描述数据库系统对象之间的各种交叉联系。
如哪个用户使用哪个子模式,哪些模式或记录型分配在哪些区域及对应于哪些物理文件、存储在何种物理设备上。
(3)登记所有对象的完整性及安全性限制等。
(4)对数据字典本身的维护、保护、查询与输出。
数据字典的主要作用是:
(1)供数据库管理系统快速查找有关对象的信息。
数据库管理系统在处理用户存取时,要经常查阅数据字典中的用户表、子模式表和模式表等。
(2)供数据库管理员查询,以掌握整个系统的运行情况。
(3)支持数据库设计与系统分析。
3.简要叙述关系数据库的优点?
答:
关系数据库是以关系模型作为数据的组织方式,关系模型是建立在严格的数学概念基础上的,关系数据库的主要优点是概念简单清晰,用户不需了解复杂的存取路径,不需说明“怎么干”,只需说明“干什么”,易懂易学。
四、综合题(45分):
1.某医院病房计算机管理中需要如下信息:
(10分)
科室:
科名,科地址,科电话,医生姓名
病房:
病房号,床位号,所属科室名
医生:
姓名,职称,所属科室名,年龄,工作证号
病人:
病历号,姓名,性别,诊断,主管医生,病房号
其中,一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个。
完成如下设计:
(1)设计该计算机管理系统的E-R图;(5分)
(2)将该E-R图转换为关系模型结构;(3分)
(3)指出转换结果中每个关系模式的候选码。
(2分)
2.设有关系S、SC、C,试用关系代数、元组关系演算表达式和SQL完成下列操作。
(15分,每小题5分)
S(S#,SNAME,AGE,SEX) 例:
(001,'李强',23,’男')
SC(S#,C#,SCORE)例:
(003,'C1',83)
C(C#,CNAME,TEACHER)例:
('C1','数据库原理','王华')ﻫ
(1)用关系代数检索选修课程号(C#)为C1和C2的学生学号(S#)。
(2)用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生姓名。
(2)用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生学号。
(3)用SQL找出选修了“程军”老师教的所有课程的学生姓名。
3.设有关系模式R(U,F),其中:
(10分)
U={E,F,G,H},F={E→G,G→E,F→EG,H→EG,FH→E}
求F的最小依赖集。
4.设有关系R和函数依赖F:
(10分)
R(W,X,Y,Z),F= {X→Z,WX→Y}。
试求下列问题:
ﻫ
(1)关系R属于第几范式?
(5分)ﻫ(2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。
(5分)
要求:
写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
四、综合题(45分):
1.
解:
(1)本题的E-R图如图2所示。
(2)对应的关系模型结构如下:
科室(科名,科地址,科电话)
病房(病房号,床位号,科室名)
医生(工作证号,姓名,职称,科室名,年龄)
病人(病历号,姓名,性别,诊治,主管医生,病房号)
(3)每个关系模式的候选码如下:
科室的候选码是科名;
病房的候选码是科室名十病房号;
医生的候选码是工作证号;
病人的候选码是病历号。
图2 E-R图
2.设有关系S、SC、C,试用关系代数、元组关系演算表达式和SQL完成下列操作。
(15分,每小题5分)ﻫS(S#,SNAME,AGE,SEX) 例:
(001,'李强',23,’男')
SC(S#,C#,SCORE) 例:
(003,'C1',83)ﻫC(C#,CNAME,TEACHER) 例:
('C1','数据库原理','王华')
(1)用关系代数检索选修课程号(C#)为C1和C2的学生学号(S#)。
ΠS#,C#(SC)÷ΠC#(σC#=’C1’∨C#=’C2’(C))-σC#≠’C1’ ∨C#≠ ’C2’(ΠS#,C#(SC)÷ΠC#(σC#=’C1’∨ C#=’C2’(C)))
(2)用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生姓名。
{T
(1)|(∃U)(∃V)(∃W)(S(U)∧SC(V)∧C(W)∧T[1]=U[1]∧U[1]=V[1]∧V[2]=W[1]∧W[3]='程军')}
(2)用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生学号。
{T
(1)| (∃V)(∃W)(SC(V)∧C(W)∧T[1]=V[1]∧V[2]=W[1]∧W[3]='程军')}
(3)用SQL找出选修了“程军”老师教的所有课程的学生姓名。
SELECT S.SNAMEﻫFROM SﻫWHERENOTEXISTS ﻫ (
SELECT*ﻫ FROMC
WHEREC.TEACHER='程军'ANDNOTEXISTSﻫ (
SELECT *ﻫ FROM SC
WHERESC.C#=C.C#AND SC.S#=S.S#
)ﻫ )
本题解释:
SELECT*ﻫFROMC
WHEREC.TEACHER='程军'ANDEXISTS
(ﻫ SELECT *
FROMSCﻫ WHERE SC.C#=C.C#ﻫ )ﻫ这条SQL是查询'程军'所授的所有课程,外层查询中C.C#作为变量在内层查询中被使用,外层教师'程军'所授课程的课程号C#给内层,内层根据该课程号C#在SC中查询是否存在这样的课程号,即程军所授的课程,如果存在则括号中的记录集不空,EXISTS条件为TRUE。
因此,执行结果是显示程军所授的所有课程。
SELECT*
FROMC
WHERE C.TEACHER='程军'ANDNOTEXISTS
(
SELECT*
FROMSCﻫ WHERE SC.C#=C.C#ﻫ )ﻫ这条SQL语句在刚才语句的EXISTS前加了NOT,变成当内层查询全部是'程军'所授课程时NOTEXISTS条件为假。
SELECTS.SNAMEﻫFROMSﻫWHERENOTEXISTS(SELECT*
FROMC
WHERE C.TEACHER='程军'ANDNOTEXISTSﻫ (ﻫ SELECT *ﻫ FROMSCﻫ WHERESC.C#=C.C#ANDSC.S#=S.S#ﻫ )
这条是完整的语句,比上面一条语句多了一个ANDSC.S#=S.S#表示某个学生的学号,加上最外层的NOTEXISTS的整个语句的含义是,对该某个学生,如果最内层查询中查询结果全部是‘程军’所授课程时,条件C.CNAME='程军'ANDNOTEXISTS为FALSE,所以SELECT*FROMC的查询结果为空(第二层),这时最外层的NOTEXISTS为TRUE,最外层查找成功,该学生是选修了‘程军’所授全部课程的。
3.设有关系模式R(U,F),其中:
(10分)
U={E,F,G,H},F={E→G,G→E,F→EG,H→EG,FH→E}
求F的最小依赖集。
解:
⑴将F中右部属性单一化:
(2分)
F1= {E→G,G→E,F→E,F→G,H→E,H→G,FH→E}
⑵去掉左部冗余的属性。
对于FH→E,由于有F→E,则为多余的。
F2={E→G,G→E,F→E,F→G,H→E,H→G} (2分)
⑶去掉冗余的函数依赖。
F2中的F→E和F→G,以及H→E,H→G之一是冗余的,则:
F3={E→G,G→E,F→G,H→G} (6分)
4.设有关系R和函数依赖F:
(10分)
R(W,X,Y,Z),F ={X→Z,WX→Y}。
试求下列问题:
ﻫ1.关系R属于第几范式?
(5分)ﻫ2.如果关系R不属于BCNF,请将关系R逐步分解为BCNF。
(5分)
要求:
写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
解:
R是1NF。
侯选码为WX,则Y,Z为非主属性,又由于X→Z,因此F中存在非主属性对侯选码的部分函数依赖。
将关系分解为:
R1(W,X,Y),F1={WX→Y }
R2(X,Z),F2 ={X→Z }
消除了非主属性对码的部分函数依赖。
F1和F2中的函数依赖都是非平凡的,并且决定因素是候选码,所以上述关系模式是BCNF。
《数据库系统概论》试题B
1.数据库系统的核心是____。
A.数据库 B.数据库管理系统
C.数据模型D.软件工具
3.SQL语言具有____的功能。
A.关系规范化、数据操纵、数据控制
B.数据定义、数据操纵、数据控制
C.数据定义、关系规范化、数据控制
D.数据定义、关系规范化、数据操纵
10.设有两个事务T1、T2,其并发操作如图1所示,下面评价正确的是____。
A.该操作不存在问题 B.该操作丢失修改
C.该操作不能重复读 D.该操作读“脏”数据
T1 T2
①读A=10
② 读A=10
③A=A-5写回
④ A=A-8写回
图1 事务并发操作图
2、填空题(20分,每小空2分):
7
完整性约束是指②和③。
实体完整性参照完整性
3.关系数据库中可命名的最小数据单位是④。
属性名
4.保护数据安全性的一般方法是⑤。
设置用户标识和存取权限控制
5.“为哪些表,在哪些字段上,建立什么样的索引”这一设计内容应该属于数据库设计中的⑥设计阶段。
物理
6.若关系为1NF,且它的每一非主属性都⑦候选码,则该关系为2NF。
不部分函数依赖于
7.关系代数运算中,专门的关系运算有.选择 投影 连接
三、简答题和综合题(15分,每小题5分):
1.举例说明关系参照完整性的含义。
2.数据库管理系统有哪些功能?
3.事务中的提交和回滚是什么意思?
四、综合题(45分):
1.假定一个部门的数据库包括以下的信息:
(10分)
职工的信息:
职工号、姓名、住址和所在部门。
部门的信息:
部门所有职工、经理和销售的产品。
产品的信息:
产品名、制造商、价格、型号及产品内部编号。
制造商的信息:
制造商名称、地址、生产的产品名和价格。
完成如下设计:
(1)设计该计算机管理系统的E-R图;(5分)
(2)将该E-R图转换为关系模型结构;(3分)
(3)指出转换结果中每个关系模式的候选码。
(2分)
2.设有关系S、SC、C,试用关系代数、元组关系演算表达式和SQL完成下列操作。
(15分,每小题5分)
S(S#,SNAME,AGE,SEX)例:
(001,'李强',23,’男')
SC(S#,C#,SCORE)例:
(003,'C1',83)
C(C#,CNAME,TEACHER) 例:
('C1','数据库原理','王华')
(1)用关系代数检索既选修了C1课程,又选修了C2课程的学生学号(S#)。
(2)用元组关系演算表达式检索年龄大于21的男生的学号和姓名。
(3)用SQL找出“程序设计”课程成绩在90分以上的学生姓名。
3.设有函数依赖集F= { D→G,C→A,CD→E,A→B},计算闭包D+,(AC)+,(ACD)+。
(10分)
4.设有关系R和函数依赖F:
(10分)
R(X,Y,Z),F={ Y→Z,XZ→Y}。
试求下列问题:
(1)关系R属于第几范式?
(5分)
(2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。
(5分)
要求:
写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
试题答案
三、简答题(15分,每小题5分):
1.举例说明关系参照完整性的含义。
答:
假如有下表所示的两个关系表,在成绩表中,学号是主码,课程号是外码:
在课程表中课程号是主码,根据关系参照完整性的定义,R2是成绩表,R1是课程表,也就是成绩表中课程号的值或者为空或者在课程表中的课程号中能够找到。
成绩表 课程表
学号姓名ﻩ课程号ﻩ成绩
101ﻩ刘军k5ﻩ80
212ﻩ王丽k8ﻩ76
221ﻩ章华k9ﻩ92
ﻩﻩ
课程号ﻩ课程号
k5高等数学
k8C语言n
k9计算机网络
满足这个条件是必须的,如果不满足,假设成绩表中课程号的值k20在课程表中课程号的值中找不到,则该课程号显然是不正确的,这样会造成数据的不一致性。
2.数据库管理系统有哪些功能?
答:
数据库管理系统(DBMS)是位于操作系统与用户之间的一个数据管理软件,它主要功能包括以下几个方面:
•数据定义功能DBMS提供数据描述语言(DDL),用户可通过它来定义数据。
•数据操纵功能 DBMS还提供数据操纵语言(DML),实现对数据库的基本操作:
查询、插入、删除和修改。
•数据库的运行管理这是DBMS运行时的核心部分,它包括开发控制,安全性检查,完整性约束条件的检查和执行,数据库的内容维护等。
•数据库的建立和维护功能它包括数据库初始数据的输入及转换,数据库的转储与恢复,数据库的重组功能和性能的监视与分析功能等。
3.事务中的提交和回滚是什么意思?
答:
事务中的提交(COMMIT)是提交事务的所有操作。
具体说就是将事务中所有对数据库的更新写回到磁盘上的物理数据库中去,事务正常结束。
事务中的回滚(ROLLBACK)是数据库滚回到事务开始时的状态。
具体地说就是,在事务运行的过程中发生了某种故障,事务不能继续执行,系统将事务中对数据库的所有已完成的更新操作全部撤消,使数据库回滚到事务开始时的状态。
四、综合题(45分):
1.
(1)设计该计算机管理系统的E-R图;(5分)
(2)将该E-R图转换为关系模型结构;(3分)
(3)指出转换结果中每个关系模式的候选码。
(2分)
解:
本题对应的E-R图如图2 所示。
图2 E-R图
2.
(1)用关系代数检索既选修了C1课程,又选修了C2课程的学生学号。
(∏SNAME(SC#='C1'(SC)))∩(∏SNAME(SC#='C2'(SC)))
(2)用元组关系演算表达式检索年龄大于21的男生的学号和姓名。
{t(2)|(r)(S(r)∧t[1]=r[1]∧t[2]=r[2]∧r[3]>21∧r[4]='男')}
(3)用SQL找出“程序设计”课程成绩在90分以上的学生姓名。
解:
SELECTSNAME
FROM S,SC,C
WHERE S.S#=SC.S#ANDSC.C#=C.C#AND SCORE>=90ANDCNAME='程序设计'
或者
SELECTSNAME
FROMS
WHERERS.S# IN (
SELECTS#
FROM SC
WHERESCORE>=90ANDC.C#IN(
SELECT C#
FROMC
WHERECNAME='程序设计')
3.设有函数依赖集F={D→G,C→A,CD→E,A→B},计算闭包D+,(AC)+,(ACD)+。
(10分)
解:
令X={D},X(0)=D,X(1)=DG,X
(2)=DG,故D+=DG。
令X={AC},X(0)= AC,X(1)=ABC,X
(2)=ABC,故(AC)+ =ABC。
令X={ACD},X(0)=ACD,X(1)=ABCD,X
(2)=ABCDG,X(3)=ABCDEG,故(ACD)+=ABCDEG。
4.设有关系R和函数依赖F:
(10分)
R(X,Y,Z),F={Y→Z,XZ→Y}。
试求下列问题:
(1)关系R属于第几范式?
(5分)
(2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。
(5分)
要求:
写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
解:
R是3NF。
侯选码为XY和XZ,R中所有属性都是主属性,不存在非主属性对码的传递依赖。
R1(X,Y,Z),F ={XZ→Y}
R2(Y,Z),F ={ Y→Z}
消除了非主属性对码的传递依赖。
F1和F2中的函数依赖都是非平凡的,并且决定因素是候选码,所以上述关系模式是BCNF。
《数据库系统概论》试题C
1.数据库系统与文件系统的主要区别是____。
A.数据库系统复杂,而文件系统简单
B.文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决
C.二文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件
D.文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量
8.数据库的____是指数据的正确性和相容性。
A.安全性 B.完整性C.并发控制D.恢复
9.授权编译系统和合法性检查机制一起组成了____子系统。
A.安全性B.完整性 C.并发控制 D.恢复
1.DBMS的基本工作单位是事务,它是用户定义的一组逻辑一致的程序序列;并发控制的主要方法是①机制。
封锁
3.关系数据库中基于数学上两类运算是③和④。
关系代数关系演算
4.数据库设计的几个步骤是⑤。
需求分析,概念设计,逻辑设计,物理设计,编码和调试
关系操作的特点是⑩操作集合。
三、简答题(15分,每小题5分):
1.什么是数据库?
2.什么是数据库的数据独立性?
3.叙述等值连接与自然连接的区别和联系。
四、综合题(45分):
1.设有如下实体:
(10分)
学生:
学号、单位、姓名、性别、年龄、选修课程名
课程:
编号、课程名、开课单位、任课教师号
教师:
教师号、姓名、性别、职称、讲授课程编号
单位:
单位名称、电话、教师号、教师名
上述实体中存在如下联系:
(1)一个学生可选修多门课程,一门课程可为多个学生选修;
(2)一个教师可讲授多门课程,一门课程可为多个教师讲授;
(3)一个单位可有多个教师,一个教师只能属于一个单位。
试完成如下工作:
(1)分别设计学生选课和教师任课两个局部信息的结构E-R图。
(4分)
(2)将上述设计完成的E-R图合并成一个全局E-R图。
(3分)
(3)将该全局E-R图转换为等价的关系模型表示的数据库逻辑结构。
(3分)
2.设有关系S、SC、C,试用关系代数、元组关系演算表达式和SQL完成下列操作。
(15分,每小题5分)
S(S#,SNAME,AGE,SEX)例:
(001,'李强',23,’男')
SC(S#,C#,SCORE)例:
(003,'C1',83)
C(C#,CNAME,TEACHER) 例:
('C1','数据库原理','王华')ﻫ(1)试用关系代数检索选修了“程军”老师所授课程之一的学生姓名。
(2)试用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生姓名。
(2)试用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生学号。
(3)试用SQL找出“程序设计”课程成绩在90分以上的学生姓名。
3.设有关系模式R(U,F),其中:
(10分)
U={A,B,C,D,E},F = {A→BC,CD→E,B→D,E→A}。
⑴ 计算B+。
(2分)
⑵求R的所有候选码。
(8分)
4.设有关系STUDENT(S#,SNAME,SDEPT,MNAME,CNAME,GRADE),S#,CNAME为候选码,设关系中有如下函数依赖:
(10分)ﻫS#,CNAME→SNAME,SDEPT,MNAMEﻫS#→SNAME,SDEPT,MNAMEﻫS#,CNAME→GRADEﻫSDEPT→MNAMEﻫ试求下列问题:
(1)关系STUDENT属于第几范式?
(5分)
(2)如果关系STUDENT不属于BCNF,请将关系STUDENT逐步分解为BCNF。
(5分)ﻫ要求:
写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
试题答案
三、简答题(15分,每小题5分):
1.什么是数据库?
答:
数据库是长期存储在计算机内、有组织的、可共享的数据集合。
数据库是按某种数据模型进行组织的、存放在外存储器上,且可被多个用户同时使用。
因此,数据库具有较小的冗余度,较高的数据独立性和易扩展性。
2.什么是数据库的数据独立性?
答:
数据独立性表示应用程序与数据库中存储的数据不存在依赖关系,包括逻辑数据独立性和物理数据独立性。
逻辑数据独立性是指局部逻辑数据结构(外视图即用户的逻辑文件)与全局逻辑数据结构(概念视图)之间的独立性。
当数据库的全局逻辑数据结构(概念视图)发生变化(数据定义的修改、数据之间联系的变更或增加新的数据类型等)时,它不影响某些局部的逻辑结构的性质,应用程序不必修改。
物理数据独立性是指数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库系统概论 数据库 系统 概论 试题 答案