2013年--2014年学度 渤海大学文理学院 数据库原理与运用 复习题及其答案

更新时间:2023-11-11 12:00:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

2013年--2014年学度 渤海大学文理学院 数据库原理与运用 复习题及其答案

一、填空题

1、实体集之间存在是三种联系: 一对一 ,一对多,多对多。

2、经过选择运算后,所得关系的属性数量 等于 原关系的属性数量。

3、数据库的安全性是指保护数据库以防止 非法 的使用所造成的 数据泄露更改或破坏。 4、关系数据库模式设计不合理会带来各种问题,这些问题被称作异常,异常的基本类型包括冗余和 更新 异常, 删除 异常。

5、E/R图是描述实体集、属性和联系的图示,用矩形表示 实体集 ,椭圆表示 属性 ,菱形表示 关系 。

6、查询指令中布尔值TRUE看做1,FALSE看做0,UNKNOWN看做 1/2 。

7、在SQL语言中,子查询是 另一个查询的一部分 。

8、在联系数据库中,要求基本关系中所有的主属性上不能有空值,其遵守的约束规则是 实体完整性规则 。

9、在关系模式中R,如果X→Y,并且对于X的任何一个真子集X’,都有Y不依赖于X’,则称 部分函数依赖 。

10、经过投影运算后,所得关系的属性数量 小于等于 ,原关系的属性数量。 11、E/R图设计原则:忠实性、 避免冗余 、简单性、选择正确的联系。 12、对数据进行分类、组织、编码、存储、检索和维护称为 查询处理 。 13、事务特性为持久性、 并发性(隔离性) 、独立性。

14、若R是5目的关系,S是3目的关系,则R×S是 15 目关系,若R是10个元组,S是15个元组,则R×S是 150 个元组。

15、如果X→Y和X→Z成立,那么X→YZ也成立,这个推理规则称为 合并规则 。

16、数据库查询通过 查询编译器 完成语法分析和优化,编译的结果是查询计划或是由 DBMS 执行并获得查询结果的操作序列,他们将被送给执行引擎。 17、SQL的COMMIT语句的主要作用是 提交事务 。 18、SQL的RLLBACK语句的主要作用是 使事务夭折 。

19、表示实体集与实体集间联系的模型称为数据模型,它可以分为两种:概念数据模型和结构数据模型(逻辑模型和物理模型)

20、结构模型应包括数据结构、数据操作、数据完整性三要素。

数据库系统采用三级模式结合两级映射实现了较高的数据逻辑独立性和物理独立性。 22、DBS一般包括人员、硬件、软件、数据库。

23、数据库系统中数据操作在最小单位是属性,基本单位是元组。 24、关系实例是一个关系,即一张 二维表。 25、“授权”是DBS采用的安全性措施。 26、DB的转储DBS的恢复措施。

27、DFD图在DBS的需求分析和概念设计之间起桥梁作用。 28、数据字典包括数据项、数据结构、数据流、数据存储。 29、ER图在DB的概念设计和逻辑设计之间起桥梁作用。

30、恢复技术的基本原理是建立数据冗余,最常用的技术是数据转储和登记日志文件。

31、数据库并发操作引发的问题包括丢失修改、读脏数据和不可重复读,常用的并发控制方法是封锁。

二、简答

1、简述DBS与DBMS的概念

DBS是数据库系统DBMS是数据库管理系统

2、简述层次模型、网状模型、关系模型三种结构数据模型的概念

层次模型 用树型结构表示实体及其之间联系的模型。

网络模型 用网络结构表示实体类型及其实体之间联系的模型 关系模型 对关系的描述成为关系模式,一个关系模式,对应一个关系文件的结构。 3、简述DBS的三级模式结构及这种结构的优点

数据库的三级数据模式中包括概念模式,外模式和内模式。优点:保证数据库系统具有数据整体性和共享性,也保证数据具有较高的物理独立性和逻辑独立性。

(概念模式是对数据库中数据的整体逻辑结构和特征的描述,是对所有用户的数据进行综合抽象而得到的统一的全局数据视图;外模式是对各个用户或程序所涉及到的数据的逻辑结构和数据特征的描述,是完全按用户自己对数据的需要,站在局部的角度进行设计的;内模式是对数据的内部表示或底层描述。)

4、简述DBMS的主要功能 书p1 DBMS的主要功能为

1) 数据库的定义功能,它提供数据定义语言(DDL)来定义数据库的三级结构。 2) 数据库的操纵功能,它提供数据操纵语言(DML)实现对数据库的操作。 3) 数据库的保护功能,它是通过数据库的并发控制,数据库的恢复,数据完整性控制,数据安全性控制这四个子系统实现的 5、简述DBMS对数据库的保护功能

DBMS对数据库的保护主要通过数据库的恢复、数据库的并发控制、数据库的完整性控制、数据库的安全性控制等四个方面实现。 6、简述关系中元组没有先后顺序的原因

因为关系是一个集合,因此不考虑元组间的顺序,即没有行序 7、简述笛卡尔积、等值连接、自然连接三者之间的区别 p24-25

等值连接中有笛卡尔积运算;自然连接是一种等值连接,它是两个关系中所有公共属性进行等值连接的结果。

(笛卡尔(Descartes)乘积又叫直积。假设集合A={a,b},集合B={0,1,2},则两个集合的笛卡尔积为{(a,0),(a,1),(a,2),(b,0),(b,1), (b,2)}。可以扩展到多个集合的情况。 等值连接是条件连接在连接运算符为“=”号时的特例。

它是从关系R与S的广义笛卡尔积中选取A,B属性值相等的那些元组 自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉

等值连接表示为R A=BS,自然连接表示为R S;自然连接是除去重复属性的等值连接。两者之间的区别和联系如下:

1、自然连接一定是等值连接,但等值连接不一定是自然连接。等值连接不把重复的属性除去;而自然连接要把重复的属性除去。

2、等值连接要求相等的分量,不一定是公共属性;而自然连接要求相等的分量必须是公共属性。

3、等值连接不把重复的属性除去;而自然连接要把重复的属性除去。)

8、简述关系代数表达式优化的作用p6

为了系统在执行时既省时间又能提高效率。

9、简述过程性语言与非过程性语言的概念 过程性语言 给出任务的过程 非过程性语言 只给出任务的目标 10、简述参照完整性规则

如果表中存在外键,则外键的值必须与主表中相应的建值相同,或者外键的值为空 11、简述视图与基本表的区别与联系 p202方框

基本表是数据库中本身独立存在的表,每个基本表对应一个关系模式。在SQL中一个关系就对应一个基本表。一个(或多个)基本表对应一个存储文件,一个基本表可以建立若干索引,它们都依附于基本表且存放在存储文件中。

视图是从一个或几个基本表导出的表。视图本身不独立存储在数据库中,是一个虚表。即数据库中只存放视图的定义及其关联的基本表名等信息而不存放视图对应的数据,这些数据仍然存放在导出视图的基本表中。但SQL在查询视图时与基本表完全相同,且用户可以在视图上再定义视图。但用视图对数据库中的数据进行增、删、改等更新操作时有一定的限制。

12、简述关系数据库中视图的定义 p202 定义是各种SQL查询语句 13、简述视图的作用 p204 视图能够简化用户的操作 视图使用户能以多钟角度看待同一数据 视图对重构数据库提供了一定程度的逻辑独立性 视图能够对机密数据提供安全保护 适当的利用视图可以更清晰的表达查询

14、简述数据模型中完整性约束条件的概念p33

完整性约束条件是指数据库中的数据应该满足的语义约束条件

15、简述关系模型中完整性约束p33

在某个关系中出现的值也必须在另一个相关的关系中出现

16、简述数据库设计的概念

数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。

17、简述数据库设计过程 p73

①需求分析思考②概念结构设计③逻辑结构设计④数据库物理设计⑤数据库实施⑥数据库运行和维护

18、简述数据库设计的需求分析过程及目标 (思考)

①需求分析思考②概念结构设计③逻辑结构设计④数据库物理设计⑤数据库实施⑥数据库运行和维护 目标消除异常

19、简述采用E/R方法的数据库概念设计过程

E-R模型的图示法:(1)实体集表示法(2)属性表法(3)联系表示法 20、简述规范化理论对数据库设计的指导意义

1)在数据分析阶段,用数据依赖的概念分析和表示各项数据项之间的关系。 2)在设计概念结构阶段,用规范化理论消除初步ER图冗余的联系。 3)有ER图像数据模型转化阶段,用模式分解的概念和方法指导设计。

21、简述数据库恢复的基本技术 数据转储 登录日志文件

22、简述数据字典的主要任务和作用 数据流,数据存储,数据项和加工

数据字典的作用是对数据流程图上每个成分给以定义和说明,目的是进行数据分析和归档。同时也是数据库/数据文件设计的依据。除此之外,数据字典还要对系统分析中其他所需要说明的问题进行定义和说明。这样一来,数据流程图配上数据字典,对新系统逻辑模型的描述就完整了。

23、简述可串行化调度的概念及实现办法P176

每个事务中,语句的先后顺序在各种调度中保持一致。在这个前提下,如果一个并行调度的执行结果与某一串行调度的执行结果等价,那么这个并发调度称为可串行化调度。

实现办法:锁定数据库元素,即锁机制

24、简述数据库的并发操作引起的问题及常用并发控制的方法P179 丢失修改,读脏数据、不可重复读 常用的并发控制是封锁

三、

1)给定关系模式R( S ,C,G,TN,TA)其属性分别表示学号,课程编号,成绩,任课教师姓名及地址,若规定每个学生一门课只有一个成绩;每门课只有一个教师任教,每个教师只有一个地址(并规定教师无同名姓者)试写关系模式R 基本的函数依赖和候选码

由每个学生一门课只有一个成绩,可知存在函数依赖SC→G,由每门课只有一个教师任教,可知存在函数依赖C→TN,由每个教师只有一个地址,可知存在函数依赖TN→TA。 关系模式R 基本的函数依赖FD:{SC→G,C→TN,TN→TA} 候选码是{S,C}

2)给定关系模式R( S ,C,G,TN,TA)已知函数依赖集FD:{SC--->G,C--->TN,TN-->TA},试给出R分解成2NF模式集并说明理由

(1) 容易看出,关系模式R是1NF。因为R符合关系的定义,R的所有属性值都是不可再分的原子值。 R是否为2NF,应根据2NF的定义来判断。

首先要确定关系模式R中各属性间的函数依赖情况。如果没有直接给出R的函数依赖集,就要按照语义把它确定下来。在本例中,已直接给出基于R的函数依赖集F,我们可使用阿氏推理规则并结合下面介绍的方法,进一步确定R中哪些是主属性、哪些是非主属性、侯选关键字由哪些属性构成。

写出函数依赖集F中的各个函数依赖以帮助分析。 F={(S,C)→G, C→TN, TN→TA }

在关系模式R={S ,C,G,TN,TS},候选关键字是(S,C),主属性是S,C,非主属性是G,TN,TS,

由于R中存在非主属性对候选关键字的传递依赖C→TN,TN→TA,可以把关系R无损联接地分解成两个关系模式R1={S,C,G},R2={C,TN,TA}

3)给定关系模式R( S ,C,G,TN,TS)已知函数依赖集FD:{SC--->G,C--->TN,TN-->TS},试给出R分解成3NF模式集并说明理由

在关系模式R={S ,C,G,TN,TS},候选关键字是(S,C),主属性是S,C,非主属性是G,TN,TS,由于R中存在非主属性对候选关键字的传递依赖C→TN,TN→TS,可以把关系R无损联接地分解成两个关系模式R1={S,C,G},R2={C,TN,TS}

在关系模式R1={S,C,G},候选关键字是(S,C),主属性是S,C,非主属性是G,函数依赖为(S,C)→G。 由于R1中不存在非主属性对候选关键字的传递依赖,所以关系模式R1是3NF。

在关系模式R2={C,TN,TS},候选关键字是C,主属性是C,非主属性是TN,TS,函数依赖为C→TN,TN→TS。由于R2中存在非主属性对候选关键字的传递依赖C →TS,所以关系模式R2不是3NF。

可以把关系R2无损联接地分解成两个3NF的关系模式:R3={C,TN},R4={TN,TS}。 R的3NF模式集是R1={S,C,G},R3={C,TN},R4={TN,TS}。

(1) 在关系模式R1={S,C,G},候选关键字是(S,C),主属性是S,C,非主属性是G,函数依赖为(S,C)→G。 由于R1中不存在非主属性对候选关键字的传递依赖,所以关系模式R1是3NF。

(2) 在关系模式R2={C,TN,TS},候选关键字是C,主属性是C,非主属性是TN,TS,函数依赖为C→TN,TN→TS。由于R2中存在非主属性对候选关键字的传递依赖C TS,所以关系模式R2不是3NF。

可以把关系R2无损联接地分解成两个3NF的关系模式: R={R3,R4},R3={C,TN},R4={TN,TS}。

4)设有关系模型R(u,f)其中u={A,B,C,D,E,G},

f={BG-->C,BD--->E,DG-->C,DAG-->CB,AG-->B,B-->D}试将R分解3NF模式集

在关系模式R={A,B,C,D,E,G},候选关键字是(A,G),主属性是A,G,非主属性是B,C,D,E,由于R中存在非主属性对候选关键字的传递依赖BG→C,BD→E,DG→C,DAG→CB,B→D,可以把关系R无损联接地分解成两个关系模式R1={A,G,B},R2={B,C,D,E,G}

在关系模式R1={A,G,B},候选关键字是(A,G),主属性是A,G,非主属性是B,函数依赖为(A,G)→B。 由于R1中不存在非主属性对候选关键字的传递依赖,所以关系模式R1是3NF。

在关系模式R2={B,C,D,E,G},候选关键字是(B,G),主属性是BG,非主属性是C,D,E,函数依赖为BD→E,DG→C,BG→C,B→D。由于R2中存在非主属性对候选关键字的传递依赖BD→E,DG→C,所以关系模式R2不是3NF。

可以把关系R2无损联接地分解成两个3NF的关系模式:R3={D,G,C},R4={B,D,E}。 R的3NF模式集是R1={A,G,B},R3={D,G,C},R4={B,D,E}。

四、ER模型题

1)设有百货公司管辖若干连锁商店,每间商店经营若干商品,每家商店有若干职工,但有每个职工只能服务于一家商店,试画出反映商店、商品、职工实体类型及联系类型的ER图,并将其转换成关系模式集。要求每个实体类型含有四个属性、联系一个属性 关系模式集:

商店:(商店编号、店号、店址、店经理) 商品:(商品编号、商品名、单价、产地) 职工:(职工编号、职工名、性别、工资)

2)设有学校有若干个系,每个系有各自的系号,系名、系主任;每个系有若干名教师和学生,教师有教师号,教师姓名和职称;每个教师担任若干门课程,一门课程只能有一名教师讲授。课程有课程号,课程名和学分属性;学生有学号,姓名,年龄,性别,每个学生可以同时选修多门课程,选修有分数,试画出反映系、教师、学生、课程四个实体类型的ER图

3)某公司的业务规则如下

(1)每位职工可以参加几个不用的工程,且每个工程有多名职工参与 (2)每位职工有一个职位,且多名职工可能有相同职位

(3)职位决定小时工资率,公司按照职工在每一个工程中完成的工时计算筹金 (4)职工的属性有职工号,姓名,职位和小时工资率 (5)工程的属性有工程号和工程名称 试根据上述业务规则,设计ER模型图

4)已知:某公司有多个仓库,每一个仓库放多种零件而且每一种零件也可在多个仓库中保持,在每一个仓库中保存的零件都有库存都有库存数量,仓库的属性,有仓库号,地点和电话号码,零件的属性有零件号,名称,规格和单价。根据上述语义画出ER图。

5)设某商业集团数据库中有三个实体集,一是“仓库”实体集属性有仓库号,仓库名和地址等,二是商店实体集属性有商店号,商店名,地址等,三是商品实体集属性有商品号,商品名,单价。

设仓库与商品之间存在库存联系,每个仓库可储存若干种商品,每种商品存储在若干仓库中,每个仓库存储一种商品有存储日期及存储量,商店与商品之间存在着“销售'联系,每个商店可销售若干商品,每种商品可在若干商店里销售,每个商店销售一种商品有月份和月销量两个属性,事画出ER图,并在图上注明联系类型

五、SQL试题

1.已知数据库模式

Movies(title,year,length,genre,studioname,producerc#) Starsin(movietitle,movieyear,starname) Moviestar(name,address,gender,birthdata) Movieexec(name,address,cert#,networth) Studio(name,address,presc#) 用SQL语句完成如下任务:

1)创建表Moviestar,Movieexec。 2)表Moviestar中插入元组‘叶问’,‘香港’,‘男’,1965.1.1。 3)找出MGM于1995年制作的所有电影。 4)找出资产比“Merv Griffin”多的制片人。 5)找出资产超过1000万的女影星。 6)找出“Hard”参演电影的制片人。 1)CREAT TABLE Moviestar(

name CHAR(30), address CHAR(200), gender CHAR(1), birthdate DATA );

CREAT TABLE Movieexec(

name CHAR(30), address CHAR(200), cert# INT, networth INT );

2)insert into Moviestar values('叶问','香港','男',1965.1.1) 3)SELECT title from Movies

WHERE (studioname='MGM' AND year=1995)

4)

2.已知数据库模式

学生S(Sno,Sname,Age,gender) 学习SC(Sno,Cno,Grade) 课程C(Cno,Cname,Teacher) 用SQL语句完成如下任务:

1)创建表S,其中属性及数据类型自行设定。 2)在表S中插入元组‘100235’,‘李明’,19,‘男’。 3)检索LIU老师所授课程的课程号和课程名。 4)检索年龄大于23岁的男同学的学号和姓名。

5)检索至少选修LIU老师所授课程中一门课程的女学生的姓名。 1) Creat table S(

Sno int ,

Sname char(40), Age int,

Gender char(10));

2) insert into S values(100235,'李明',19,'男')

3.已知数据库模式

学生S(Sno,Sname,Age,gender) 学习SC(Sno,Cno,Grade) 课程C(Cno,Cname,Teacher) 用SQL语句完成如下任务:

1)创建表C,其中属性及数据类型自行设定。 2)在表C中插入元组‘100235’,‘数据库原理’,‘诸葛孔明’。 3)检索每门课程成绩都大于等于80分的学生学号姓名性别。 4)求年龄大于所有女同学年龄的男同学的姓名和年龄。 5)把WANG同学的学习选修和成绩全部删除。

4.已知数据库模式

Product(maker,model,type) PC(model,speed,ram,hd,price)

Laptop(model,speed,ram,hd,screen,price) Printer(model,color,type,price) 用SQL语句完成如下任务: 1)创建Product,Laptop。

2)在表Product中插入元组‘A’,‘1001’,‘pc’。

3)找出所有价格低于1000的个人计算机的型号,速度,硬盘大小。 4)找出哪个生产厂家的笔记本电脑(笔记本)的硬盘容量至少100GB。 5)找出厂家B生产的所有产品的型号和价格。

5.有关图书销售的关系模型如下:

书店S(书店号SNO,书店名SName,地址Addr)

图书B(书号BNO,书名Tname,作者Author,出版社Pub,价格Price) 图书销售SK(书店号SNO,书号BNO,数量Qty) 用SQL语句完成如下任务: 1)创建表B表SK

2)在SK表中插入元组12,SB100234,2350在B表中插入元组DB100234,大学英语,AMAZON,清华大学出版社,34.0

3)查询“王军”撰写的图书名称,出版社及价格;查询“电子出版社\出版的价格在16元之上的图书名称作者及价格

4)查询销售书号为“B007”的书店的名称地址

5)查询“中华书店”销售图书的书名、作者、数量、统计每个书店销售图书的数量中和要求给出书店号

一)设有两个事务T1 T2其并发操作如图所示,指出其中存在的并发问题 顺序 1 2 3 4 T1 读X X=X+5写X T2 读X X=X*2写X 第三步T1事务在进行的同时T2事务也读取到数据

然后进行第四步操作时则T1的事务修改丢失,输出的是T2事务的数据

若采用上述顺序执行,则会出现“丢失修改”数据,应采用封锁机制实现并发控制 二) T1 读A=100 A=A* 2写回 BollBack 恢复A=100 T2 读A=200 脏读数据

T2事务出现脏读数据T1事务还未完成

三)现有两个事务T1和T2,分别包含下列操作 事务T1:读B;计算A=B+1;写回A 事务T2:读A;计算B=A+1;写回B T1 Slock B Y=B=2 Unlock B T2 Slock A X=A=2 Xlock A A=Y+1 写回A(=3) Unlock A Xlock B B =X +1 写回B(=3) Unlock B Unlock A 假设A,B的初值均为2,有下面并发调度策略 (1)试说明该调度是不可串行化的调度 (2)试给出一个可串行化的调度策略

答:(1)不可串行化的调度,结果A=3,B=3因为结果与A、B不同错误调度 (2) Slock B Y=B=2 UNlcokB X LockA A=Y+1 写回A(=3) UnlockA Slock A 等待 等待 等待 X=A=3 Unlock A Xlock B B=X+1 写回B=4 Unlock B

Xlock A A=Y+1 写回A(=3) Unlock A Xlock B B =X +1 写回B(=3) Unlock B Unlock A 假设A,B的初值均为2,有下面并发调度策略 (1)试说明该调度是不可串行化的调度 (2)试给出一个可串行化的调度策略

答:(1)不可串行化的调度,结果A=3,B=3因为结果与A、B不同错误调度 (2) Slock B Y=B=2 UNlcokB X LockA A=Y+1 写回A(=3) UnlockA Slock A 等待 等待 等待 X=A=3 Unlock A Xlock B B=X+1 写回B=4 Unlock B

本文来源:https://www.bwwdw.com/article/6psv.html

Top