《计算机等考三级数据库考前模拟练习》由会员分享,可在线阅读,更多相关《计算机等考三级数据库考前模拟练习(32页珍藏版)》请在金锄头文库上搜索。
1、计算机等考三级数据库考前模拟练习计算机等考三级数据库考前模拟练习模拟试题是考生在备考的过程中,稳固知识点的一个方式,下面就是计算机等考三级数据库考前模拟练习,欢送大家学习!单项选择题1 设有关系表:职工(职工号,姓名,领导职工号),其中职工号是主码,领导职工号是外码。当前表中没有任何数据。现在依次向该表中插入如下数据(1)(e1,Tom,e2)(2)(e3,Jerry,null)(3)(null,F00,null)(4)(e2,Fake,e2)(5)(e1,Ghost,e3)(6)(e4,Wh0,el)那么最终该表中有( )行数据。A.2B.3C.4D.5参考答案:C参考解析:一张关系表中的主
2、码不能为空且具有唯一性。外码取值可能为被参照关系中已存在的主码值或空值。最终该表中插入的数据为(1),(2),(4),(6),共 4 行数据。2 关于数据库视图,以下说法正确的选项是( )。A.视图一定能提高数据的操作性能B.定义视图的语句可以是任何数据操作语句C.视图可以提供一定程度的数据独立性D.视图的数据一般是物理存储的参考答案:C参考解析:视图是从一个或几个根本表(或视图)中导出的虚表,数据库中只存放了视图的定义,不存放视图对应的数据。它是原始数据库数据的一种变换,是查看表中数据的另外一种方式。可以将视图看成是一个移动的窗口,通过它可以看到感兴趣的数据。视图是从一个或多个实际表中获得的
3、,这些表的数据存放在数据库中。那些用于产生视图的表叫做该视图的基表。一个视图也可以从另一个视图中产生。视图的特点表达在三个方面:简单性,看到的就是需要的。视图不仅可以简化用户对数据的理解,也可以简化对它们的操作。那些被经常使用的查询可以被定义为视图,从而使得用户不必为以后的操作每次指定全部的条件;平安性,通过视图用户只能查询和修改他们所能见到的数据。数据库中的其它数据那么既看不见也取不到;逻辑数据独立性,视图可帮助用户屏蔽真实表结构变化带来的影响;根据视图的特点可以到达以下的几点作用:简化数据查询语句;使用户从多角度看待同一数据;提高数据平安性;提供了一定程度的逻辑独立性。所以答案选C。3SQ
4、L Server xx 中,如果希望用户 u1 在 DBl 数据库中具有查询 T1 表的权限,正确的授权语句是( )。A.GRANT SELECT ON DB1(T1)TO u1B.GRANT SELECT TO u1 ONDB1(T1)C.GRANT SELECT TO u1 ON T1D.GRANT SELECT ON T1 TO u1参考答案:A参考解析:SQL Server xx 中 GRANT 的用法为:GRANTALLPRIVILEGESl permission(column,n),nONclass:securableTO principal.nWITH GRANT OPTIONA
5、S principal4 关于数据库应用系统的需求分析工作,以下说法正确的选项是( )。A.通过需求分析过程,需要确定出整个应用系统的目标、任务和系统的范围说明。B.在需求分析阶段,系统需求分析员要与用户充分沟通,并做出各类用户视图。C.数据需求分析的主要工作是要辨识出数据处理中的数据处理流程D.数据操作响应时间、系统吞吐量、最大并发用户数都是性能需求分析的重要指标参考答案:D参考解析:数据库应用系统的需求包括:数据需求分析,数据处理需求分析,业务需求分析及其在性能、存储、平安、备份和恢复等方面的要求。C 项中,数据需求分析的主要工作是从用户视图出发,分析与辨识应用领域所管理的各类数据项和数据
6、结构,形成数据字典的主要内容。B 中在需求分析阶段,系统需求分析员与用户充分沟通,并形成文档化的需求描述。A 中通过需求分析过程,需要系统的描述整个应用系统的功能特征、性能特征和约束,并形成需求标准说明文档。D 中数据操作响应时间、系统吞吐量和最大并发用户数都是性能需求分析的重要指标。所以选D。5 设有关系模式:作者(作者编号,姓名,身份证号,职业,出生日期)。以下能够作为该关系模式候选码的是( )。A.作者编号,姓名 B.作者编号,身份证号 C.作者编号,职业 D.身份证号,出生日期参考答案:B参考解析:关系模型中的候选码定义为某一组属性可以唯一标识一个元组,那么称为该属性组的候选码,所以其
7、候选码属性的取值必须不能有重复也不能为空。题目中姓名,职业,出生日期都可能重复。6 以下全部属于结构图的组图是( )。A.用例图、类图、顺序图、部署图B.类图、组件图、部署图、活动图C.用例图、对象图、状态图、组件图D.类图、对象图、组件图、部署图参考答案:D参考解析:结构图是指以模块的调用关系为线索,用自上而下的连线表示调用关系并注明参数传递的方向和内容,从宏观上反映模块层次结构的图形。其中结构图包括用例图、类图、组件图、对象图和部署图。7 设在 SQL Server xx 中,用户 U1 在 DB1 数据库中创立 T#Temp表。以下关于#Temp 表的说法,正确的选项是( )。A.只有在
8、创立#Temp 表的连接中才可以查询#Temp 表数据B.在所有用户 U1 发起的连接中,都可以查询#Temp 表数据C.在创立#Temp 表的连接未断开时,DB1 数据库的所有用户都可以查询#Temp 表数据D.在创立#Temp 表的连接断开后,DBl 数据库的所有用户仍可以查询#Temp 表数据参考答案:A参考解析:用户假设想在 SQL Senrer 中访问数据库的表,必须同该表建立一个连接表示通信渠道,当连接中断时,无法对其进行访问。B 中只有用户与#temp 建立的连接才可以访问到表。C 中不是所有用户都可以访问该表,只有 U1 用户和由 U1 授权的用户可以访问。D 项很明显也不正确
9、。故答案为 A。9 以下表达中不属于三层 B/S 结构数据库应用系统特点和操作特征的是( )。A.客户端使用浏览器,浏览器与 Web 应用效劳器之间的通信使用超文本传输协议()B.数据库效劳器承受应用效劳器提出的数据操作请求,对数据库进行相应的操作,并将操作结果返回给应用效劳器C.这种结构使客户端和效劳器能在不同的系统问通信,但对客户机配置要求较高,且应用软件维护代价也较大D.这种结构不受时空限制,使用者可以在全球任何地方,任何时间请求数据库应用系统提供的各种数据效劳参考答案:C参考解析:B/S 结构的数据库应用系统的特点是用户界面完全通过浏览器实现,一局部事务逻辑在前端实现,主要的事务逻辑在
10、效劳器实现,所以其对客户机配置要求不高,即使对效劳器要求较高,也不需要安装客户端软件。10 设有以下关于数据库分析、设计与实现的工作:.用概念数据模型表示数据对象的特征及其相互间的关联关系.进行数据库的备份与恢复等日常维护.在 ER 图的根底上确定数据库关系模式.调整数据库逻辑模式,确定文件组织与存取方式,评估物理模式V.考虑分析 DBAS 运行过程中备份数据库策略,如备份时问点和备份周期.事务和应用程序的编码及测试上述工作中,属于 DBAS 系统设计阶段工作的是( )。A.仅、和 VB.仅、和C.仅、和D.全部参考答案:C参考解析:属于设计数据库设计中的概念结构设计,属于逻辑结构设计,属于物
11、理设计。、V、属于数据库的实现与维护。所以答案为 C。11 设在 SQL Server xx 中有商品表(商品号,商品名,进货价格,销售价格),现要求销售价格必须至少是进货价格的1.1 倍。以下关于实现此约束的说法,正确的选项是( )。A.可以用触发器或者用 CHECK 约束实现B.只能用 CHECK 约束实现C.只能用触发器实现D.可以用 DEFAULT 约束实现参考答案:A参考解析:用户定义的完整性可以用 CHECK 短语指定列值应满足的条件,也可以用触发器约束,通过效劳器自动激活相应的触发器,对数据进行完整性控制。所以触发器或CHECK 约束都可以实现。但 DEFAULT 约束不能实现用
12、户自定义的完整性,只能表示实体或参照完整性。12 下面关于模式分解的说法,错误的选项是( )。A.分解并不总能提高查询效率B.分解通常使得涉及属性少的查询执行效率更高C.分解通常使得简单的更新事务执行效率更高D.分解总是能降低存储空间的要求,因为它能消除冗余数据参考答案:D参考解析:分解使得一个关系变为多个关系,常用于关系模式标准化。一般情况下可以减少局部数据冗余,但不恰当的分解也可能增加冗余。13 设有职工表(职工号,姓名,地址 1,地址 2),其中,职工号为主码。现要求地址 1 和地址 2 组合起来不能有重复值。在 SQLServer xx 环境中有以下创立该表的语句:1.CREATE T
13、ABLE 职工表(职工号 int PRIMARY KEY,姓名 n10),地址 1 nvar20),地址 2 nvar20),UNIQUE(地址 1,地址 2):CREATE TABLE 职工表(职工号 int PRIMARY KEY,姓名 n10),地址 1nvar20).地址 2 nvar20)UNIQUE(地址 1,地址 2).CREATE TABLE 职工表(职工号 int PRIMARY KEY.姓名 n10),地址 1 nvar20)UNIQUE,地址 2 nvar20)UNIQUE)IV.CREATE TABLE 职工表(1 职工号 int PRIMARY KEY。姓名 n10)
14、,地址 1 nvar20)UNIQUE(地址 1,地址 2),地址 2 nvar20)上述语句能正确实现此约束的是( )。A.仅和B.仅和C.仅、和D.都正确参考答案:C参考解析:表示在地址 1 的所有记录中地址不允许重复,即每个职工的地址 1 都不同且每个职工的地址 2 也不允许重复。UNIQUE 是对创立的表的属性约束条件,与位置无关。14 现要为某大型商场开发一个数据库应用系统,在该应用系统的生命周期中,设有以下活动:.开发人员执行 DDL 代码建立数据库结构.编写商品信息录入和导入程序,在系统投入运行前建立商品信息清单.根据商场销售业务开展情况,调整数据库中的商品清单和价格.准备销售新
15、商品时,使用商品信息录入或导入程序,将新商品信息参加到商品清单中为了防止数据丧失,定期对数据库中的数据进行转储以上活动中,属于商场数据库应用系统实施活动的是( )。A.仅和B.仅、和C.仅和D.仅和参考答案:A15 存储管理器是数据库管理系统非常重要的组成局部。以下关于存储管理器的说法,错误的选项是( )。A.存储管理器负责检查用户是否具有数据访问权限B.为了提高数据访问效率,存储管理器会将局部内存用于数据缓冲,同时使用一定的算法对内存缓冲区中的数据块进行置换C.存储管理器会为编译好的查询语句生成执行方案,并根据执行方案访问相关数据D.存储管理器以事务方式管理用户对数据的访问,以确保数据库并发
16、访问的正确性参考答案:C参考解析:C 项是查询处理器的功能,不是存储管理器功能。16 数据库设计过程中有如下工作:1.文件组织与存取设计.数据分布设计.确定数据库和参数.将关系模式和相关视图转换为特定数据库管理系统的可支持的表和视图.从时间、空间、维护代价等方面评估物理设计结果,并将评估后的结果实施到数据库中上述工作中属于数据库物理设计的是( )。A.仅、和B.仅和C.仅、和D.以上全部参考答案:C参考解析:数据库物理设计主要步骤包括:数据库逻辑模式调整;文件组织与存取设计;数据分布设计;平安模式设计;确定系统配置;物理模式评估。其中将关系模式和相关视图转换为特定数据库管理系统的可支持的表和视
17、图不属于物理设计的范畴。17 以下有关三级模式结构和数据独立性的说法中,正确的选项是( )。A.在一个数据库中可以定义多个内模式,可利用不同的内模式来描述特定用户对数据的物理存储需求B.外模式是用户与数据库系统的接口,用户可通过外模式来访问数据,在一个数据库中只能定义一个外模式C.三级模式和两层映像的系统结构提供了数据独立性,即当数据的逻辑结构和存储结构发生变化时,应用程序不受影响D.数据独立性使得数据的定义和描述与应用程序相别离,简化了数据库应用程序的开发,但增加了用户维护数据的代价参考答案:C参考解析:内模式又称物理模式,处于最底层,它给出了数据库物理存储结构与物理存取方法,内模式反映了数
18、据在计算机物理结构中的实际存储形式。一个数据库只对应一种内模式。模式是用户的局部模式。一个数据库中可以定义多个外模式。数据独立性不仅简化数据库应用程序的开发,同时因为屏蔽了物理结构的差异,所以也简化了用户维护数据的代价。数据库系统三级模式和两层映像的系统结构保证了数据库系统中能够具有较高的逻辑独立性和物理独立性。18 以下不属于信息系统需求分析的常用建模方法是( )。A.ERB.IDEFOC.DFDD.UML参考答案:A参考解析:常用的需求建模方法包括:DFD方法;IDEFO 方法;UML 方法。19 在数据库应用系统开发的需求调研阶段,需要对用户提出的需求进行分析和。此过程不仅需要描述用户提
19、出的具体功能需求,也需要对用户未明确提出的非功能需求进行描述。设在某商场经营管理系统的需求分析阶段了以下需求:.系统需要支持会员制.系统不需要考虑财务核算功能.系统应长期稳定运行.系统应有销售统计功能.系统应保证数据存储平安上述需求中属于非功能需求的是( )。A.仅和B.仅和 VC.仅和 VD.仅、和 V参考答案:B参考解析:需求分析就是分析用户的应用请求。和不是用户所考虑的问题,属于系统的物理设计阶段,属于系统运行与维护阶段所考虑的问题。20 数据库概念设计是面向企业或组织中的数据需求的。以下有关概念模型设计的说法中,错误的选项是( )。A.按照具有相同属性特征原那么对客观事物进行分类,在分
20、类的根底上概括命名,得到实体集B.分析和定义实体集中的每一个实例,并用有意义的符号或文字分别描述它们C.从一个联系的两端(两个方向)确定实体集之间联系的基数,并把联系的基数标注在模型中D.要保证一个实体集中定义的每一个属性有意义、不重名参考答案:B参考解析:答案 B 是对实体集命名,即在标识实体集的根底上分类抽象,将具有相同属性特征的同类对象抽象为实体集,然后归纳,用一个有意义的名词或名词短语为每一个实体命名。它的描述是实体集中的每一个实例,所以错误。21 设某数据库中有学生表(学号,姓名,所在系)和选课表(学号,课程号,成绩)。现要查询没选课的学生姓名和所在系。以下语句中能够实现该查询要求的
21、是( )。A.SELECT 姓名,所在系 FROM 学生表 a LEFT JOIN 选课表 bON a.学号=b.学号 WHERE a.学号 IS NULLB.SELECT 姓名,所在系 FROM 学生表 a LEFT JOIN 选课表 bON a.学号=b.学号 WHERE b.学号 IS NULLC.SELECT 姓名,所在系 FROM 学生表 a RIGHT JOIN 选课表 bON a.学号=b.学号 WHERE a.学号 IS NULLD.SELECT 姓名,所在系 FROM 学生表 a RIGHT JOIN 选课表 bON a.学号=b.学号 WHERE b.学号 IS NULL参
22、考答案:B参考解析:从数据库中查出没有选课的学生姓名和所在系,那么在学生表中查出选课表中没有的学生即可。在这里采用LEFTJOIN 来连接查询。并且要求选课表中的学生学号为NULL。22 关于并行数据库,以下说法错误的选项是( )。A.层次结构可以分为两层,顶层是无共享结构,底层是共享内存或共享磁盘结构B.无共享结构通过最小化共享资源来降低资源竞争,因此具有很高的可扩展性,适合于 OLTP 应用C.并行数据库系统经常通过负载均衡的方法来提高数据库系统的业务吞吐率D.并行数据库系统的主要目的是实现场地自治和数据全局透明共享参考答案:D参考解析:并行数据库系统的主要目的是通过高速通信介质连接多个可
23、独立处理的单元以并行执行的方式完成对数据库系统的互联查询、内部查询及各种内部操作。分布式数据库系统的主要目的才是实现场地自治和数据全局透明共享。23 某跨国公司的业务系统需要提供全球性效劳,该业务系统需要 24 小时7 天在线效劳,系统业务繁忙,为了保证业务系统中数据库数据的平安,需要设计与实施数据转储机制,设计完成该数据库每天数据增量的转储需要 2 个小时,在不考虑本钱因素的情况下,以下最合理的是( )。A.配备高性能数据库效劳器,通过事务传送机制实时地将数据库中的任何变化反映到备份环境中B.每天划出长度为 2 小时的时间窗口 tw,在 tw 内采用静态转储方法实现每天数据增量的转储C.每天
24、划出长度为 2 小时的时间窗口 tw,在 tw 内采用动态转储方法实现每天数据增量的转储D.每周做一次完全转储,每天选择浮动时间段对变化的数据进行转储参考答案:A参考解析:在静态转储过程中系统不能运行其他事务,因为会降低数据库的可用性;动态备份运行转储操作和用户事务并发执行,即允许在转储过程中对数据库进行存取和修改,动态储存虽然克服了静态储存的一些缺点,但是动态转储可能造成数据库的不一致性,使数据的有效性得不到保证。为了数据的有效性,需要引入日志文件,用它记录转出期问各种事务对数据库的修改活动记录,然后使用动态转储的备份副本加上日志文件就可以将数据库恢复到某一时刻的正确状态,因此 8、c 不适
25、宜。D 中完全转储加增量转储,在这种转储方式下,恢复中使用的转储文件较多,其中任何一次转储出了问题都会导致恢复失败,同时恢复时间长,因此D 也不可取。24 在大型企业的数据库应用系统中,联机事务处理(OLTP)和联机分析处理(OLAP)是常见的数据管理与数据分析形式。关于OLTP 和OLAP,一般情况下,以下说法正确的选项是( )。A.OLTP 系统的平安性要求比 OLAP 系统的低,也比拟容易实现B.OLAP 系统在访问数据时,一般以访问少量记录为主,OLTP 系统那么相反C.OLTP 要求系统必须具有很高的响应速度,而 OLAP 对系统响应速度的要求较为宽松D.OLTP 系统一般由企业的中
26、上层或决策层使用,而OLAP 系统一般由企业的中下层业务人员使用参考答案:C参考解析:OLTP 是对数据库联机的日常操作,通常是对一条记录的查询和修改,要求快速响应用户的请求,对数据的平安性、完整性及事物吞吐量要求很高。而 0LAP 是对数据的查询和分析操作,通常是对海量历史数据的查询和分析,要访问的数据量非常大,查询和分析操作十分复杂。所以 A、B 错。又因为 OLAP 为宏观分析,OLTP 为微观操作,所以前者面向中上层和决策者使用,而后者面向企业的中下层业务人员使用。所以 D 错。因此选 C。25 当数据库系统出现故障时,可以通过数据库日志文件进行恢复。以下关于数据库日志文件的说法,错误
27、的选项是( )。A.数据库出现事务故障和系统故障时需使用日志文件进行恢复B.使用动态转储机制时,必须使用日志文件才能将数据库恢复到一致状态C.在 OLTP 系统中,数据文件的空间使用量比日志文件大得多,使用日志备份可以降低数据库的备份空间D.日志文件的格式主要有以记录为单位的日志文件和以数据块为单位的日志文件两种参考答案:C参考解析:数据文件的空间使用量未必比日志文件大,因为日志是快速增长的。此外,使用日志备份并不能降低数据库的备份空间。所以选 C。26 在进行数据库性能调优过程中,需要考虑数据库系统软件、硬件配置、网络环境等多方面因素。以下有关性能调优的说法,错误的选项是( )。A.修改某些
28、频繁使用的 SQL 语句,提高其性能,可能会大幅度降低数据库 CPU 使用率B.随着效劳器 CPU 处理能力提高、内存容量增大,现阶段数据库性能优化一般以更换效劳器硬件为主要调优手段C.当数据库效劳器磁盘 I0 出现写瓶颈时,可以考虑使用高速磁盘存储常用数据,低速磁盘存储不常用数据D.索引可以提高某些查询的速度,但也可能降低写入速度,同时也会增加磁盘空间使用参考答案:B参考解析:增强硬件配置是一种方法,但我们平时遇到的最多的问题是如何在无法增强硬件配置的情况下将数据库性能优化,因此在实际应用过程中,数据库本身的优化占的比重很大,而且优化效果也最明显。27 以下关于事务调度的说法错误的选项是(
29、)。A.调度分为串行调度和并发调度B.串行调度的特点是一个事务的所有操作都执行完后才开始执行另一个事务C.多个事务的调度必须保持每个事务的操作在事务中的执行顺序不变D.并发调度中不同事务的操作不可以穿插执行参考答案:D参考解析:事务是构成数据库应用中一个独立逻辑工作单元的操作的集合,也是访问并可能更新数据库中各种数据项的一个程序执行单元。数据库系统通过执行各种事务实现对数据库数据的操作,管理和执行事务是 DBMS 的根本功能。事务的四大特性为:原子性;一致性;隔离性;持久性。事务调度那么是为了保证事务的此四大特性。调度分为串行调度和并发调度。串行调度的特点是一个事务的所有操作都执行完后才开始执
30、行另一事务,不存在事务操作的穿插执行;不同事务操作的穿插执行称为并发调度,DBMS 穿插执行多个事务的各个操作,以提高数据库系统的性能。并发调度中不同的事务的操作可以穿插执行。28 设有某电子商务平台,该平台业务繁忙。为实现面向用户的精确营销,提高向用户推荐商品的成功率,需要建立数据仓库系统,并将数据仓库作为数据挖掘应用程序的数据源。设电子商务平台的 OLTP 环境中有销售数据表 Tl 和用户信息表 T2。数据仓库用表T3 保存近 5 年的销售细节数据,同时有用户信息表 T4 和用户商品推荐表 T5。以下方案一般情况下最为合理的是( )。A.实时更新 T3,即每产生一条销售记录,就将该记录同时
31、写到T1 和 T3 中,并触发数据挖掘程序运行,以增加数据挖掘结果的准确性和实时性B.当一个销售事务完成并生成销售记录后,触发数据挖掘程序在 T1 上执行并得到针对该用户的商品推荐列表,然后将商品推荐列表写到 T5 中。每隔数小时从 T1 获取新数据批量更新 T3C.根据 T1 的变化实时更新 T3,每天定时运行数据挖掘程序,生成用户商品推荐列表,并将其写到 T5 中D.每天根据 T1 对 T3 做一次批量更新,数据挖掘程序根据新数据生成用户商品推荐列表,并将其写到T5 中参考答案:D参考解析:数据仓库是为了构建新的分析处理环境而出现的一种数据存储和组织的新技术。它的建立能充分利用已有的数据资
32、源,把数据转换为信息,从中挖掘出知识,最终创造出效益。数据仓库有假设干根本特征,包括不可更新性和随时间变化性。所谓不可更新性就是用户在提取仓库中的数据进行分析时并不会同时对数据仓库中的数据进行更新操作,而数据变化性是数据仓库每隔一段时间进行数据的更新和处理。综上可以看出,数据仓库的更新与时问间隔有关,所以不会实时更新,即排除A、C,又因为对用户进行推荐时要结合以往的历史数据而不是仅通过当前数据分析,即B错。综上可知,选项 D 正确。29 以下关于分布式数据库和并行数据库的说法,正确的选项是( )。A.为了满足高并发业务的需要,共享内存结构的并行数据库比拟适用于如银行出纳、民航售票等 OLTP
33、应用B.在分布式数据库的查询中,导致数据传输量大的主要原因是数据间的连接操作和选择操作C.如果数据分布不合理,并行数据库仅仅依靠多处理器、共享硬件资源等手段是无法实现真正意义上的并行处理的,也无法使其性能最优化D.与集中式数据库系统的事务相比,分布式数据库系统中只需要一个场地完成提交即可完成一个全局事务,这正是分布式数据库的优越之处参考答案:C参考解析:A 中的 0LTP 应用需要进行大量的并行事务,因此假设采用共享内存结构会引起大量数据冲突;B 中分布式数据库查询中,导致数据传输量大的原因主要是数据间的连接和并操作;D 中分布式数据库因为不同的分片和副本,因此很多时候在一个场地完成提交不能完
34、成全局事务,如虽完成某片数据更新,却并没有完成全局数据更新。30 日志文件对实现数据库系统故障的恢复有非常重要的作用。以下关于数据库系统日志文件的说法,正确的选项是( )。A.数据库系统不要求日志的写入顺序必须与并行事务执行的时间次序一致B.为了保证数据库是可恢复的,必须严格保证先写数据库后写日志C.日志文件中检查点记录的主要作用是提高系统出现故障后的恢复效率D.系统故障恢复必须使用日志文件以保证数据库系统重启时能正常恢复,事务故障恢复不一定需要使用日志文件参考答案:C参考解析:A 日志写入顺序必须和并行事务执行的时间次序一致,因为这样才能在数据库恢复时进行red0 和 und0 操作,从而保
35、证数据的一致性而不会产生脏数据;B 必须先写日志再写数据库,这样当数据库发生故障时可以根据日志完全恢复,否那么如果先写数据,当数据刚写完时,数据库故障而没来得及写日志,导致数据恢复时发生错误。D 事务恢复时同样需要日志,如 red0、und0 操作。所以选 C。二、应用题31 数据库管理系统为三级模式结构提供了两层映像机制,其中模式/内模式映像提供了【1】独立性。参考解析:物理【解析】数据库系统的三级模式结构是由外模式、模式和内模式三级构成。模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征描述,是所有用户的公共数据视图,它是数据库系统的中间层。外模式是数据库用户能够看见和使用的局部数据的逻
36、辑结构和特征描述,是数据库用户的数据视图。内模式是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。为了能够在系统内部实现这 3 个抽象层次的联系和转换,数据库管理系统在这三级模式之间提供了两层映像:外模式/模式映像、模式/内模式映像。这两层映像分别保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。32 按照数据库应用系统生命周期模型,系统设计阶段细分为概念设计、【2】设计和物理设计三个步骤。参考解析:逻辑【解析】系统设计阶段分为概念设计、逻辑设计、物理设计。概念设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体 DBMS 的概念模型。逻
37、辑设计是将概念结构转换为某个 DBMS 所支持的数据模型,并对其进行优化。物理设计是为逻辑数据模型选取一个最适合应用环境的物理结构。33 设用 UML 设计某数据库应用系统,设计人员规划了一组应用程序集,该集合由动态链接库和可执行程序构成。为了展现这些应用程序集间的组织和依赖关系,以对源代码、可执行程序的等进行系统建模,应采用的 UML 图是【3】图。参考解析:组件【解析】组件图提供系统的物理视图。UML 图形中组件图的用途是显示系统中的软件对其他软件组件(例如,库函数)的依赖关系,它可以在一个非常高的层次上显示,从而仅显示粗粒度的组件,也可以在组件包层次上显示。34 设有学生表(学号,姓名,
38、所在系名)和选课表(学号,课程号,成绩)。现要建立统计每个系选课人数的视图。请补全以下语句:CREATE VIEW Vl(系名,人数)AsSELECT 所在系名,【4】FROM 选课表 JOIN 学生表 ON 选课表.学号=学生表.学号【5】参考解析:第一空:COUNT(DISTINCT 选课表.学号)第二空:GROUP BY 所在系名【解析】由于要统计选课人数所以要用到聚类函数COUNT(DISTINCTI ALL),表示对某列的值的计数,如果指定DISTINCT 短语,那么表示在计算时要取消指定列中的重复值。如果不指定 DISTINCT 短语或指定 ALL 短语,那么表示保存重复值。由于是
39、对不同系中的学生的学号统计,所以用GROUP BY 子句将查询结果按某一列或多列的值分组,值相等的为一组。通过对组内不同学号的统计从而统计出各个系的选课人数。35 设有课程表(课程号,课程名,学分,先修课程号),某应用程序需要列出“数据库原理”课程的一门先修课程,查询结果要求输出(课程名,学分,先修课名称,先修课学分),可以用【6】连接操作在一个查询中实现此功能。参考解析:自【解析】自连接是 SQL 语句中经常要用的连接方式,使用自连接可以将自身表的一个镜像当作另一张表来对待,从而能够得到一些特殊的数据。简而言之,自连接的本意就是将一张表看成多张表来做连接。此题的 SQL 语句为:select
40、 课程表.课程名,课程表.学分,先修表.课程名,先修表.学分 from emp 课程表,emp 先修表 where 课程表.课程名=数据库原理and 课程表.先修课程号=先修表.课程号。36 在 SQL Server xx 的某用户数据库中,设有 T 表,现要在 T表的 c1 列和 c2 列上建立一个复合唯一聚集索引,其中 c1 列值重复率为 20%,c2 列为 l0%。请补全以下语句建立一个性能最优的索引:CREATE UNIQUE CLUSTERED INDEX Idxl ON T(【7】)参考解析:c2,c1【解析】聚簇索引是指索引项的顺序与表中记录的物理顺序一致的索引组织。用户可以在最
41、经常查询的列上建立聚簇索引以提高查询效率。UNIQUE 表示要建立的每一个索引值对应唯一的数据记录,先对 c2 表索引然后对 cl 表索引,可以使索引的性能最优。37 在 SQL Server xx 中,现要将 T1 表的 C1 列(int 类型)定义为标识列,初值和增量值均为 1。请补全以下语句:CREATE TABLE T1(clint【8】(1,1),)参考解析:IDENTITY【解析】此题考查了 SQL SERVER 中的 identity 用法。在数据库中,常用的一个流水编号通常会使用i-dentity 栏位来进行设置,这种编号的好处是不会重复,而且是唯一的,这对table 中的唯一
42、值特性很重要,通常用来做客户编号、订单编号等。此处用IDENTITY 作约束性定义,使 C1 可以成为标识列。38 在 SQL Server xx 中,设 ul 是 SQL Server 身份验证模式的数据库效劳器账户,现希望 U1 在该数据库效劳器上具有系统管理员权限。请补全以下语句:EXEC sp-addsrvrolememberU1,【9】参考解析:sysadmin【解析】EXEC spaddsrvrolemember 是账户角色,spaddsrvrolemember 是定义好的存储过程,其作用是为账户赋角色权限。数据库主要的角色及权限如下表所示:bulkadmin 执行 BULKINS
43、ERT 语句dbcreator 创立、修改、删除和复原数据库diskadmin 管理磁盘文件processadmin 管理在 SQL Server 实例中运行的进程securityadmin 管理效劳器账户serveradmin 配置效劳器范围的设置setupadmin 添加和删除链接效劳器sysadmin 在 SQL Server 中进行任何活动,该角色的权限跨越所有其它固定效劳器角色39 数据库管理系统中的加锁协议规定了事务的加锁时间、持锁时间和释放锁时间,其中【10】协议可以完全保证并发事务数据的一致性。参考解析:三级加锁【解析】三级加锁协议也称为三级封锁协议.,它保证正确地调度事务的并
44、发操作,是事务对数据库对象加锁、解锁必须遵守的一种规那么。在运用 x 锁和 s 锁对数据对象加锁时,还需要约定一些规那么,例如何时申请 x 锁或 S 锁、持锁时间、何时释放等。40 在数据库系统出现系统故障后进行恢复时,对于事务T,如果日志文件中有 BEGIN TRANSACTION 记录,而没有 MIT 或 ROLLBACK记录,那么数据库管理系统处理这种事务时应执行的操作是【11】。参考解析:UNDO【解析】系统故障造成数据库状态不一致的原因有两个,一是未完成的事务对数据库的更新可能已写入数据库,二是已提交事务对数据库的更新可能还留在缓冲区没来的及写入数据库。对于故障发生前已提交的事务(既
45、有 BEGIN Transaction,又有 mit)做 red0操作,对于故障发生时尚未完成的事务(只有 BEGINTransaction,而没有 mit 或 rollback)做 und0 操作。41 在动态转储中,利用转储文件只能将数据库恢复到转储过程中的某个状态,且转储文件中的数据可能不一致,只有和【12】文件综合起来使用,才能将数据库恢复到一致状态。参考解析:日志【解析】数据转储是数据库恢复中采用的根本技术。所谓转储即 DBA 定期地将整个数据库复制到磁带或另一个磁盘上保存起来的过程。动态转储是指在转储过程期间允许对数据库进行存取或修改,即转储和用户事务可并发执行,但在转储数据后,副
46、本上的数据并不能保证正确有效,为此必须把转储期间各事务对数据库的修改活动登记下来,建立日志文件。42 通常数据库的转储机制有三种,分别是完全转储、差量转储和【13】转储。参考解析:增量【解析】数据库的转储机制一般有完全转储、差量转储和增量转储三种。完全转储是指对整个数据库中的数据全部重新备份,效率低,时问长;差量转储指基于上一次完全转储基点之后变化转储,是对上次转储之后对所有文件中修改或删除的记录的转储,效率高,时问短;增量转储是对数据库中但凡有记录变化的文件的整个文件进行复制,效率介于前两种转储方式之间。43 数据仓库是面向主题的、【14】的、非易失的、随时间变化的数据集合,用来支持管理人员
47、的决策。参考解析:集成【解析】数据仓库是为了构建新的分析处理环境而出现的一种数据存储和组织技术,根本特征包括:数据是面向主题的、集成的、非易失的、随时间不断变化的数据集合,用来支持管理人员的决策。44 在数据仓库设计和建立过程中,设计者需要调查用户的决策或数据处理需求,并将功能相近且需要相关联数据支持的需求进行归类,得到不同的需求集合,并在企业数据模型中寻找能够满足各个需求集合的数据集合,然后针对各个数据集合开展数据仓库数据模型的设计。这种设计方法称为【15】的设计方法。参考解析:面向主题【解析】面向主题的数据组织方式,就是在较高层次上对分析对象数据的一个完整并且一致的描述,能刻画各个分析对象
48、所涉及的企业各项数据,以及数据之间的联系。所谓较高层次是相对面向应用的数据组织方式而言的,即按照主题进行数据组织的方式具有更高的数据抽象级别。与传统数据库面向应用进行数据组织的特点相对应,数据仓库中的数据面向主题进行组织。例如,一个生产企业的数据仓库所组织的主题可能有产品订货分析和货物发运分析等。三、设计与应用题45 某书店采用了 SQL Server xx 数据库管理系统,该书店有一个需求,需要统计指定年份中每一本书的销售总额,例如:查询xx年所有书的销售总额。图书结构如下:图书表(书号 BOOKID,书名 BOOKNAME,单价 BOOKPRICE)销售表(书号 BOOKID,销售时间 S
49、ALETIME,销售数量SALENUM)。假设单价和销售数量均为 int 型,书号和书名均为 var50)类型,销售时问为 datetime 型。请给出满足如下要求的多语句表值函数,该函数统计指定年份中每本书的销售总额。(10 分)设函数名为:BOOKPROFIT(year int),函数的返回结果格式如下:书号销售总额B001 60000A004 50000参考解析:【解题思路】采用 JOIN 联合查询,先用 WHERE 条件查出符合销售时间=year的记录,再将找出的记录和图书表合并,并采用单价*销售数量计算出联合查询的表数据,最后根据 GROUP BY 统计每种书的销售价格总和。【参考答
50、案】CREATE FUNCTION BOOKPROFIT(year int)RETURNSfBOOKPROFIT table(书号 var50),销售总额 int)ASBEGININSERT INTOfBOOKPROFITSELECT a 书号,SUM(a 单价*b 销售数量)FROM 图书表 a JOIN 销售表 b ON a 书号=b 书号WHERE year(b 销售时间)=yearGROUP BY a.书号RETURNEND或者CREATE FUNCTION BOOKPROFIT(year int)RETURNSfBOOKPROFlT table(BOOKID var50),PROFI
51、T int)ASBEGININSERT INTOfBOOKPROFITSELECT a.BOOKID,SUM(a.BOOKPRICE*b,SALENUM)FROM BOOK a JOIN SALE b ON a.BOOK ID=b.B00K IDWHERE year(bSALETIME)=yearGROUP BY a.BOOKIDRETURNEND46 某商场商品经营管理系统使用 SQL Server xx 数据库管理系统,此系统上线运行 1 年后,业务人员使用某统计功能(此功能每月使用一次)时发现速度很慢。该统计功能主要执行的 SQL 语句如下:SELECT 商品号,SUM(销售数量*销售价
52、格)销售额FROM 销售明细GROUP BY 商品号;该销售明细表的建表语句如下:CREATE TABLE 销售明细(序列号 intIDENTITY(1,1)NOT NULL,商品号 intNOT NULL,销售日期 datetime NULL,销售数量 intNOT NULL,销售价格 intNOT NULL);并在销售明细表上建有如下索引:CREATE index ix 销售明细商品号 on 销售明细(商品号);某技术人员提出通过执行下述语句以提高此查询的运行效率:CREATE VIEW 商品销售额视图WITH SCHEMABINDINGASSELECT 商品号,SUM(销售数量*销售价格
53、)销售额,COUNTBIG(*)tFROM db0.销售明细GROUP BY 商品号;CREATE UNIQUE CLUSTERED INDEX ix 商品销售额ON 商品销售额视图(商品号);(1)请分析该技术人员给出的语句功能以及对原有查询语句的性能影响,并给出原因。(2)此商场的销售量很大,每天有大量数据插入到销售明细表中。请从数据库整体性能角度分析,此技术人员提出的优化方法是否适宜,并给出原因。参考解析:(1)【解题思路】该技术人员使用了带有索引的视图,将所关心的数据(商品号,销售额,该商品号在表中出现的次数)从销售明细表中提取出来建立视图,并对该视图建立按商品号排序的聚簇索引,这样大
54、大减少了在搜索不同商品的销售额时调用的数据表的规模,从而提高了查询效率。由于表的数据规模很大,建立该视图后,同一种商品不会屡次出现在表中,而是通过一个计数变量t 表示,即在检索时大大减少了检索规模。创立索引时,UNIQUE 关键字说明此索引的每一个索引值只对应唯一的数据记录。CLUSTER 表示要建立的索引是聚簇索引(所谓聚簇索引是指索引项的顺序与表中记录的物理顺序一致的索引组织)。【参考答案】语句功能:建立包含所关心数据(商品号,销售额,该商品号在表中出现的次数)的带索引的视图,并建立按商品号对应销售额UNIQUE 聚簇排序的索引,从而大大缩小了查询语句的查询范围,提高了查询效率。原因:视图
55、中将问接相关的属性列(序列号,销售日期,商品号,销售数量,销售价格)转换成了目标属性列,减少了搜索空问,同时建立 UNIQUE CLUSTERED 索引,使查询商品号的数据记录唯一,因此降低了搜索范围,提高了搜索效率。(2)【解题思路】由于视图是不实际存储数据的虚表,因此对视图的更新最终要转换为对根本表的更新。而用户通过视图对数据进行增加、删除、修改时,有意或无意地对不属于视图范围内的根本表数据进行操作,会破坏数据的一致性。而且视图中的数据本身就是冗余的,每次对表进行修改时,同时也要对相应的视图进行修改,这大大增加了系统的负担。【参考答案】不适宜,每天大量的插入操作使得在修改表的同时也要对视图
56、进行修改,增加了系统的负担,然而该统计功能一个月才用一次,这样导致系统的利用率也较为低下。47 设有图书管理数据库,包含三张表:图书明细表(图书编号,图书类别,图书名称,作者,出版社,出版日期,定价);读者表(借书证号,姓名,系别,办证日期);借出信息表(借出编号,借书证号,图书编号,借书日期);完成以下操作:定义一个多语句表值函数,用于查询学生借书情况,只需提供参数:借书证号,就可以通过调用函数返回此学生的借书情况,假设有借书籍,那么返回所借书籍的编号、书籍名称、定价和借书日期;假设没有在借书籍,那么返回记录为空。设函数名为:fBorrowBook(jszh 20)。参考解析:【解题思路】S
57、QL Server xx 多语句表值函数的格式为:CREATE FUNCTIONschemaname.functionname(parameternameAstypeschemaname.parameterdatatype=default.n)RETURNSreturnvariable TABLEASBEGINfunctionbodyRETURNEND;:=(Itableconstraint,.n)采用三表联合查询,通过传入的借书证号查出借出信息表中的图书编号,然后查出图书明细表的信息。【参考答案】CREATE FUNCTION BorrowBook(jszh 20)RETURNSjsqkb TABLE(书籍编号 20),书籍名称 50),定价float,借书日期 datetime)ASBEGININSERTjsqkbSELECT 图书明细表.图书编号,图书名称,定价,借出信息表.借书日期 FROM 借出信息表,图书明细表WHERE 借出信息表.图书编号=图书明细表.图书编号 AND 借出信息表.借书证号=jszhRETURNEND