一、填空题(每空1分,共10分)

  1. 用户与操作系统之间的数据管理软件称为DBMS(数据库管理系统)
  2. 用二维表表示实体类型和实体间关系的数据模型是关系数据模型
  3. 关系代数的五种基本查询操作有选择、投影、、差、笛卡尔积。
  4. 在SELECT语句中使用ORDER BY子句将查询结果排序,其中的desc选项表示降序。
  5. 子查询的条件不依赖于父查询,这类查询称为嵌套子查询或不相关子查询
  6. 若关系模式R(U,F)中U为全键,则R能够满足的最高范式级别为____3NF_________。
  7. 对于函数依赖X→Y,如果Y包含于X则称X→Y是平凡的的函数依赖。
  8. 在数据库设计中,E—R图是进行___概念模型___设计的主要方法。
  9. 避免活锁的最简单的方法是采用先来先服务的策略。
  10. 两段锁协议中,在释放一个封锁以后,规定事务 不能再申请和获取新的封锁

二、单项选择题(每小题2分,共40分)

1. DB , DBMS , DBS 之间的关系是。 ( C  )

A.DB包括DBMS和DBS B. DBMS包括DB和DBS

C. DBS包括DBMS和DB D. DBS与DBMS,DBS无关

2. 要保证数据库物理数据独立性,需要修改的是。 (  B )

A.模式 B.模式与内模式的映射

C.模式与外模式的映射 D.内模式

3. 储蓄所有多个储户,储户可以在多家储蓄所存取款,则储户与储蓄所之间是 (  D )

A.一对一的联系 B.一对多得联系

C.多对一的联系 D.多对多的联系

4. 设R为4元关系R(A,B,C,D),S为3元关系S(B,C,D),则R∞S自然连接构成

的结果集是几元关系。    ( D  )

A.4 B.3

C.7 D.6

5.关系代数∏ 对应SQL语句中的哪个子句。 (  A )

A.SELECT B.FROM

C.WHERE D.GROUP BY

6. 实体完整性要求主属性不能取空值,这通常是通过。 ( C  )

A.定义外键来保证 B.用户自定义完整性来保证

C.定义主键来保证 D.关系系统自动保证

7.若用如下的SQL语句创建一个student表:

CREATE TABLE student(NO Char(4) NOT NULL,

NAME Char(8) NOT NULL,

SEX Char(2),

AGE Number(2))

可以插入到student表中的是。    ( B  )

A. (‘1031’, ‘曾华’,男,23) B. (‘1031’,’曾华’,NULL,NULL)

C. (NULL,‘曾华’, ‘男’, ‘23’) D.(‘1031’ , NULL, ‘男’,23)

8. SELECT语句中与HAVING子句同时使用的是哪个子句。    (  C )

A.ORDER BY B.WHERE

C.GROUP BY D.无需配合

9.下列哪种情况不是一个属性列(组)上建立索引的依据。    (  A )

A.该属性列(组)经常需要被更新

B.该属性列经常作为聚集函数的参数

C.该属性列(组)经常在查询条件中出现

D.该属性列(组)经常在连接条件中出现

10.下列哪项操作可能破坏参照完整性。 ( B  )

A.被参照表插入元组(不影响) B.被参照表修改主码值

C.参照表删除元组(不影响) D.参照表修改主码值(不影响)

解析:

参照表(破坏参照完整性)

被参照表(同理)

其他情况

插入元组(参照表新增了一列,导致被参照表没有所对应的新列。)

删除元组(建立的被参照表被删除一列,造成不符合参照表规则)

都不变

修改外码值(修改参照表本身,破坏参照完整性)

修改主码值(就是修改被参照表本身属性),一般被参照的表参照的就是主码,主码不能动

总结:被参照表可以多,但不能少【在参照表不变的情况】,不能动参照的主键列(主码)。

参照表可以少,但不能多【在被参照表不变的情况】,不能动参照表本身属性(外码)。

也就是参照表相当于限制条件,在建表(参照表)的基础上,规则可以少。

同理,在规则已经确定的情况下,必须依照此规则,并且可以多些按照相同规则的属性,但是不能出现某些规则有,但没有符合该规则的属性列。自己慢慢体会,一样的道理!!!

11.关系规范化中的插入异常是指。  ( C  )

A.不应插入的数据被插入 B.不该删除的数据被删除

C.应该插入的数据不能被插入 D.应该删除的数据未被删除

解析:删除异常的指不该删除的数据被删除。

12. 在关系模式R(A,B,C,D)中,有函数依赖集F={B→C,C→D,D→A},则R最高达到第几范式。   ( B  )

A.1NF B. 2NF

  1. 3NF D. 以上三者都不行

解析:存在传递函数依赖,故最高为2NF

13. 在最小依赖集F中,下面叙述不正确的是。    (B   )

A.F中每个FD的右部都是单属性

B.F中每个FD的左部都是单属性

C.F中没有冗余的FD

D.F中每个FD的左部没有冗余的属性

解析:最小函数依赖集条件:(1)F中任一函数依赖右部仅含有一个属性

  1. F中不存在这样的函数依赖X->A,使得F与F-{X->A}等价。【无多余函数依赖】
  2. 左部不能再分,无多余属性

14.如果关系R的分解为ρ=(R1,R2),F是R上的一个FD集,那么分解ρ具有无损连接性的充分必要条件是。    (  A )

(1). (R1∩R2)→(R1-R2) (2). (R1∩R2)→(R2-R1)

(3). (R1∪R2)→(R1-R2) (4). (R1∪R2)→(R2-R1)

供选择的答案:

A. (1)或(2) B. (1)或(3)

C. (3)或(4) D. (2)或(4)

15.数据库系统可能发生的各类故障中,破坏性最大的是。   ( C  )

A.事务故障 B.系统故障

C.介质故障 D.计算机病毒

16. 对基于检查点的恢复技术,下列说法中错误的是。  ( A  )

A. 无论事务在检查点之前还是之后提交,都需执行REDO操作

B. 检查点技术可以提高恢复效率

C. 检查点可以定期建立

D. 能最大限度的减少恢复数据库时根据日志记录所需执行的恢复操作

17.保护数据库,防止未经授权或不合法的使用造成的数据泄漏、非法更改或破坏。这是指数据的。   (  A )

A. 安全性 B.完整性

C.并发控制 D.恢复

18.在DB恢复时,对已经提交但更新未写入磁盘的事务执行。   (  B )

A.UNDO处理 B.REDO处理

C.ROLLBACK处理 D.ABORT处理

19. 设有两个事务T1和T2,它们的并发操作如图所示。对于这个并发操作,下列评价正确的是。   ( A  )

T1

T2

读A=10

读A=10

A=A-5写回

A=A-8写回

A、该操作丢失了更新 B、该操作不能重复读

C、该操作读脏数据 D、该操作不存在问题

20. 若事务T对数据R已加X锁,则其他事务对数据R。  ( D  )

A.可以加S锁不能加X锁 B.不能加S锁可以加X锁

C.可以加S锁也可以加X锁 D.不能加任何锁

三、简答题(每小题5分,共10分)

1.简单描述连接查询的排序合并算法(sort-merge)。

答:首先按连接属性对表1和表2排序

对表1的第一个元组,从头开始扫描表2,顺序查找满足连接条件的元组,找到后就将表1中的第一个元组与该元组拼接起来,形成结果表中一个元组。当遇到表2中第一条大于表1连接字段值的元组时,对表2的查询不再继续

找到表1的第二条元组,然后从刚才的中断点处继续顺序扫描表2,查找满足连接条件的元组,找到后就将表1中的第一个元组与该元组拼接起来,形成结果表中一个元组。直到遇到表2中大于表1连接字段值的元组时,对表2的查询不再继续

重复上述操作,直到表1或表2中的全部元组都处理完毕为止

  1. 什么是事务?什么是事务的ACID属性?

一个数据库操作序列,是数据库应用程序的基本逻辑单元。 这些操作要么都做,要么都不做,是一个不可分割的执行单位。

原子性(Atomicity)一致性(Consistency)隔离性(Isolation)持久性(Durability)

四、应用题(每小题3分,共21分)

对于供应商--零件--工程的四个基本表

供应商:    S (s#,sname,status,city)  /*代码,姓名,状态,供应商所在城市*/

零件表:     P (p#,pname,color,weight,city)  /*零件代码,零件名,颜色,重量,零件商所在的城市*/

工程项目表: J (j#,jname,city)  /*项目代码,项目名,项目所在的城市*/

供应情况表: SPJ (s#,p#,j#,qty)  /*供应商代码,零件代码,工程项目代码,供应数量(表示某供应商  供应某种零件  给某工程项目的数量为QTY)*/

试用关系代数表达下列查询

(1)求由’S1’ 供应的工程名称。

(2)没有使用’天津’供应商生产的’红’色零件的工程号J#。

解:(1)s#=S1,求jname。(先从SPJ表中选出供应商代码为s1,然后要求的是jname,jnanme在工程项目表中,需要将两表进行连接,并选出jname的投影)

∏JNAME (σ S#=’S1’ (SPJ∞J));

(2)答案采取的思路是用

∏J#(J)-J#(∏S#(σCITY = “天津”)(S)) ∞∏S#,P#,J#(SPJ) ∞ ∏P#(σCOLOR=“红”)(P)))

∏J#(J)-J#(σCITY = “天津”^COLOR=“红”(P∞S∞SPJ));

  1. ∏S#(σCITY = “天津”)(S) 是从S表中选取city=天津,并根据s#供应商代码进行投影。意思就是选出天津供应商的代码。
  2. ∏S#,P#,J#(SPJ) 是从SPJ表中投影出S#,P#,J#项,意思就是为了方便将供应商表和零件表和工程项目表三个表联立,并为以后选出符合要求的条件提供前提。
  3. ∏P#(σCOLOR=“红”)(P)) 是从P表中找到颜色为红色的零件代码,先选择,后投影。

将(1)(2)(3)三个部分的部分的语句进行连接,并一起投影出J#。选出了使用

  1. 天津供应商,红色零件,同时瞒住的工程号J#。最后用再J表中所有的J#项目代码减去不满足条件的工程号,剩下的就是满足题意的工程号J#。

试用SQL语句表达下列操作

(3)查询供应商,零件和工程在同一个城市的所有的供应商号,零件号,项目号。

(4)找出工程项目’J2’使用的各种零件的名称及其总数量。

(5)统计所有项目中供应零件’P1’总数量最大的供应商号。

(6)根据关系代数:∏j#(∏p#(σpname=’TV’(P))∞SPJ)写出SQL语句。

(7)根据S表建立一个视图,要求有s#,sname,city三个属性,并且供应商有供应零件。

(3)SELECT S.S#, P.P#, J.J# FROM   S, P, J

WHERE  ( S.CITY = P.CITY AND P.CITY = J.CITY )

(4)SELECT  PNAME , sum(QTY )

FROM  P ,SPJ

WHERE  SPJ.J# = ‘J2’   AND SPJ.P# = P.P#

GROUP BY  P.PNAME

  1. Select S# from spj where p#=’p1’ group by s# having sum(qty)=(SELECT max(sum_qty) FROM ( SELECT S# ,sum (QTY ) sum_qty from spj where p#=’p1’group by s#) );

①SELECT S# ,sum (QTY ) sum_qty from spj where p#=’p1’group by s#;

【查询供应商代码,最大供应数量,从spj表中,条件是零件代码是p1,并且按照供应商代码分类】

剩下的还是套娃:②从第一步的查询结果中找到最大供应数量并将其赋值给sum(qty)聚集函数。第一步就是做了个分类。。。。

(6)Select  disctinct j#  from p,spj  where p.p#=spj.p# and pname=’TV’;

(7)Create view sp As   Select s#,sname,city from s where s# in  (select s# from SPJ)

五、综合题(共9分)

关系R(A,B,C,D,E,P,G,H,I,J)满足下列函数依赖:F={AB→E, ABE→GP, B→PI,C→J,CJ→I,G→H}

(1)该函数依赖集是最小函数依赖集吗?若不是,将其化为最小函数依赖集。(6分)

(2)给出该关系的候选码,并说明R属于几范式。(3分)

解:(1)F不是最小函数依赖集。最小函数依赖集Fm={AB→E,AB→G,B→P,B→I,C→J,C→I,G→H}

详细步骤:①对于AB->E, B->PI [ABPI],AB的闭包不能确定E,所以AB->E不多余

②ABE→GP, 先对其进行分解,ABE->G,ABE->P,然后我们知道E是多余的,然后得到AB->G,AB->P。然后判断AB->G,发现不是多余的,故保留。然后看AB->P,我们可以看到B->P,B->I,可以看出A是多余的,故为B->P保留。

③B->P,B->I,已经有B->P,只需看B->I,发现B的闭包确定不了I,故B->I不多余。

④C→J,C的闭包确定不了J,故C→J保留。

⑤CJ→I,已知C→J,那么J多余,判断C→I是否多余,C的闭包确定不了I,故C→I保留。

⑥G→H,G的闭包确定不了H,故G→H保留。

综上所述,最小函数依赖集Fm={AB→E,AB→G,B→P,B→I,C→J,C→I,G→H}

(2)候选码为ABC,并且R∈1NF

六、数据库设计题(共10分)

设某汽车运输公司数据库中有三个实体集.一是“车队”实体集,属性有车队号、车队名等;二是“车辆”实体集,属性有牌照号、厂家、出厂日期等;三是“司机”实体集,属性有司机编号、姓名、电话等。

设车队与司机之间存在“聘用”联系,每个车队可聘用若干司机,但每个司机只能应聘于一个车队,车队聘用司机有个聘用期属性;车队与车辆之间存在“拥有”联系,每个车队可拥有若干车辆,但每辆车只能属于一个车队;司机与车辆之间存在“使用”联系,司机使用车辆有使用日期和公里数两个属性,每个司机可使用多辆汽车,每辆汽车可被多个司机使用。

  1. 请画出该运输公司管理系统的E-R图。(5分)
  2. 设计出满足3NF的关系模式集。(5分)

解:(1)矩形代表实体,椭圆代表属性,菱形框代表关系。

分析:三个实体:车队,车辆,司机

属性:【车队的属性】车队号、车队名,【车辆】牌照号、厂家、出厂日期,【司机】司机编号、姓名、电话。

关系:车队--》聘用--》司机,1对多的关系【司机拥有聘用期属性】。车队和车辆是1对多的关系,并且车队拥有车辆。司机和汽车是多对多,是使用与被使用关系使用车辆

有使用日期和公里数两个属性。

(2)

关系模式:

车队(车队员,车队名)

司机(司机编号,姓名,电话,聘用期,车队号)

车辆(牌照号,厂家,出厂日期,车队号)

使用(司机编号,牌照号,使用日期,公里数)

数据库系统概论练习5相关推荐

  1. 【思维导图总结——数据库系统概论】数据库安全性

    数据库安全性 数据库系统概论--数据库安全性 数据库安全性 一.数据库安全性概述 二.数据库安全性控制 (一).计算机的安全模型 (二).数据库安全性控制的常用方法 1.用户身份鉴别与存取控制 2.自 ...

  2. 【思维导图总结——数据库系统概论】关系数据库标准语言SQL

    关系数据库标准语言SQL 数据库系统概论--关系数据库标准语言SQL 关系数据库标准语言SQL 一.SQL概述 二.数据定义 (一).SQL数据定义语句以及现代关系数据库的层次结构 (二).模式的定义 ...

  3. 【思维导图总结——数据库系统概论】绪论

    绪论 数据库系统概论--绪论 绪论 写在前面 一.数据库系统概述 二.数据模型 (一).数据模型的构建要求及组成要素 (二).分类 1.概念模型(信息模型) 2.逻辑模型(物理模型) 三.数据库系统的 ...

  4. 数据库系统概论:第一章 绪论

    1.1 数据库系统概论 1.1.1 数据库系统概论 1. 数据 描述事物的符号记录称为是数据; 数据的解释叫做语义,他与数据时密不可分的; 记录是计算机中表示和储存数据的一种格式或者一个方法; 2. ...

  5. 南京工程学院 数据库复习(数据库系统概论复习 及 数据库原理与应用样题)

    一.数据库系统概论 1.1 百度文库 复习文档(需下载券) <数据库系统概论>(王珊.第五版) ★第一章   绪论 v 本章内容:数据库系统概述.数据模型.数据库系统结构 v 本章主要考点 ...

  6. 6.0 《数据库系统概论》之关系数据库的规范化理论(数据依赖对表的影响[插入-删除-修改-冗余]、1NF-2NF-3NF-BCNF-4NF、函数依赖与多值依赖)

    文章目录 0.思维导图 1.为什么要学习关系数据库规范化理论? (1)基本概念回顾 (2)关系模式的形式化定义 (3)什么是数据依赖F? (4)数据依赖F对关系模式的影响 1️⃣ 数据冗余(Data ...

  7. 3.1 《数据库系统概论》SQL概述及数据定义(模式SCHEMA、表TABLE、索引INDEX)

    文章目录 0.前言 1.思维导图 2.SQL概述 (1)什么是SQL? (2)SQL的特点 (3) SQL的基本概念 3.数据字典 4.数据定义 (1)数据定义概览 (2)模式的定义与删除---SCH ...

  8. 计算机试题dddd,数据库系统概论试题及答案dddd_Image_Marked.pdf

    数据库系统概论试题及答案dddd_Image_Marked 数据库系统概论复习资料: 第一章: 一选择题: 1.在数据管理技术的发展过程中,经历了人工管理阶段.文件系统阶段和数据库系统阶段.在这几个阶 ...

  9. filestorage 修改吧部分数据_数据库系统概论课后答案||第五版

    关注公众号,更多资源分享 回复关键词:数据库系统概论 即可获取相应资源 其他章节关注公众号获取 第 1 章 绪论 1 . 试述数据. 数据库. 数据库系统. 数据库管理系统的概念. 答:( l ) 数 ...

  10. (数据库系统概论|王珊)第三章关系数据库标准语言SQL:习题

    文章目录 名词解释 简答题 应用题 名词解释 视图:视图是一个虚表,其本质就是一条SELECT语句,而查询结果被赋予了一个名字,也即视图名字.或者说视图本身不包含任何数据,它只包含映射到基表的一个查询 ...

最新文章

  1. 每天生产45亿词!GPT-3已渗透进300+应用中,网友:边吃边拉
  2. c# 两个list比较_C#刷遍Leetcode面试题系列连载(1) 入门与工具简介(VS Code amp; VS)...
  3. ext3分区修复linux,linux – 如何从损坏的ext3分区恢复数据?
  4. CG CTF CRYPTO 异性相吸
  5. nginx http proxy 正向代理
  6. gg参数:dblogreader
  7. 影之刃3服务器维护,影之刃3手游2021年3月11日维护公告_影之刃3手游2021年3月11日更新了什么_玩游戏网...
  8. redis实现轮询算法_基于zookeeper或redis实现分布式锁
  9. 数据结构与算法-时间复杂度的级别-时间复杂度的算法
  10. TCP/IP协议栈:TCP超时重传机制
  11. VS2015 调试代码时写入位置时发生访问冲突
  12. linux下罗技摄像头采集图片,linux下寻找罗技摄像头快看酷讯版驱动
  13. 系统集成项目管理工程师14真题解析
  14. 本地iis部署之后网页无法打开
  15. 十月上旬百度 阿里巴巴 迅雷搜狗最新面试七十题 第201 270题
  16. iphone计算机怎样打开声音,8个iOS必知小技巧!iPhone的声音还可以调更大哦!
  17. 使用阿里云实现简单的直播
  18. Java String类源码阅读笔记
  19. 《中国传统文化学习之幸福人生讲座》有感
  20. 计算机视觉学习 BOW模型图像搜索

热门文章

  1. linux 编译3g驱动,在linux上编译驱动程序make
  2. unity中使用九宫格输入中文的问题
  3. V2G背景201707051926
  4. SQL进阶--EXISTS谓词的用法
  5. (2)stata的基本使用--分类回归 logit
  6. SRE service
  7. 渤海活塞:无纸化使工艺与生产零距离
  8. “边缘”必须“盘活”:解读边缘云发展路线
  9. iOS导航栏侧滑手势启用/禁用弃用正确姿势
  10. 苹果Iphone14搭载北斗导航系统,北斗VS GPS有哪些优势?