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