2024年3月10日发(作者:)

2022年武汉大学信息管理与信息系统专业《数据库概论》科目期末试卷A(有答案)
一、填空题
1、在设计局部E-R图时,由于各个子系统分别有不同的应用,而且往往是由不同的设计人员设计,所以各个局部E-R图之间难免有不一致的地方,称为冲突。这些冲突主要有______、______和______3类。
2、关系代数运算中,基本的运算是______________、______________、______________、______________和______________。
3、数据仓库是______、______、______、______的数据集合,支持管理的决策过程。
4、DBMS的完整性控制机制应具备三个功能:定义功能,即______;检查功能,即______;最后若发现用户的操作请求使数据违背了完整性约束条件,则采取一定的动作来保证数据的完整性。
5、已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,系编号)两个关系,系关系的主码是______________,系关系的外码是______________,学生关系的主码是______________,外码是______________。
6、主题在数据仓库中由一系列实现。一个主题之下表的划分可按______、______数据所属时间段进行划分,主题在数据仓库中可用______方式进行存储,如果主题存储量大,为了提高处理效率可采用______方式进行存储。
7、____________、____________、____________和是计算机系统中的三类安全性。
8、关系系统的查询优化既是关系数据库管理系统实现的关键技术,又是关系系统的优点。因为,用户只要提出______,不必指出 ______。
9、数据库系统在运行过程中,可能会发生各种故障,其故障对数据库的影响总结起来有两类:______和______。
10、SQL语言的数据定义功能包括______、______、______和______。
二、判断题
11、在CREATEINDEX语句中,使CLUSTERED来建立簇索引。( )
12、在SQL中,ALTERTABLE语句中MODIFY用于修改字段的类型和长度等,ADD用于添加新的字段。( )
13、并发执行的所有事务均遵守两段锁协议,则对这些事务的任何并发调度策略都是可串行化的。( )
14、在一个关系中,不同的列可以对应同一个域,但必须具有不同的列名。( )
15、在SQL中,ALTERTABLE语句中MODIFY用于修改字段的类型和长度等,ADD用于添加新的字段。( )
16、在关系数据表中,属性的顺序是一定的,不能交换。( )
17、在关系模式中,主码和候选码可以有多个。( )
18、数据库模式和实例是一回事。( )
19、视图是可以更新的。( )
20、在数据库设计中,数据流图是用来建立概念模型的。( )
21、有两个关系R和S,分别包含15个和10个元组,则在R∪S、R-S、R∩S中可能出现的一种元组数目情况是18、7、7( )
22、SQLServer有两种安全性认证模式:WindowsNT和SQLServer。( )
23、在数据库表中,空值表示数值0。( )
24、可串行化的调度一定遵守两段锁协议。( )
25、等值连接与自然连接是同一个概念。( )
三、选择题
26、关系运算以关系代数为理论基础,关系代数的最基本操作是并、差、笛卡尔积、( )。
A.投影、连接 B.连接、选择 C.选择、投影
D.交、选择
27、恢复机制的关键问题是( )。
A.登记日志文件B.数据转储C.建立冗余数据D.数据镜像
28、数据库管理系统的工作不包括( )。
A.定义数据库
B.对已定义的数据库进行管理
C.为定义的数据库提供操作系统
D.数据通信
29、关于E-R实体-联系模型的叙述,不正确的是( )。
A.实体型用矩形表示、属性用椭圆形表示、联系用无向边表示
B.实体之间的联系通常有:1:@@1、1:n和m:n三类
C.实体型用矩形表示、属性用椭圆形表示、联系用菱形表示
D.联系不仅局限在实体之间,也存在于实体内部
30、在关系代数表达式的等价优化中,不正确的叙述是( )。
A.尽可能早地执行连接
B.尽可能早地执行选择
C.尽可能早地执行投影
D.把笛卡尔积和随后的选择合并成连接运算
31、SQL语言中,HAVING子句用于筛选满足条件的( )。
A.列 B.行 C.分组 D.元组
32、关于数据库概念设计阶段的工作目标,下列说法错误的是( )。
A.定义和描述应用系统设计的信息结构和范围
B.定义和描述应用系统中数据的属性特征和数据之间的联系
C.描述应用系统的数据需求
D.描述需要存储的记录及其数量
33、有教师表(教师号,教师名,职称,基本工资),其中基本工资和取值与教师职称有关,实现这个约束的可行方案是( )。
A.在教师表上定义一个视图
B.在教师表上定义一个存储过程
C.在教师表上定义插入和修改操作的触发器
D.在教师表上定义一个标量函数
34、在SQL Server中,可以通过数据库对象及各种约束来保证数据的完整性,以下都属于数据库对象的有( )。
A.DEFAULT、CHECK和UNIQUE
B.DEFAULT、CHECK和RULE
C.CHECK和DEFAULT
D.DEFAULT和RULE
35、如果一个系统定义为关系系统,则它必须( )。
A.支持关系数据库
B.支持选择、投影和连接运算
C.A和B均成立
D.A、B都不需要
36、若关系模式R(U,F)属于3NF,则( )。
A.一定属于BCNF
B.消除了插入和删除异常
C.仍存在一定的插入和删除异常
D.属于BCNF且消除了插入和删除异常
37、规范化理论是关系数据库进行逻辑设计的理论依据。根据这个理论,关系数据库中的关系必须满足:其每一属性都是( )。
A.互不相关的 B.不可分解的 C.长度可变的 D.互相关联的
38、设有两个事务T1、T2,其并发操作如表11-1所示,下列评价正确的是( )。
A.该操作不存在问题B.该操作丢失修改
C.该操作不能重复读D.该操作读“脏”数据
39、下述哪一个SQL语句用于实现数据存取的安全机制( )。
A.COMMIT
B.ROLLBACK
C.GRANT
D.CREATE TABLE
40、关于数据仓库设计,下述说法正确的是( )。
A.数据仓库项目的需求很难把握,所以不可能从用户的需求出发来进行数据仓库的设计,只能从数据出发进行设计
B.在进行数据仓库主题数据模型设计时,应该按面向部门业务应用的方式来设计数据模型
C.在进行数据仓库主题数据模型设计时要强调数据的集成性
D.在进行数据仓库概念模型设计时,需要设计实体关系图,给出数据表的划分,并给出每个属性的定义域
41、OLAP系统按照其数据在存储器中的存储格式可以分为( )3种类型。
A.关系OLAP、对象OLAP、混合型OLAP
B.关系OLAP、混合型OLAP、多维OLAP
C.对象OLAP、混合型OLAP、多维OLAP
D.关系OLAP、对象OLAP、多维OLAP
四、简答题
42、定义并解释以下术语:模式,外模式,内模式,数据定义语言,数据操纵语言。
43、举例说明关系模式和关系的区别。
44、什么是NewSQL,查询相关资料,分析NewSQL足如何融合NoSQL和RDBMS两者的优势的。
45、并发操作可能会产生哪几类数据不一致?用什么方法能避免各种小致的情况?
46、什么是检查点记录?检查点记录包括哪些内容?
五、综合题
47、设有关系R和S,如图所示。试用SQL语句实现:(1)查询属性C>50时,R中与之相关联的属性B的值。(2)当属性C=40时,将R中与之相关联的属性B值修改为b4。
关系R和S
48、某公司需建立产品信息数据库,经调查其业务要求如下: Ⅰ.一种产品可以使用多个不同种类的部件,也可以使用多个不同种类的零件;一种部件至少被用在一种产品中;一种部件可以由多个不同种类的零件组成;一种零件至少被用在一种产品或一种部件中; Ⅱ.对于一种具体的部件,要记录这种部件使用的各种零件的数量;Ⅲ.对于一种具体的产品,要记录这种产品使用的各种部件数量和各种零件数量,但部件所使用的零件数量不计入该种产品的零件数量; Ⅳ.一个供应商可供应多种零件,但一种零件只能由一个供应商供应。根据以上业务要求,某建模人员构建了如下E-R图:
此E-R图中的实体的属性完整,但实体、联系的设计存在不合理之处。①请重新构建合理的E-R图,使之符合业务要求,且信息完整。②根据重构的E-R图给出符合3NF的关系模式,并标出每个关系模式的主码和外码。
49、请写出对一个文件按某个属性的排序算法(设该文件的记录是定长的),并上机实现。若要按多个属性排序,能否写出改进的算法?
参考答案
一、填空题
1、【答案】属性冲突;命名冲突;结构冲突
2、【答案】并;差;笛卡尔积;投影;选择
3、【答案】面向主题的;集成的;随时间变化的;非易失性
4、【答案】提供定义完整性约束条件机制;检查用户发出的操作请求是否违背完整性约束条件
5、【答案】系编号;无;学号;系编号
6、【答案】数据表;数据的综合;多维数据库;关系数据库
7、【答案】技术安全类;管理安全类;政策法律类安全性
8、【答案】干什么;怎么干
9、【答案】数据库本身未被破坏;数据库处于不一致状态
10、【答案】定义数据库;定义基本表;定义视图;定义索引
二、判断题
11、【答案】对
12、【答案】错
13、【答案】对
14、【答案】对
15、【答案】错
16、【答案】错
17、【答案】错
18、【答案】错
19、【答案】对
20、【答案】错
21、【答案】错
22、【答案】错
23、【答案】错
24、【答案】错
25、【答案】错
三、选择题
26、【答案】C
【解析】关系代数是一种抽象的查询语言,它通过对关系的运算来表达查询要求。关系代数的运算共有8种,可分两类:传统的集合运算和专门的关系运算一传统的集合运算有:交、并、差、笛卡尔积,专门的关系运算有:选择、投影、连接和除。其中,并、差、笛卡尔积、选择和投影5种运算是基本运算,其他3种运算均可以用这5种基本运算来表达。
27、【答案】C
【解析】数据库的恢复机制关键问题是建立冗余数据,建立冗余数据的主要方式有数据转储、建立日志文件等,已备数据库出现故障时利用冗余数据进行恢复。
28、【答案】C
【解析】DBMS的功能主要有数据库定义、数据库操纵、数据库运行控制、数据库建立及维护和数据通信等。
29、【答案】A
【解析】E-R图为实体-联系图,提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。构成E-R图的基本要素是实体型、属性和联系,其表示方法为:实体型:用矩形表示,矩形框内写明实体名。
属性:用椭圆形表示,并用无向边将其与相应的实体连接起来。联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1:n或m: n)。
实体型之间的联系不仅存在于两个实体型之间,也存在于两个以上的实体型之间。同一个实体集内的各实体之间也可以存在联系。
30、【答案】A
【解析】在关系代数表达式中,连接运算的结果常常是一个较大的关系。如果尽可能早地执行连接,则运算得到的中间结果就
31、【答案】C
【解析】HAVING子句常与GROUP BY子句联合使用,GROUP BY 通常指出分组的依据列,即依据那个属性列来分组,而HAVING子句则指出各分组提取的条件。例如:要求列出某班本学期所有课程中,班级平均成绩高于75的课程号、课程名称时,GROUP BY子句应该指出分组的依据是选课关系中的课程号属性列,HAVING子句则提出该课程的全班平均成绩AVG要高于75,低于75的就不提取了。
32、【答案】D
【解析】数据库概念设计阶段的工作内容为:①定义和描述应用领域涉及的数据范围,获取应用领域或问题域的信息模型;②准确描述数据的属性特征、数据之间的关系、数据约束、数据的安全性要求以及支持用户的各种处理需求;③保证信息模型正确便捷的转换成数据库的逻辑结构(数据库模式),便于用户理解。但不需要描述需要存储的记录及其数量。
33、【答案】C
【解析】触发器是一种无需用户调用的特殊的存储过程,当数据库系统进行特定的操作发现有触发器定义时就会执行触发器定义的功能,从而满足某些特定的需要以保证业务的处理任务自动进行。
34、【答案】D
【解析】SQL Server的约束包括UNIQUE、DEFAULT、RULE、
PRIMARY KEY和FOREIGN KEY等,但属于数据库对象的是RULE、
DEFAULT,当它们创建后可以绑定到一列或者几列上,并可以重复使用。
35、【答案】C
36、【答案】C
【解析】各级范式之间的联系有下述关系:
1NF⊃2NF⊃3NF⊃BCNF⊃4NF⊃5NF。因此,达到3NF,不一定属于 BCNF。事实上,达到3NF还不能解决所有的异常问题,还会出现数据操纵的异常问题。在函数依赖的范畴内,只要达到BCNF就可达到最高的规范化程度,就可避免数据操纵的异常问题。
37、【答案】B
【解析】规范化的最低要求是每个关系至少是1NF,即它的每个属性是最小的、不可再分的数据单位。
38、【答案】D
【解析】事务T1读出数据A并做了修改,事务T2读取同一数据,随后T1由于某种原因被撤消,执行回滚,这时T1已修改过的数据恢复原值 100,T2读到的数据200就与数据库中的数据不一致,称为“脏”数据。
39、【答案】C
【解析】COMMIT是向数据库递交数据,ROLLBACK是回滚数据, CREATE TABLE是创建表,而GRANT是用来对用户权限进行管理,可以实现数据存取的安全机制。
40、【答案】C
【解析】数据仓库项目的设计一定要从用户的需求出发。进行数据仓库主题数据模型设计时,应该按面向主题而不是部门业务应用的方式来设计数据模型。在进行数据仓库概念模型设计时,可以设计实体关系图,而在逻辑设计时才给出数据表的划分,并给出每个属性的定义域。
41、【答案】B
【解析】OLAP系统按照其存储器的数据存储格式可以分为关系OLAP(Relational OLAP,简称ROLAP)、多维OLAP(Multidimensional OLAP,简称MOLAP)和混合型OLAP(Hybrid
OLAP,简称HOLAP)三种类型。
四、简答题
42、答:(1)外模式:亦称子模式或用户模式,数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。
(2)模式:亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。模式描述的是数据的全局逻辑结构。外模式涉及的是数据的局部逻辑结构,通常是模式的子集。
(3)内模式:亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述。
(4)数据定义语言(Data Definition Language,DDL):用来定义数据库模式、外模式、内模式的语言。
(5)数据操纵语言(Data Manipulation Language,DML):用来对数据库中的数据进行查询、插入、删除和修改的语句。
43、答:关系模式是静态的,关系是动态的。对于常见的二维表,关系模式通常指的是二维表的表头,即有哪些列构成,每个列的名称、类型、长度等。关系通常指的是一张表的具体内容,因为表经常进行插入、删除、修改等操作,关系可能不一样。
44、答:(1)NewSQL系统是融合了NoSQL系统和传统数据库事务管理功能的新型数据库系统。
(2)NewSQL将SQL和NoSQL的优势结合起来,充分利用计算机硬件的新技术、新结构,研究与开发了若干创新的实现技术。
45、答:(1)并发操作带来的数据不一致性包括三类:丢失修改、不可重复读和读“脏”数据。
①丢失修改。两个事务T1和T2读入同一数据并修改,T2提交的结果破坏了T1提交的结果,导致T1的修改被丢失。
②不可重复读。不可重复读是指事务T1读取数据后,事务T2执行更新操作,使T1无法再现前一次读取结果。
③读“脏”数据。读“脏”数据是指事务T1修改某一数据,并将其写回磁盘,事务T2读取同一数据后,T1由于某种原因被撤销,这时T1已修改过的数据恢复原值,T2读到的数据就与数据库中的数据不一致,则T2读到的数据就为“脏”数据,即不正确的数据。
(2)产生上述三类数据不一致性的主要原因是并发操作破坏了事务的隔离性。并发控制就是要用正确的方式调度并发操作,使一个用户事务的执行不受其他事务的干扰,从而避免造成数据的不一致性。
46、答:(1)检查点记录是一类新的日志记录。
(2)检查点记录的内容包括:
①建立检查点时刻所有正在执行的事务清单;
②这些事务的最近一个日志记录的地址。
五、综合题
47、答:(1)对应的SQL语句如下:
(2)对应的SOL语句如下:
48、
答:①重新构建后的E-R图如下:
②符合3NF的关系模式:(带下划线的为主码属性)产品(产品号(PK),产品名称,型号,装配图号)部件(部件号(PK),部件名称)
零件(零件号(PK),零件名称,供应商号(FK)
产品_部件(产品号(FK),部件号(FK),部件数量)产品_零件(产品号(FK),零件号(FK),零件数量)部件_零件(部件号(FK),零件号(FK),零件数量)供应商(供应商号(PK),供应商名称,联系电话)
【解析】题中实体设计中存在明显的不合理之处,比如供应商应该是一个独立的实体。此外,没有准确的表现产品和零件之间直接的联系。一种产品可以使用多个不同种类的部件,也可以使用多个不同种类的零件,说明产品与零件是有直接关系的,所以需要一个能表示它们之间的关系的实体,否则,设计出来的关系模式就会存在大量的数据冗余。
49、答:(1)使用败者树实现多路归并的外部排序算法,对文件按某个属性进行排序。
(2)若要按多个属性排序,可以采用基数排序算法。
实现方法有:①最高位优先(Most Significant Digit first)法,简称 MSD法。先按k1排序分组,同一组中记录,关键码k1相等,再对各组按 k2排序分成子组,之后,对后面的关键码继续这样的排序分组,直到按最次位关键码kd对各子组排序后。再将各组连接起来,便得到一个有序序列。②最低位优先(Least Significant Digit first)法,简称LSD法:先从kd开始排序,再对kd-1进行排序,依次重复,直到对k1排序后便得到一个有序序列。