
一、填空题
1、SQL Server中数据完整性包括______、______和______。
2、有两种基本类型的锁,它们是______和______。
3、在关系数据库的规范化理论中,在执行“分解”时,必须遵守规范化原则:保持原有的依赖关系和______。
4、数据库系统是利用存储在外存上其他地方的______来重建被破坏的数据库。方法主要有两种:______和______。
5、设某数据库中有商品表(商品号,商品名,商品类别,价格)。现要创建一个视图,该视图包含全部商品类别及每类商品的平均价格。请补全如下语句: CREATE VIEW V1(商品类别,平均价格)AS SELECT商品类别,_____FROM商品表GROUP BY商品类别;
6、在SQL语言中,为了数据库的安全性,设置了对数据的存取进行控制的语句,对用户授权使用____________语句,收回所授的权限使用____________语句。
7、某事务从账户A转出资金并向账户B转入资金,此操作要么全做,要么全不做,为了保证该操作的完整,需要利用到事务性质中的_____性。
8、设在SQL Server 2000环境下,对“销售数据库”进行的备份操作序列如下图所示。
①出现故障后,为尽可能减少数据丢失,需要利用备份数据进行恢复。首先应该进行的恢复操作是恢复_____,第二个应该进行的恢复操作是恢复_____。
②假设这些备份操作均是在BK设备上完成的,并且该备份设备只用于这些备份操作,请补全下述恢复数据库完全备份的语句
RESTORE_____FROM BK
WITH FILE=1,_____;
9、视图是一个虚表,它是从______导出的表。在数据库中,只存放视图的______,不存放视图对应的______。
10、“为哪些表,在哪些字段上,建立什么样的索引”这一设计内容应该属于数据库设计中的______阶段。
二、判断题
11、等值连接与自然连接是同一个概念。( )
12、投影操作是对关系表进行水平方向的分割。( )
13、数据库系统由软、硬件及各类人员构成。( )
14、数据库模式和实例是一回事。( )
15、关系中任何一列的属性取值是不可再分的数据项,可取自不同域中的数据。( )
16、SQL语言有嵌入式和交互式两种使用方法。( )
17、有两个关系R和S,分别包含15个和10个元组,则在R∪S、R-S、R∩S中可能出现的一种元组数目情况是18、7、7( )
18、据库操作中防止死锁的方法是禁止两个用户同时操作数据库。( )
19、数据模型的核心构成要素是数据结构。( )
20、可串行化的调度一定遵守两段锁协议。( )
21、可以用UNION将两个查询结果合并为一个查询结果。( )
22、机制虽然有一定的安全保护功能,但不精细,往往不能达到应用系统的要求。( )
23、在关系运算中,投影是最耗时的操作。( )
24、可以用UNION将两个查询结果合并为一个查询结果。( )
25、在CREATEINDEX语句中,使CLUSTERED来建立簇索引。( )
三、选择题
26、有两个关系R和S,分别包含15个和10个元组,则在R∪S、R-S、R∩S中不可能出现的元组数目情况是( )。
A.15,5,10 B.18,7,7 C.21,11,4 D.25,15,0
27、下列关于数据库备份的叙述,错误的是( )。
A.数据库备份也受到数据库恢复模式的制约
B.数据库备份是一项复杂的任务,应该有专业的管理人员来完成
C.如果数据库很稳定就不需要经常做备份,反之要经常做备份
D.数据库备份策略选择应该综合考虑各方面因素,并不是备份做得越多越全就越好
28、数据库管理系统的工作不包括( )。
A.定义数据库
B.对已定义的数据库进行管理
C.为定义的数据库提供操作系统
D.数据通信
29、关于E-R实体-联系模型的叙述,不正确的是( )。
A.实体型用矩形表示、属性用椭圆形表示、联系用无向边表示
B.实体之间的联系通常有:1:@@1、1:n和m:n三类
C.实体型用矩形表示、属性用椭圆形表示、联系用菱形表示
D.联系不仅局限在实体之间,也存在于实体内部
30、设E是关系代数表达式,F是选取条件表达式,并且只涉及A1,…,An属性,则有( )。
A.бF(πA1,…,An(E))≡πA1,…,An(бF(E))
B.бF(πA1,…,An(E))≡πA1,…,An(E)
C.бF(πA1,…,An(E))≡πA1(бF(E))
D.πA1,…,An(бF(E))≡πA1,…,An(бF(πA1,…,An,B1,…,Bm(E)))
31、下列说法正确的是( )。
A.可以利用存储过程在当前数据库中创建固定数据库角色
B.当前数据库中的用户自定义角色可以用存储过程删除
C.不能将数据库用户账户添加为当前数据库中角色的成员
D.Public角色可以被删除
32、按照数据库应用系统生命周期模型,在开发某数据库应用系统时,对系统采用的软硬件及技术方案等作出合理的评估并提出选择建议的工作属于( )。
A.规划与分析阶段的系统规划与定义
B.规划与分析阶段的可行性分析
C.需求分析阶段的业务规则需求分析
D.系统设计阶段的总体设计
33、 对于联机事务处理系统和数据仓库系统中的数据,下列说法正确的是( )。
A.一般情况下,联机事务处理系统中的数据不能被修改,数据仓库系统中的数据可被修改
B.联机事务处理系统中的数据库规模一般大于数据仓库系统中的数据规模
C.联机事务处理系统中的数据一般按面向业务应用的方式组织,数据仓库系统中的数据一般按面向分析主题的方式组织
D.一般情况下,在安全性和一致性要求上,对数据仓库系统中数据的要求要高于对联机事务处理系统中数据的要求
34、数据完整性保护中的约束条件主要是指( )。
A.用户操作权限的约束
B.用户口令校对
C.值的约束和结构的约束
D.并发控制的约束
35、如果一个系统为关系完备系统,那么它支持( )。
A.关系数据结构
B.A与选择、投影和连接
C.A与所有的关系代数操作
D.C与实体完整性、参照完整性
36、若关系模式R(U,F)属于3NF,则( )。
A.一定属于BCNF
B.消除了插入和删除异常
C.仍存在一定的插入和删除异常
D.属于BCNF且消除了插入和删除异常
37、现有关系模式R(学号,姓名,课程代码,课程名,课程成绩),对其进行分解将其规范化到第三范式,下列( )是最正确的规范化结果。
A.R1(学号,姓名)R2(课程代码,课程名,课程成绩)
B.R1(学号,姓名)R2(课程代码,课程名)R3(学号,课程代码,课程成绩)
C.R1(学号,姓名)R2(学号,课程代码,课程名,课程成绩)
D.R1(学号,姓名)R2(课程代码,课程名)R3(课程代码,课程成绩)
38、在并发控制技术中最常用的是封锁,对于共享锁(S)和排他锁(X)来说,下面列出的相容关系中,哪一个是正确的( )。
A.X-X:相容
B.S-S:相容 C.S-X:相容
D.X-S:相容
39、关于登录账号和数据库用户,下列各项表述不正确的是
( )。
A.登录账号是在服务器级创建的,数据库用户是在数据库级创建的
B.创建数据库用户时必须存在该用户的登录账号
C.数据库用户和登录账号必须同名
D.一个登录账号可以对应多个数据库用户
40、以下关于数据粒度的叙述中错误的是( )。
A.粒度是指数据仓库小数据单元的详细程度和级别
B.数据越详细,粒度就越小,级别也就越高
C.数据综合度越高,粒度就越大,级别也越高
D.粒度的具体划分将直接影响数据仓库中的数据量以及查询质量
41、以下关于OLAP的叙述中错误的是( )。
A.一个数组可以表示为(维1,维2,…,维n)
B.维的一个取值称为该维的一个维成员
C.OLAP是联机分析处理
D.OLAP是以数据仓库进行分析决策的基础
四、简答题
42、试述数据、数据库、数据库管理系统、数据库系统的概念。
43、为在某种程度上保证某数据库系统可靠地运行,在SQL Server2000环境中,对其制定有下列三种备份策略。假设对此数据库进行一次完全备份需要4小时,差异备份需要2小时,日志备份需要1小时。设所有备份都是从凌晨1:00开始。策略1:每周周日进行一次完全备份,每周周一至周六每天进行一次日志备份;
策略2:每周周日进行一次完全备份,每周周一至周六每天进行一次差异备份;
策略3:每天进行一次完全备份。
①假设需要保留一年的备份数据,比较三种备份策略所占用的空间。
②比较每种备份策略的备份和恢复速度。
44、描述MapReduce的计算过程。分析MapReduce技术作为大数据分析平台的优势和不足。
45、请给出检测死锁发生的一种方法,当发生死锁后如何解除死锁?
46、内存数据库的特点有哪些?
五、综合题
47、工厂(包括厂名和厂长名)需建立一个管理数据库存储以下信息:
(1)一个厂内有多个车间,每个车间有车间号、车间主任姓名、地址和电话。
(2)一个车间有多个工人,每个工人有职工号、姓名、年龄、性别和工种。
(3)一个车间生产多种产品,产品有产品号和价格。
(4)一个车间生产多种零件,一个零件也可能由多个车间制造。零件有零件号、重量和价格。
(5)一个产品由多种零件组成,一种零件也可装配出多种产品。
(6)产品与零件均存入仓库中。
(7)厂内有多个仓库,仓库有仓库号、仓库主任姓名和电话。
回答以下问题:
(1)画出该系统的E-R图。
(2)给出相应的关系模式。
(3)画出该系统的层次模型图。
48、利用Sale数据库进行数据的访问、添加、删除等操作的联系。
(1)建立一个ODBC数据源,要求连接销售管理系统Sale数据库。
(2)利用ADO访问Sale数据库中表Product。
(3)利用JDBC访问Sale数据库中表Product。
49、现有关系模式:
教师授课(教师号,姓名,职称,课程号,课程名,学分,教科书名)其函数依赖集为:
{教师号→姓名,教师号→职称,课程号→课程名,课程号→学分,课程号→教科书名}
①指出这个关系模式的主码。
②这个关系模式是第几范式,为什么?
③将其分解为满足3NF要求的关系模式(分解后的关系模式名自定)
参
一、填空题
1、【答案】域完整性;实体完整性;参照完整性
2、【答案】共享锁;排他锁
3、【答案】无损连接
4、【答案】冗余数据;后援副本;日志文件
5、【答案】AVG(价格)
【解析】SQL中,AVG(字段名)函数用来计算一组记录中某个字段值的平均值。
6、【答案】GRANT;REVOKE
7、【答案】原子
【解析】由事务的原子性可知,它对数据所做的修改操作要么全部执行,要么全部不执行。
8、【答案】完全备份1;差异备份2;DATABASE销售数据库; RECOVERY
9、【答案】一个或几个基本表;定义;数据
10、【答案】物理设计
二、判断题
11、【答案】错
12、【答案】错
13、【答案】对
14、【答案】错
15、【答案】错
16、【答案】对
17、【答案】错
18、【答案】错
19、【答案】对
20、【答案】错
21、【答案】对
22、【答案】对
23、【答案】错
24、【答案】对
25、【答案】对
三、选择题
26、【答案】B
【解析】① A项的情形:若R∩S为10个元组,那么R∪S为15个元组、R-S为5个元组是正确的。
② B项的情形:若R∩S为7个元组,那么R∪S应为18个元组、R-S 应为8个元组。
③ C项的情形:若R∩S为4个元组,那么R∪S为21个元组、R-S为
11个元组是正确的。
④ D项的情形:若R∩S为0个元组,那么R∪S为25个元组、R-S为
15个元组是正确的。
27、【答案】C
【解析】数据库系统总有可能出现故障,所以不管如何都需要一个合理的备份计划以防止出现故障造成数据库中数据的破坏。
28、【答案】C
【解析】DBMS的功能主要有数据库定义、数据库操纵、数据库运行控制、数据库建立及维护和数据通信等。
29、【答案】A
【解析】E-R图为实体-联系图,提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。构成E-R图的基本要素是实体型、属性和联系,其表示方法为:实体型:用矩形表示,矩形框内写明实体名。
属性:用椭圆形表示,并用无向边将其与相应的实体连接起来。联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1:n或m: n)。
实体型之间的联系不仅存在于两个实体型之间,也存在于两个以上的实体型之间。同一个实体集内的各实体之间也可以存在联系。
30、A
31、【答案】B
【解析】在T-SQL中,通过sp-helpdbfixedrole存储过程,查看SQL
Server固定数据库角色列表;利用sp-addrolemember存储过程将数据库用户的账户,添加为当前数据库中数据库角色的成员;利用sp-
droprolemember存储过程从当前数据库的数据库角色中,删除数据库安全账户。但不能利用存储过程在当前数据库中创建固定数据库角色,排除A项。此外,SQL Server包括两类具有隐含权限的预定义角色,固定服务器角色和固定数据库角色。这些隐含权限不能授予其他用户账户。如果有用户需要这些权限,则必须将其账户添加到这些预定义角色中,排除C项;Public角色是SQL Server数据库管理系统中每个数据库都存在的特殊角色。它提供数据库中用户默认权限,每个数据库用户都自动是此角色的成员。所以Public角色不能被删除,排除D项;在T-SQL中,通过sp-helprole存储过程,查看角色;利用sp-addrole存储过程在当前数据库创建新的数据库角色;利用sp-droprole存储过程从当前数据库删除角色。B项是正确的。
32、【答案】B
【解析】技术可行性分析是指对系统采用的软硬件及技术方案等作出合理的评估并提出选择建议,是根据用户提出的系统功能、性能及实现系统的各项约束条件来进行分析的,属于规划与分析阶段。
33、【答案】C
【解析】联机事务处理系统一般没有复杂的查询和分析处理,按面向业务应用的方式组织数据,数据仓库系统的特征在于面向主题、集成性、稳定性和时变性,一般按面向分析主题的方式组织数据。
34、【答案】C
【解析】完整性规则主要分为两大类,一类是域完整性规则,实际上就是值的约束;另一类是关系完整性规则,实际上就是结构的约束。
35、【答案】C
36、【答案】C
【解析】各级范式之间的联系有下述关系:
1NF⊃2NF⊃3NF⊃BCNF⊃4NF⊃5NF。因此,达到3NF,不一定属于 BCNF。事实上,达到3NF还不能解决所有的异常问题,还会出现数据操纵的异常问题。在函数依赖的范畴内,只要达到BCNF就可达到最高的规范化程度,就可避免数据操纵的异常问题。
37、【答案】B
【解析】如果一个关系模式R属于第一范式,且每个非主属性既不部分依赖于码又不传递依赖于码,则这个关系属于第三范式。同时在对关系进行规范化的过程中,对于关系的分解不是随意而为的,需要考虑新关系与原关系在数据上的等价、在依赖上的等价,甚至是在数据和依赖上都等价,否则就很可能达不到规范化目的。
A项中的分解,R1(学号,姓名)达到3NF要求,R2(课程代码,课程名,课程成绩)也达到3NF要求,但是它们与原关系R在数据上不能等价,在依赖上也不等价,因而不是最正确的规范化结果。
C项中的分解,R1(学号,姓名)达到3NF要求,R2(学号,课程代码,课程名,课程成绩)中由于存在:课程代码一课程名,即非码属性对码的部分依赖,因此,该R2只达到1NF要求,没有达到2NF要求,当然也就没有达到3NF要求。
D项中的分解,R1(学号,姓名)达到3NF要求,R2(课程代码,课程名),R3(课程代码,课程成绩)也都达到3NF要求,但是它们与原关系R在数据上不能等价,在依赖上也不等价,因而不是最正确的规范化结果。
只有B项的分解,R1(学号,姓名),R2(课程代码,课程名), R3(学号,课程代码,课程成绩)都达到3NF要求,同时分解后的关系与原关系在数据和依赖上都等价,因而是最正确的规范化结果。
38、【答案】B
【解析】为了避免发生并发操作引起的数据不一致性问题,则采用数据封锁技术实现并发控制。封锁是防止存取同一资源的用户之间相互干扰的机制,即当一个用户对数据库某个数据对象执行修改操作时,对该部分数据加锁,拒绝其他用户对该部分的并发访问要求,直至该事务执行完毕才释放数据对象;所以只有当两事务都是读取数据且都加S锁时才相容。
39、【答案】C
【解析】登录账户属于SQL Server服务安全防线,用户只有拥有SQL
Server服务登录账户,才能与SQL Server建立链接;数据库用户属于
SQL Server数据库安全防线,SQL Server中的每个数据库都有自己的用户和角色,该数据库只能由它的用户和角色访问。它们是不同级别的账号,它们需要绑定,创建数据库用户时必须存在该用户的登录账号,一个登录账号可以对应多个数据库用户,但不需要同名。
40、【答案】B
【解析】数据越详细,粒度就越大,级别也就越低。
41、【答案】A
【解析】一个数组可以表示为:(维1、维
四、简答题
42、答:(1)数据是数据库中存储的基本对象,是描述事物的符号记录。数据有多种表现形式,它们都可以经过数字化后存入计算机。数据的种类有数字、文字、图形、图像、声音、正文等。
(2)数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据性和易扩展性,并可为各种用户共享。数据库数据具有永久存储、有组织和可共享三个基本特点。
(3)数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。
(4)数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
43、答:①占用空间量从大到小排序为:策略3,策略2,策略1;
②备份速度从快到慢排序为:策略1,策略2,策略3;恢复速度从快到慢排序为:策略3,策略2,策略1。
44、答:(1)MapReduce技术主要应用于大规模廉价集群上的大数据并行处理,是以key/value的分布式存储系统为基础,通过元数据集中存储、数据以chunk为单位分布存储和数据chunk冗余复制来保证其高可用性。
(2) 优势:MapReduce是一种并行编程模型。其处理模式以离线式批量处理为主。
(3) MapReduce存在如下不足:
①基于MapReduce的应用软件较少,许多数据分析功能需要用户自行开发,从而导致使用成本增加;
②程序与数据缺乏性;
③在同等硬件条件下,MapReduce的性能远低于并行数据库;
④ MapReduce处理连接的性能尤其不尽如人意。
45、答:(1)数据库系统一般采用允许死锁发生,DBMS检测到死锁后加以解除的方法。DBMS中诊断死锁的方法与操作系统类似,一般使用超时法或事务等待图法。
①超时法是如果一个事务的等待时间超过了规定的时限,就认为发生了死锁。超时法实现简单,但有可能误判死锁,事务因其他原因长时间等待超过时限时,系统会误认为发生了死锁。若时限设置得太长,又不能及时发现死锁。
②事务等待图是一个有向图G=(T,U)。T为结点的集合,每个结点表示正运行的事务;U为边的集合,每条边表示事务等待的情况。若T1等待T2,则T1,T2之间划一条有向边,从T1指向T2。事务等待图动态地反映了所有事务的等待情况。并发控制子系统周期性地生成事务等待图,并进行检测。如果发现图中存在回路,则表示系统中出现了死锁。
(2)DBMS并发控制子系统检测到死锁后,就要设法解除。通常采用的方法是选择一个处理死锁代价最小的事务,将其撤消,释放此事务持有的所有锁,使其他事务得以继续运行。对撤销的事务所执行的数据修改操作必须加以恢复。
46、答:内存是计算机存储体系结构中能够被程序可控访问(相对于硬件控制的cache)的最高层次,是能够提供大量数据存储的最快的存储层。内存数据库具有几个重要特性:
(1) 高吞吐率和低访问延迟;
(2) 并行处理能力;
(3) 硬件相关性。
五、综合题
47、答:(1)该系统的E-R图如图所示。各实体的属性如下:
①工厂:厂名、厂长姓名。
②车间:车问号、车间主任姓名、地址、电话。
③工人:职工号、姓名、年龄、性别、工种。
④仓库:仓库号、仓库主任姓名、电话。
⑤零件:零件号、重量、价格。
⑥产品:产品号、价格。
该系统的E-R图
(2) 相应的关系模式如下:工厂(厂名、厂长姓名)
车间(车间号、车间主任姓名、地址、电话、厂名)工人(职工号、姓名、年龄、性别、工种、车间号)仓库(仓库号、仓库主任姓名、电话、厂名)产品(产品号、价格、车间号、仓库号)零件(零件号、重量、价格、仓库号)制造(车间号、零件号)
(3) 该系统的层次模型图如图所示。
该系统的层次模型图
48、答:(1)在使用ODBC时应创建ODBC源,具体步骤如下:第一步,选择“控制面板”中的“管理工具”,再双击“数据源
(ODBC)”,打开“ODBC数据源管理器”对话框,选择“系统DSN”选项卡。
第二步,在“系统DSN”中单击“添加”按钮,则打开“创建数据源”对话框,选择“SQL Server”数据库类型。
第三步,单击“完成”按钮,则打开“建立到SQL Server的新数据源”对话框,在“名称”文本对话框中输入Sale,在“服务器”中选择服务器名称为local。
第四步,单击“下一步”按钮后,在打开的对话框中选择“使用用户
输入登录ID和密码的SQL Server验证”单击按钮。在“登录ID”文本框中输入sa,在“密码”文本框中输入sa。
第五步,单击“下一步”按钮后,选择“更改默认的数据库为”复选框,并在下拉列表框中选择Sale。
第六步,单击“完成”按钮完成ODBC连接的创建。
(2) 使用ADO访问数据库Sale的步骤如下:第一步,ADO中的Connection对象可实现ASP程序与后台数据库的连接,其代码为:
第二步,创建完数据库连接对象后,就需要打开数据库连接,其代码为:Corm.Open;
第三步,打开数据库后就可以访问数据库了,可以用RecordSet对象方便地查询数据库记录集。
第四步,对数据库访问结束后,可以用Close方法及时关闭各对象,以便释放所占资源,其代码为:
Rs.Close;
Conn.Close;
(3) 使用JDBC访问数据库Sale的步骤如下:
第一步,要在应用程序中加载JDBC驱动程序。通常使用
Class.forName( )方法加载,需要注意的一点就是要设好类路径 classpath,确保JDBC驱动在类路径中。
第二步,成功加载JDBC驱动程序后,负责管理JDBC驱动程序的类DriverManager会识别加载的驱动程序。于是DriverManager就调用方法 getconnection( )来连接数据库:
第三步,获取Connection对象以后,可以用Connection对象的方法来创建一个Statement对象的实例,来对数据库进行操作。
49、答:①主码为:(教师号、课程号)
②第1范式,因为存在部分依赖。
③分解方法为:
教师表(教师号,姓名,职称)
课程表(课程号,课程名,学分,教科书名)教师授课表(教师号,课程号)
【解析】①外码的数据项需参照主码的数据项来操作,主码和外码是用来实现参照完整性的。
②第一范式:(1NF)无重复的列;第二范式:(2NF)属性完全依赖于主键;第三范式:(3NF)属性不依赖于其它非主属性。
