四级数据库工程师真题及答案.docx
《四级数据库工程师真题及答案.docx》由会员分享,可在线阅读,更多相关《四级数据库工程师真题及答案.docx(8页珍藏版)》请在冰豆网上搜索。
![四级数据库工程师真题及答案.docx](https://file1.bdocx.com/fileroot1/2023-1/21/4e638c17-0189-4137-a0fa-0f5463a7ce32/4e638c17-0189-4137-a0fa-0f5463a7ce321.gif)
四级数据库工程师真题及答案
Forpersonaluseonlyinstudyandresearch;notforcommercialuse
2010年9月计算机四级数据库工程师笔试试题:
文字版
一、选择题
(1)视图是数据库中的重要对象,下列有关视图的说法错误的是 A)一般情况下,数据库只存储视图的定义,其数据仍存放在相关的基本表中 B)可以将复杂的查询语句封装在视图中以简化相关查询语句的编写 C)通过视图可以屏蔽不希望用户看到的敏感数据,提高数据库数据的安全性 D)可以在视图的基础上建立新的视图,但这样定义的视图会导致数据库性能下降,一般不推荐使用
(2)在概念数据模型中,联系用于描述现实世界中事物之间的关联关系。
一阿d关于联系的说法错误的是 A)联系可用于描述一个实体集内记录之间的关联关系 B)联系可用于描述两个实体集属性之间的关联关系 C)ER模型通过1:
1、1:
n和m:
n三种联系描述现实世界中各类事物之间的关联关系 D)最终的IDEFIX模型中只能出现I:
1和1:
n两种类型的联系 (3)在关系数据库中,NULL是一个特殊值,在很多数据操作中都需要对NULL进行特殊处理。
关于NULL,下列说法正确的是 A)判断元组的某一列是否为NULL一般使用“=NULL” B)NULL在数据库中表示尚不确定的值 C)在SQLServer2000中执行“SELECTNULL+5”将会出现异常 D)NULL只适用于字符和数值类型 (4)某教务管理系统包含选课模块、成绩录入模块和学籍管理模块。
选课模块面向学校几万名学生,成绩录入模块面向学校上千名任课教师,学籍管理模块面向少量有一定权限的管理人员。
该系统是上世纪用C/S结构和相关技术开发的,为了方便用户使用,需要对系统进行升级和改造。
设有下列技术改造方案:
I.选课模块和成绩录入模块采用B/S结构进行改造,学籍管理模块仍采用C/S结构 II.选课模块采用B/S结构进行改造,成绩录入模块和学籍管理模块仍采用C/S结构 III.选课模块、成绩录入模块和学籍管理模块均采用B/S结构进行改造 Ⅳ.成绩录入模块采用B/S结构进行改造,选课模块和学籍管理模块仍采用C/S结构 上述方案中,较为合理的是 A)仅I和IIB)仅I、II和IIIC)仅I和IIID)仅II、III和IV
(5)数据库在外存中是以文件形式组织的,组织文件记录方法的不同就形成了不同的文件结构。
下列关于顺序文件结构及其存取效率的说法错误的是 A)顺序文件因其记录按照查找码值升序或降序排列,当按照查找码的值顺序读取记录时其效率很高 B)当按照一定的条件对顺序文件进行查询时,如果查询条件定义在查找码上,可以使用二分查找技术快速找到满足条件的记录 C)由于需要保持文件中记录的顺序,因此顺序文件的插入和删除操作比较复杂,耗费时间也较多 D)对顺序文件进行条件查询时,如果查询条件没有定义在查找码上,其查找效率一般也会比无序文件高 (6)死锁是数据库系统中可能出现的一种状态。
下列有关死锁的说法错误的是 A)当事务由于无法获得对需要访问的数据项的控制权而处于等待状态时,称数据库中产生了死锁 B)死锁是由于系统中各事务间存在冲突操作且冲突操作的并发执行顺序不当而产生的 C)死锁预防可以使用一次加锁和顺序加锁两种方法,其中一次加锁法可能会降低系统的并发程度 D)解除死锁通常采用的方法是选择一个或儿个造成死锁的事务,撤销这些事务并释放其持有的锁 (7)某系统中事务T1从账户A转出资金到账户B中,在此事务执行过程中,另一事务T2要进行所有账户余额统计操作。
在T1和T2事务成功提交后,数据库服务器突然掉电重启。
为了保证T2事务统计结果及重启后A,B两账户余额正确,需利用到的事务性质分别是 A)一致性和隔离性B)隔离性和持久性 C)原子性和一致性D)原子性和持久性 (8)设有关系模式SC(Sno,Sname,Sex,Birthday,Cno,Cname,Grade,Tno,Tname)满足函数依赖集:
{Sno→Sname,Sno→Sex,Sno→Birthday,Cno→Cname,(Sno,Cno)→Grade,Tno→Tname}.SC的主码和属性集(Sno,Tno)的闭包分别是 A)(Sno,Tno)和{Cno,Cname,Grade,Tno,Tname} B)(Sno,Cno,Tno)和{Sno,Sname,Sex,Birthday,Cno} C)(Sno,Cno)和{Sno,Sname,Sex,Birthday,Cno,Cname,Grade} D)(Sno,Cno,Tno)和{Sno,Sname,Sex,Birthday,Tno,Tname} (9)数据库应用系统是面向数据管理和数据处理的软件系统。
下列有关数据库应用系统开发及其生命周期说法中,错误的是 A)数据库应用系统安全性需求分析中,需考虑系统应达到的安全控制级别。
按照可信计算机系统评测标准,安全性不高的系统其安全控制级别一般应定为C级 B)数据库应用系统性能分析一般使用每TPS代价值来衡量系统性价比 C)在数据库应用系统生命周期模型中,规划与分析阶段应生成项目计划书、可行性分析报告和需求说明文档 D)数据库应用系统可行性分析需要从技术、经济、操作等方面评估和判断该项目是否可行,是否能够达到预期目标
(10)在数据库应用系统实施、运行和维护过程中,设有下列活动:
I.在系统运行过程中,对数据库的空间增长情况进行监控 II.在系统运行过程中,对数据库系统各时段CPU和内存使用情况进行监控 III.在数据库系统实施时,运行DDL代码建立关系表 IV.建立关系表以后编写系统应用程序 V.定期进行数据备份 以上活动中,二般情况下属于DBA任务的是 A)仅I、II和VB)仅I和IIC)仅I、II和IIID)仅III,IV和V (11)在SQLServer2000中,Userl是销售数据库中的用户,并只被授予了销售明细表数据的删除权限,则Userl用户在该数据库中能够执行的操作是 A)删除销售明细表中的全部数据B)删除销售明细表中的指定数据 C)查询销售明细表中的全部数据D)以上操作都可以 (12)在SQLServer2000中,要对数据库GoodsDB进行一次差异备份,将其备份到设备Backup1上(该设备已建立好),并要求该次备份操作清除Backupl中己有的备份内容。
下列能实现该备份要求的语句是 A)BACKUPDATABASEGoodsDBTOBackuplDIFFERENTIAL,WITHNOINIT B)BACKUPDATABASEGoodsDBTOBackuplWITHDIFFERENTIAL,NOINIT C)BACKUPDATABASEGoodsDBTOBackuplDIFFERENTIAL,WITHINIT D)BACKUPDATABA息EGoodsDBTOBackuplWITHDIFFERENTIAL,INIT (13)ADO对象模型用于简化通过ODBC,OLEDB等接口访问数据库的编程工作。
下列关于ADO的说法错误的是 A)用ADO对象访问数据库时,仍需依赖OLEDB,ODBC等数据库访问接口 B)开发者只需通过使用ADO对象模型中的几个简单对象的方法和属性即可实现对数据库的访问,因此,使用ADO对象模型可以提高数据访问效率 C)ADO是在OLEDB,ODBC等接口基础上设置的高一层接口 D)ADO对象模型提供的编程接口与数据提供者无关,提高了数据访问的透明性
(14)在SQLServer2000中,关于dbcreator角色,下列说法正确的是 A)该角色是SQLServer系统提供的服务器级角色 B)该角色是SQLServer系统提供的数据库级角色 C)该角色是系统管理员定义的服务器级角色 D)该角色是系统管理员定义的数据库级角色 (15)在分布式数据库中,查询处理和优化比集中式数据库要复杂得多,其中的查询优化需要考虑的主要因素包括I/O代价、CPU代价和通信代价。
一般而言,分布式数据库查询优化的首要目标是 A)使查询执行时I/O代价最省B)使查询执行时CPU代价最省 C)使查询执行时通信代价最省D)使查询执行时I/O代价和CPU代价之和最省 (16)在SQLServer2000中,每个数据库都至少包含一个数据文件和一个日志文件,创数据库的主要工作是定义构成数据库的数据文件和日志文件的属性。
给定下列属性:
I.初始大小 II.物理文件名 III.最大大小 IV.收缩方式 V.增长方式 以上属于数据库文件属性的是 A)仅I、11和IIIB)仅II、N和VC)仅I、11、III和VD)全部都是 (17)在VB6.0中使用Adodc数据控件可以很方便地实现对数据库数据的插入、删除和修改操作。
现假设用Adodc1数据控件删除其结果集当前行对应的数据库数据,下列实现方案中正确的是 A)执行Adodc1.Delete方法 B)执行Adodcl.ReCOrdset.Delete方法 C)先执行Adodcl.Delete方法,然后再执行Adodcl.Update方法 D)先执行Adodcl.Recordset.Delete方法,然后再执行Adodc (18)设有某转储策略,用该策略对数据库中的某一数据文件f进行转储时,会将其跟上一次的转储文件采用一定机制进行比较,若发现f被修改或f为新文件时才转储该文件,则这种转储策略是 A)完全转储B)增量转储C)差量转储D)增量加差量转储
(19)设某系统中有商品销售表(商品号,商品类别,数量,单价,销售日期,销售时间),该表数据量大,在I作时间会被频繁插入销售数据。
用户需要经常查询每天各类别商品的销售总量。
为了提高查询效率,下列措施中最为有效且合理的是 A)在商品销售表上针对商品类别和销售日期属性建立索引 B)建立商品分类别日销售汇总表(商品类别,销售总量,日期),每产生一条新销售记录时实时更新该表,用户直接使用该表进行查询即可 C)在商品销售表的商品号和销售日期属性上建立索引 D)建立商品日销售汇总表(商品号,商品类别,销售总量,日期),每产生一条新销售记录时实时更新该表,用户直接使用该表进行查询即可 (20)统一建模语言(UML)是一种常用于数据库应用系统设计和开发的可视化建模语言。
关于UML,下列说法错误的是 A)UML中的视图是由一个或多个图组成的,一个图是系统模型中的某个侧面的展示 B)用例图、顺序图和状态图都是UML的行为视图,用于描述系统的功能和活动 C)类图和对象图都是UML的结构视图,用于描述系统在某个时间的静态结构 D)在用例图中,与系统交互的人和其它实体都可以成为系统的角色 (21)在SQLServer2000中,如果己分配给某个数据库的空间大小远远大于存放该数据库数据需要的实际大小,则应该对该数据库进行收缩,以释放多余的空间。
关于收缩数据库,下列说法错误的是 A)收缩数据库中的某个文件时,收缩后的文件大小可以小于定义文件时的初始大小 B)只能收缩数据库所包含的数据文件,不能收缩其日志文件 C)收缩某个具体文件时,只要收缩后的文件空间大于该文件存放数据所需的实际空间,收缩操作即可进行 D)按比例收缩数据库时,收缩后的数据库大小不能小于定义数据库时的初始大小 (22)数据库概念设计的任务之一是标识和定义实体集。
关于如何标识和定义实体集有下列说法:
I.被标识的实体集应能被一个属性集描述 II.只有一个同类实例的对象集一般情况下也有必要标识成一个实体集 III.实体集中的每个实例应能够被唯一标识和区分 N.定义实体集时通常用一个有意义的名词命名 V.实体集中的每个属性应该用一个有意义的动词命名 以上说法正确的是 A)仅I、III和NB)仅II、IV和VC)仅I、IV和VD)仅II、III和IV
(23)有关系模式:
系(系号,系名,系办公电话),教师(教师号,教师名,职称,聘任日期,工资,所在系号)。
现要定义下列约束:
I.系号是系关系的主码,教师号是教师关系的主码 II.职称列的取值只能为“教授、”副教授“、”讲师“、”助教“和”其它“ III.教授的默认工资为10000元,副教授的默认五资为8000元,讲师的默认工资为5000元 IV.每个教师的所在系号不能为空,且其值必须在系关系中存在 若在数据库中实现以上约束,需要使用触发器才能实现的是 A)仅I和IIB)仅III和NC)仅IIID)仅I和N (24)设某大型商场的数据仓库需要采取一定的数据抽取策略从商场业务数据库系统中采集数据。
设数据仓库环境中有客户名单、商品销售细节和商品每日销售汇总数据,并有应用系统需要分析每周客户增长趋势和每日商品销售趋势。
下列数据抽取或更新策略一般情况下最为合理的是 A)每天晚上针对业务系统中的客户名单和商品销售细节做一次快照,然后根据商品销售细节计算销售汇总数据 B)每天做一次客户名单快照,根据客户名单的变化修改数据仓库中的最终客户名单。
销售细节每天晚上采用增量方式进行抽取,然后根据新增的销售数据更新商品每日销售汇总数据 C)每周做一次客户名单快照,每天做一次销售细节快照,然后根据商品销售细节计算销售汇总数据 D)每周在发现客户名单中的信息有变化时,对客户名单做一次快照。
对销售细节数据采用增量方式,每天抽取一次新的销售数据,然后根据新增的销售数据更新商品每日销售汇总数据 (25)数据库技术为大量数据的组织和存储,以及数据的操纵、管理与维护提供了有力的方法和工具。
有下列说法:
I.与用户自定义文件存储数据的方式相比,数据库不仅能存储数据,还能方便地表达数据之间的关系 II.数据库管理系统一般情况下只提供通用的数据处理功能,不提供面向具体应用领域的业务处理功能 III.数据页(块)是数据库中存储数据的基本单位,为了提高空间利用率,SQLServer2000等数据库管理系统允许一行数据跨页存储 IV.利用数据库技术,可以提高数据的独立性,使数据不再与应用程序紧密地捆绑在一起,实现数据在企业、组织或更大范围内的共享 V.数据字典是数据库管理系统的重要组成部分,大部分数据库管理系统的数据字典是由一组系统表和系统视图组成的,这些对象一般由数据库管理系统和数据库管理员共同维护 以上说法错误的是 A)仅I和IIIB)仅II和IVC)仅III和VD)仅IV和V
(26)设有关系模式Student(Sno,Sname,Sex,Birthday),Course(Cno,Cname,Credit),SC(Sno,Cno,Grade)。
若在SQLServer2000中建有与以上模式对应的关系表,并有如下操作:
I.定义Sno是Student关系表主码,定义Cno是Course关系表的主码,定义Sno,Cno是SC关系表的主码 II.定义Student关系表Sex列的取值只能为”男,或“女”,定义Course关系表Credit列的取值范围是[1,4] III.在Student关系表的Sname列上建立一个非聚集索引,在Course关系表的Cname列上建立一个非聚集索引- IV.定义SC关系表的Sno列的取值不能为空,并且其镶一个值必须在Student关系表的Sno列的值集中 以上操作对内模式结构有影响的是 A)仅I和IIIB)仅II和IIIC)仅I和IVD)仅I和II (27)某大型超市的数据库应用系统中,设有下列数据:
I.商品清单 II.DBMS中的数据字典 III.商品销售细节数据 IV.数据库结构说明文档 V.前端应用程序报表中数据项的定义及说明文档 VI.商品分类销售汇总数据 以上数据中,一般属于元数据的是 A)仅I、III和VIB)仅II、V和VIC)仅I、II和ND)仅II、N和V (28)设有某通信公句面向手机用户的网上通信记录查询数据库系统,该系统为手机用户提供最近一年内用户的短信和通话记录查询功能。
在系统上线运行前的实施过程中,设有下列测试活动:
I.在指定时间段内,模拟生成N笔特定模式的查询事务,测试服务器能否在这个时间段内完成这些查询 II.用一个手机用户登录,测试系统能否在该用户5分钟内没有任何操作时自动断开该用户的连接 III.测试系统在用户通过网页登录时能否生成验证码图片 IV.用一个手机用户登录,测试在用户成功登录后系统能否正确地给用户发送一条提示短信 V.测试单个用户查询不同时间跨度的数据所需的平均响应时间 以上测试活动中,可以归为性能测试的是 A)仅I和VB)仅I、II和IVC)仅II、III和IVD)仅I、II和V
(29)在SQLServer2000中,有学生表(学号,姓名,年龄,所在系),学号是主码。
在这个表上建有视图V1,V1视图的定义语句为:
CREATEVIEWV1AS SELECT姓名,年龄,所在系FROM学生表 WHERE年龄>=(SELECTAVG(年龄)FROM学生表) 有下列操作语句:
I.UPDATEV1SET年龄=年龄+1 II.SELECT*FROMV1WHERE年龄>20 III.DELETEFROMV1WHERE年龄>20 IV.INSERTINTOV1VALUES(,张三,20,‘计算机系’) 以上语句能正确执行的是 A)仅I和IIB)仅IIC)仅II和IVD)仅I、II和III (30)为了防止某个数据库系统发生故障,设有下列措施:
I.配备UPS保证服务器供电稳定 II.采用双硬盘镜像,以防止单个硬盘出现介质损坏而造成数据丢失 III.定期给操作系统打补丁,以免操作系统被攻击后重启 IV.改善密码管理机制,提高各类密码的安全性,以免发生数据失窃 V.加强事务流程测试和验证,以免发生并发事务死锁 以上措施中,用于防止数据库系统出现系统故障(软故障)的是 A)仅I、II和IIIB)仅III、IV和VC)仅I和IIID)仅IV和V
二、应用题(每空2分,共30分)
(1)【1】文件支持多种记录类型的存储,这种文件将来自多个关系表不同类型的记录存储在一起,可减少多表查询时磁盘的访问量,提高多表查询的效率。
设有表T(c1,c2),c1的数据类型为char
(2),要求其第I位的取值范围为[1,9],第2位的取值范围为[0,9].实现此要求的约束表达式为CHECK(c1LIKE“【2】”)。
(3)设有某种文件,当向其中插入一条新记录时,首先读文件头,找到最末磁盘块的地址后将最末磁盘块读入内存缓冲区,在缓冲区内将新插入记录写入该数据块的末尾,然后将缓冲区中修改过的数据块作为最末磁盘块写回磁盘文件。
以这种方式组织的文件被称为【3】。
(4)在保证数据一致性的加锁协议中,【4】级加锁协议要求事务在读数据项之前必须先对该数据项加共享锁,直到事务结束才释放该锁。
(5)利用日志技术进行数据库恢复时,为了使恢复子系统避免对整个日志文件进行检查,需要在日志文件中增加【5】记录。
(6)数据库逻辑设计的目标是把概念设计阶段得到的【6】模型转换成所选定的数据库管理系统支持的数据模型。
在各种数据环境中,粒度用于描述数据的综合程度。
设某系统中有商品销售表(商品号,销售量,单价,日期,时间)和商品周销售表(商品号,周销售量,周),则商品销售表的粒度级要【7】于商品周销售表的粒度级。
若两个表的时间跨度相同,则商品销售表中存放的数据量要【8】于商品周销售表的数据量。
(8)设有商品表(商品号,商品名,单价)和销售表(商品号,销售时间,销售数量)。
现要查询单价高于100元的全部商品的销售总次数和总数量,包括没有被卖出过的商品(没有被卖出过的商品的销售总次数和总数量置为0)。
请补全如下语句:
SELECT商品表。
商品号,销售总次数=【9】, 销售总数量=SUM(销售数量) FROM商品表【10】销售表 0N商品表。
商品号=销售表。
商品号 WHERE单价>100 GROUPBY商品表。
商品号 (9)在SQLServer2000中,设u1是某数据库中的用户,若要使u1在该数据库中只具有查询全部用户表的权限。
请补全如下语句:
EXECsp_addrolemember“【11】”,“【12】”
(10)SQLServer2000内置的系统管理员账户是【13】
(11)设在SQLServer2000平台一民对数据库SalesDB进行了如下图所示的各份操作。
己知这三次备份操作均备份在设备BK上,且该设备只包含这三个备份操作的结果。
在数据库出现故障后,为尽可能减少数据丢失,需要恢复所有的备份。
请补全如下用于恢复日志备份1的SQL语句:
RESTORELOGSalesDBFROMBK WITH【14】 【15】
三、设计与应用题(共30分)
(1)已知某教务管理系统有下列关系模式(带下划线的属性是主码):
系(系号,系名) 学生(系号,姓名,性别,入学日期,正常毕业日期,所在系号) 课程(课程号,课程名,学分,开课系号,教师号) 选课(学号,课程号,成绩) 教师(教师号,姓名,职称,所在系号) ①请根据给出的关系模式画出该系统的ER图,图中忽略实体集的属性,但如果实体集之间的联系有属性则需要给出联系的属性。
(6分) ②随着教学改革的需要,该系统需要满足下列需求:
I.需为课程增加先修课信息(一门课程可有多门先修课程); II.一门课程可由多名教师讲授,一名教师可以讲授多门课程。
请根据以上需求修改关系模式,仅列出有改动的关系模式,并使每个关系模式满足3NF。
(4分)
(2)在SQLServer2000的某数据库中有如下两张关系表:
学生表(学号,姓名,性别,系号),学号为主码 系表(系号,系名,系简称),系号为主码 ①在数据库中执行如下T-SQL代码:
DECLARE@DePtIDvarchar(10) DECLARE@cntint set@cnt=O DECLAREcursor1cursorFORSELEET系号FROM系表 WHERE系名LIKE'%电%' OPENcursorl FETCHNEXTFROMcursor1INTO@DePtID WHILE@@FETCH_STATUS=O BEGIN DECLARE@temp_cntint sELECT@temp_cnt=COUNT(*)FROM学生表WHERE系号=@DeptID set@Cnt=@cnt+@temp_cnt FETCHNEXTFROMcursor1INTOODePtID END CLOSEcursor1 DEALLOCATE cursor1 SELECT@cnt 执行过程中发现速度比较慢,为了解决性能问题,需在功能不变的情况下,将此T-SQL代码改为一条SQL语句,请写出此SQL语句(语句中不能含有子查询)并说明为什么此种修改可以提高性能。
(5分) ②设在学生表的(姓名,系号)列上建有一个复合索引,该索引是否有助于提高下列两个语句的查询效率?
并说明原因。
(5分) SELECT*FROM学生表WHERE系号='1'; SELEET*FRoM学生表WHERE姓名=‘张