2022年湖南财政经济学院计算机科学与技术专业《数据库原理》科目期末试卷B(有答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2022年湖南财政经济学院计算机科学与技术专业《数据库原理》科目
期末试卷B(有答案)
一、填空题
1、在SQL语言中,为了数据库的安全性,设置了对数据的存取进行控制的语句,对用户授权使用____________语句,收回所授的权限使用____________语句。
2、DBMS的完整性控制机制应具备三个功能:定义功能,即______;检查功能,即______;最后若发现用户的操作请求使数据违背了完整性约束条件,则采取一定的动作来保证数据
的完整性。
3、数据库恢复是将数据库从______状态恢复到______的功能。
4、关系代数运算中,基本的运算是______________、______________、______________、
______________和______________。
5、在SELECT命令中进行查询,若希望查询的结果不出现重复元组,应在SEL ECT语句
中使用______保留字。
6、在SELECT命令中,______子句用于选择满足给定条件的元组,使用______子句可按指
定列的值分组,同时使用______子句可提取满足条件的组。
7、对于非规范化的模式,经过转变为1NF,______,将1NF经过转变为2NF,______,
将2NF经过转变为3NF______。
8、在数据库系统封锁协议中,一级协议:“事务在修改数据A前必须先对其加X锁,直
到事务结束才释放X锁”,该协议可以防止______;二级协议是在一级协议的基础上加上“事务T在读数据R之前必须先对其加S锁,读完后即可释放S锁”,该协议可以防止
______;三级协议是在一级协议的基础上加上“事务T在读数据R之前必须先对其加S锁,直到事务结束后才释放S锁”,该协议可以防止______。
9、数据仓库创建后,首先从______中抽取所需要的数据到数据准备区,在数据准备区中
经过净化处理______,再加载到数据仓库中,最后根据用户的需求将数据发布到______。
10、____________和____________一起组成了安全性子系统。
二、判断题
11、可以用UNION将两个查询结果合并为一个查询结果。
()
12、在SELECT语句中,需要对分组情况满足的条件进行判断时,应使用WHERE子句。
()
13、SQLServer有两种安全性认证模式:WindowsNT和SQLServer。
()
14、数据库系统由软、硬件及各类人员构成。
()
15、数据模型的核心构成要素是数据结构。
()
16、概念模型是对现实世界的第二层抽象。
()
17、一个数据表只能有一个唯一索引。
()
18、在综合分E-R图时,会出现属性冲突,结构冲突,命名冲突。
()
19、一个关系中不可能出现两个完全相同的元组是由实体完整性规则确定的。
()
20、数据库模式和实例是一回事。
()
21、从计算机数据管理的角度看,信息就是数据,数据就是信息。
()
22、在SQL中,ALTERTABLE语句中MODIFY用于修改字段的类型和长度等,ADD用于添加新的字段。
()
23、在CREATEINDEX语句中,使CLUSTERED来建立簇索引。
()
24、可串行化的调度一定遵守两段锁协议。
()
25、在数据库恢复中,对已完成的事务进行撤销处理。
()
三、选择题
26、关系运算以关系代数为理论基础,关系代数的最基本操作是并、差、笛卡尔积、()。
A.投影、连接 B.连接、选择 C.选择、投影
D.交、选择
27、下图是雇员表(雇员ID,姓名,年龄,部门)所对应的数据文件和索引文件示意图,其中雇员ID为主码。
该索引属于()。
A.聚集、稀疏、辅索引B.非聚集、稠密、主索引
C.聚集、稀疏、主索引D.非聚集、稠密、辅索引
28、建立关于系、学生、班级、社团等信息的一个关系数据库,一个系有若干个专业,每个专业每年只招一个班,每个班有若干学生,一个系的学生住在同一宿舍区,每个学生可
以参加若干个社团,每个社团有若干学生。
描述学生的属性有:学号、姓名、出生年月、系名、班号、宿舍区。
描述班级的属性有:班号、专业名、系名、人数、入学年份。
描述系的属性有:系号、系名、系办公地点、人数。
描述社团的属性有:社团名、成立年份、地点、人数、学生参加某社团的年份。
回答以下问题:
(1)画出E-R图。
(2)请给出关系模式,写出每个关系模式的最小函数依赖集,指出是否存在传递函数依赖,对于函数依赖左部是多属性的情况讨论函数依赖是完全函数依赖,还是部分函数依赖。
指出各关系的候选码、外码,有没有全码存在?
29、关于DBMS的查询处理器,叙述错误的是()。
A.处理的目标是先将应用程序表示的查询转换为执行策略(关系代数)
B.通过执行用低级语言表达的策略来获取所需要的数据
C.查询处理分为分解(分析和验证)、优化、代码生成和代码执行
D.处理的目标是先将应用程序表示的查询转换为执行策略(E-R 概念模型)
30、根据系统所提供的存取路径,选择合理的存取策略,这种优化方式称为()。
A.物理优化 B.代数优化 C.规则优化D.代价估算优化
31、SQL语言中,HAVING子句用于筛选满足条件的()。
A.列 B.行 C.分组 D.元组
32、如果一个系统为关系完备系统,那么它支持()。
A.关系数据结构
B.A与选择、投影和连接
C.A与所有的关系代数操作
D.C与实体完整性、参照完整性
33、数据的完整性是指数据的正确性、有效性和()。
A.可维护性B.相容性C.可恢复性D.独立性
34、文件系统与数据库系统的重要区别是数据库系统具有
()。
A.数据共享性 B.数据无冗余 C.数据结构化 D.数据独立性
35、下列不属于查询处理器功能组成模块的是()。
A.DML编译器
B.查询执行引擎
C.嵌入式DML的预编译器
D.查询权限管理器
36、在SQL Server 2000中,常用的数据库备份方法有完全备份、差异备份和日志备份。
为保证某数据库的可靠性,需要综合采用这三种方法对该数据库进行备份。
下列说法正确
的是()。
A.这三种备份操作的周期都必须一样,并且都必须备份在同一个备份设备上
B.这三种备份操作的周期都必须一样,但可以备份在不同的备份设备上
C.这三种备份操作的周期可以不一样,但必须备份在同一个备份设备上
D.这三种备份操作的周期可以不一样,并且可以备份在不同的备份设备上
37、如果系统发生死锁,参与死锁的进程的个数至少是()个。
A.3 B.1 C.2 D.4
38、关于登录账号和数据库用户,下列各项表述不正确的是
()。
A.登录账号是在服务器级创建的,数据库用户是在数据库级创建的
B.创建数据库用户时必须存在该用户的登录账号
C.数据库用户和登录账号必须同名
D.一个登录账号可以对应多个数据库用户
39、下列属于数据仓库特点的是()。
A.综合性和提炼性数据
B.重复性的、可预测的处理
C.一次处理的数据量小
D.面向操作人员,支持日常操作
40、维@@2、…、维n,度量),不含度量的多维数组是不能用于多维分析的。
2、联机分析处理包括以下()基本分析功能。
Ⅰ.聚类Ⅱ.切片Ⅲ.转轴Ⅳ.切块
A.Ⅰ、Ⅱ并Ⅲ B.Ⅰ、Ⅱ和Ⅳ C.Ⅱ、Ⅲ和Ⅳ D.都是
四、简答题
41、试述事务的概念及事务的4个特性。
恢复技术能保证事务的哪些特性?
42、证明:
(1)如果R是BCNF关系模式,则R是3NF关系模式,反之则不然。
(2)如果R是3NF关系模式,则R一定是2NF关系模式。
43、试述数据模型的概念、数据模型的作用和数据模型的三个要素。
44、什么是NoSQL,试述NoSQL系统在人数据库发展中的作用。
45、写出面向对象数据库产生的主要原因。
五、综合题
46、使用ADO来访问Student数据库。
47、对下列两个关系模式:学生(学号,姓名,年龄,性别,家庭住址,班级号)班级(班级号,班级名,班主任,班长)使用GRANT 语句完成下列授权功能:
(1)授予用户U1对两个表的所有权限,并可给其他用户授权。
(2)授予用户U2对学生表具有查看权限,对家庭住址具有更新权
限。
(3)将对班级表查看权限授予所有用户。
(4)将对学生表的查询、更新权限授予角色R1。
(5)将角色R1授予用户U1,并且U1可继续授权给其他角色。
48、现有关系模式:
教师授课(教师号,姓名,职称,课程号,课程名,学分,教科书名)其函数依赖集为:{教师号→姓名,教师号→职称,课程号→课程名,课程号→学分,课程号→教科书名}
①指出这个关系模式的主码。
②这个关系模式是第几范式,为什么?
③将其分解为满足3NF要求的关系模式(分解后的关系模式名自定)
参考答案
一、填空题
1、【答案】GRANT;REVOKE
2、【答案】提供定义完整性约束条件机制;检查用户发出的操作请求是否违背完整性约束条件
3、【答案】错误;某一已知的正确状态
4、【答案】并;差;笛卡尔积;投影;选择
5、【答案】DISTINCT
6、【答案】WHERE;GROUP BY;HAVING
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、【答案】B
【解析】聚集索引和非聚集索引:对数据文件和它的一个特定的索引文件,如果数据文件
中数据记录的排列顺序与索引文件中索引项的排列顺序相一致,则该索引文件成为聚集索引,否则,成为非聚集索引。
稠密索引和稀疏索引:如果数据文件中的每个查找码值在索
引文件中都对应一个索引记录,则该索引称为稠密索引,否则称为稀疏索引。
主索引和辅
索引:在数据文件包含主码的属性集上建立的索引称为主索引,在非主属性上建立的索引
称为辅索引。
由题意和定义可知,该索引是非聚集、稠密、主索引。
28、答:(1)对应的E-R图,如图所示。
图6-5学生等管理E-R图
(2)所有关系模式如下。
①学生关系:学生(学号,姓名,出生年月,系名,班号,宿舍区)
候选码:学号;外码:系名,班号。
最小依赖集Fm={学号→姓名,学号→出生年月,学号→班号,班号→系名,系名→宿舍区}。
其中,存在以下传递函数依赖:
学号→系名,系名↛学号,系名→宿舍区,因为学号宿舍区。
班号→系名,系名↛班号,系名一宿舍区,所以班号宿舍区。
学号→班号,班号↛学号,班号→系名,所以学号系名。
所以学生模式最高达到2NF。
②班级关系:班级(班号,专业名,系名,人数,入学年份)候选码:班号和(专业名,入学年份);外码:系名。
最小依赖集Fm={班号→专业名,班号→人数,班号→入学年份,专业名→系名)。
存在部分函数依赖:(专业名,入学年份)→系名,而专业名→系名。
另外,还存在以下传递函数依赖:
班级号→专业名,专业名↛班级号,专业名→系名,所以班级号系名
所以班级模式最高达到1NF。
③系关系:系(系号,系名,办公室地点,人数)候选码:系号和系名;无外码。
最小依赖集Fm={系号→系名,系号→办公室地点,系号→人数,系名→系号)
系关系模式最高达到BCNF范式。
④社团关系:社团(社团名,成立年份,地点,人数)候选码:社团名;无外码。
最小依赖集Fm={社团名→成立年份,社团名→地点,社团名→人数}。
社团关系模式最高达到BCNF范式。
⑤学生参加社团关系:参加(学号,社团名,入团年份)候选码:(学号,社团名);外码:学号,社团名。
最小依赖集Fm={(学号,社团名)→入团年份),而“(学号,社团名)→入团年份”是完全函数依赖。
参加关系模式最高达到BCNF范式。
29、【答案】D
【解析】DBMS的查询处理器处理的目标是将应用程序表示的查询转换为正确有效的、用低级语言表达的执行策略(关系代数),并通过执行该策略来获取所需要的数据。
查询处理通常分为分解(分析和验证)、优化、代码生成和代码执行四个阶段。
30、【答案】A
【解析】物理优化是根据数据字典中的存取路径、数据的存储分布以及聚簇情况等信息来选择低层的存取路径。
31、【答案】C
【解析】HAVING子句常与GROUP BY子句联合使用,GROUP BY 通常指出分组的依据列,即依据那个属性列来分组,而HAVING子句则指出各分组提取的条件。
例如:要求列出某班本学期所有课程中,班级平均成绩高于75的课程号、课程名称时,GROUP BY 子句应该指出分组的依据是选课关系中的课程号属性列,HAVING子句则提出该课程的全班平均成绩AVG要高于75,低于75的就不提取了。
32、【答案】C
33、【答案】B
【解析】数据模型应该反映数据模型必须遵守的基本的通用的完整性约束条件。
完整性规则是给定的数据模型中数据及其联系具有的制约和依存规则,用以限定符合数据模型的数据库状态及状态的变化,以保证数据的正确、有效和相容。
34、【答案】C
【解析】文件系统和数据库系统都具有数据独立性和数据共享性,只是文件系统的对应性能弱于数据库系统。
至于数据无冗余,没有哪个系统可以完全做到。
而通过数据模型表示复杂的数据结构,则是数据库系统所独有的。
35、【答案】D
【解析】查询处理器包括嵌入式DML的预编译器、DOL编译器、 DML编译器、查询执行引擎,是一种可以完成许多工作的多用途的工具,它是一种可以完成许多工作的多用途的工具。
36、【答案】D
【解析】为同时兼顾数据库的可靠性和成本,应综合采用完全备份、差异备份和日志备份三种方法对该数据库进行备份,这三种备份操作的周期可以不一样,并且可以备份在不同的备份设备上。
37、【答案】C
【解析】由于各进程互相独立地活动,不断申请和释放软硬件资源,可能会出现这样一种状态:两个或两个以上的进程彼此等待对方拥有的而又不会释放的资源,则所有进程都不能进一步向前运行,这种状态就称为死锁。
因此,参与死锁的进程至少是两个。
38、【答案】C
【解析】登录账户属于SQL Server服务安全防线,用户只有拥有SQL
Server服务登录账户,才能与SQL Server建立链接;数据库用户属于
SQL Server数据库安全防线,SQL Server中的每个数据库都有自己的用户和角色,该数
据库只能由它的用户和角色访问。
它们是不同级别的账号,它们需要绑定,创建数据库用
户时必须存在该用户的登录账号,一个登录账号可以对应多个数据库用户,但不需要同名。
39、【答案】A
【解析】数据仓库研究和解决从数据库中获取信息的问题。
数据仓库的特征在于面向主题、集成性、稳定性和时变性。
40、【答案】C
【解析】考查联机分析处理OLAP的基本概念,联机分析处理包括的基本分析功能有:切片、切块、钻取、转轴。
四、简答题
41、答:(1)事务是用户定义的一个数据库操作序列,是一个不可分割的工作单位。
事
务具有4个特性:原子性、一致性、隔离性和持续性。
这4个特性也简称为ACID特性。
①原子性:事务是数据库的逻辑工作单位,事务中的操作要么都做,要么都不做。
②一致性:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。
当
数据库只包含成功事务提交的结果时,就说数据库处于一致性状态。
③隔离性:一个事务的执行不能被其他事务干扰,即一个事务内部的操作及使用的数据对
其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。
④持续性:持续性指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的,接
下来的其他操作或故障不应该对其执行结果有任何影响。
(2)恢复技术保证了事务的原子性、一致性和持续性。
42、证明:(1)用反证法:设R是一个BCNF,但不是3NF,则必存在非主属性A和候选码x以及属性集y,使得x→y,y→A,其中A→x,
A→y,y→x不在函数依赖中,这就是说y不可能包含R的码,但y→A却成立。
根据BCNF定义,R不是BCNF,与题设矛盾,所以一个BCNF范式必是3NF。
(2)反证法:假设R中非主属性A部分依赖于关键字K,则存在K′是 K的子集,使得K′→A,因K′是K的子集有K→K′,但K′↛K,于是有K→K′,K′↛K,K′→A,并且A不属于K,因而A传递以来于K,即R不属于3NF,与已知矛盾,所以一个3NF 一定是2NF。
43、答:(1)数据模型是对现实世界数据特征的抽象,一般来讲,数据模型是严格定义的概念的集合。
(2)数据模型用来描述数据、组织数据和对数据进行操作。
这些概念精确描述了系统的静态特性、动态特性和完整性约束条件。
(3)数据模型通常由数据结构、数据操作和完整性约束三部分组成:
①数据结构:它是所研究的对象类型的集合,是对系统静态特性的描述。
②数据操作:是指对数据库中各种对象(型)的实例(值)允许进行的操作的集合,包括操作及有关的操作规则,是对系统动态特性的描述。
③完整性约束条件:数据的约束条件是一组完整性规则的集合。
完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。
10 、试述网状、层次数据库的优缺点。
答:(1)网状数据模型的优缺点:优点:
①能够更为直接地描述现实世界,如一个结点可以有多个双亲。
②具有良好的性能,存取效率较高。
缺点:①结构比较复杂,而且随着应用环境的扩大,数据库的结构会变得越来越复杂,不利于最终用户掌握。
②其DDL、DML语言复杂,用户不容易使用。
网状数据模型记录之间的联系通过存取路径实现,应用程序在访问数据时必须选择适当的存取路径。
因此,用户必须了解系统结构的细节,加重了编写应用程序的负担。
(2)层次模型的优缺点:优点:
①模型简单,对具有一对多层次关系的部门描述非常自然、直观,容易理解。
②用层次模型的应用系统性能好,特别是对于那些实体间联系是固定的且预先定义好的应用,采用层次模型来实现,其性能优于关系模型。
③层次数据模型提供了良好的完整性支持。
缺点:
①现实世界中很多联系是非层次性的,如多对多联系、一个结点具有多个双亲等,层次模型不能自然地表示这类联系,只能通过引入冗余数据或引入虚拟结点来解决。
②对插入和删除操作的限制比较多。
③查询子女结点必须通过双亲结点。
11 、试述关系模型的概念,定义并解释以下术语:关系,属性,域,元组,码,分量,关系模式答:(1)关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。
在用户观点中,关系模型中数据的逻辑结构是一张二维表,由行和列组成。
(2)术语的定义和解释:
①关系:一个关系对应通常所说的一张表。
②属性:表中的一列即为一个属性。
③域:属性的取值范围。
④元组:表中的一行即为一个元组。
⑤主码:表中的某个属性组,它可以惟一确定一个元组。
⑥分量:元组中的一个属性值。
⑦关系模式:对关系的描述,一般表示为关系名(属性1,属性2,
…,属性n)。
44、答:(1)NoSQL是以互联网大数据应用为背景发展起来的分布式数据管理系统,
它有两种解释:一种是Non-Relational,即非关系数据库;另一种是Not Only SQL,
即数据管理技术不仅仅是SQL。
NoSQL系统支持的数据模型通常分为:Key-Value模型、BigTable模型、文档(document)。
(2)NoSQL系统为了提高存储能力和并发读写能力采用了极其简单的数据模型,支持简单的查询操作,而将复杂操作留给应用层实现。
该系统对数据进行划分,对各个数据分区
进行备份,以应对结点可能的失败,提高系统可用性;通过大量结点的并行处理获得高性能,采用的是横向扩展的方式(scale out)。
45、答:面向对象数据库产生的两个主要原因是:
(1)传统的数据模型和系统往往不能满足CAD/CAM、GIS和多媒体数据库这
些复杂数据库应用的要求。
例如,对象的结构更为复杂,事务持续时间更长,需要存储图
像或大文本项数据类型。
面向对象的方法为处理这些应用需求提供了很大的灵活性,使人
们摆脱了传统DBS对数据类型和查询语言的限制,能让设计者定义并应用复杂对象的结构。
(2)人们在开发应用软件时,越来越多使用面向对象的程序设计语言。
现在数
据库已称为软件系统的基本组成部分,但是如果用面向对象的语言开发软件,很难把传统
数据库嵌入到这种面向对象的应用软件中。
所以面向对象数据库就应运而生,把数据库和
面向对象语言开发的软件直接或无缝地集成在一起。
五、综合题
46、答:使用ADO访问数据库Student的步骤如下:
(1)ADO中的Connection对象可实现ASP程序与后台数据库的连接,其代码为
(2)创建完数据库连接对象后,就需要打开数据库连接,其代码为:Conn.Open;
(3)打开数据库后就可以访问数据库了,可以用RecordSet对象方便地查询数据库记录集。
(4)对数据库访问结束后,可以用Close方法及时关闭各对象,以便释放所占资源,其代码为
Rs.Close;
Conn.Clone;
【解析】ADO是Microsoft公司推出的数据库连接技术,运用该技术可以实现对各种数据库(SQL Server、Oracle等)的连接、查询等操
作。
ADO是一组优化的访问数据库的对象集,为数据库开发提供完整的
网站数据库解决方案。
该实例涉及以下参数设置:数据库类型为SQL
Server,数据源名称为Student,服务器为local选项,登录验证方式为“使用用户输入ID和密码的SQL Server验证”,用户ID和密码均为sa。
47、答:(1)GRANT ALL PRIVILIGES ON TABLE 学生,班级 TOU1 WITH GRANT OPTION;
(2)GRANT SELECT,UPDATE(家庭地址)ON TABLE 学生 TOU2;
(3)GRANT SELECT ON 班级 TO PUBLIC;
(4)GRANT SELECT,UPDATA ON TABLE 学生 TO R1;
(5)GRANT R1 TO U1 WITH GRANT OPTION;
48、答:①主码为:(教师号、课程号)
②第1范式,因为存在部分依赖。
③分解方法为:
教师表(教师号,姓名,职称)
课程表(课程号,课程名,学分,教科书名)教师授课表(教师号,课程号)
【解析】①外码的数据项需参照主码的数据项来操作,主码和外码是用来实现参照完整性的。
②第一范式:(1NF)无重复的列;第二范式:(2NF)属性完全依赖于主键;第三范式:(3NF)属性不依赖于其它非主属性。