2022年软考-数据库系统工程师考前拔高综合测试题(含答案带详解)第23期

上传人:住在山****ck 文档编号:97663247 上传时间:2022-05-27 格式:DOCX 页数:21 大小:828.33KB
返回 下载 相关 举报
2022年软考-数据库系统工程师考前拔高综合测试题(含答案带详解)第23期_第1页
第1页 / 共21页
2022年软考-数据库系统工程师考前拔高综合测试题(含答案带详解)第23期_第2页
第2页 / 共21页
2022年软考-数据库系统工程师考前拔高综合测试题(含答案带详解)第23期_第3页
第3页 / 共21页
点击查看更多>>
资源描述
2022年软考-数据库系统工程师考前拔高综合测试题(含答案带详解)1. 单选题下列攻击行为中,( )属于被动攻击行为。问题1选项A.伪造B.窃听C.DDOS攻击D.篡改消息【答案】B【解析】只有B选项是被动攻击,其他选项是主动攻击方式。2. 案例题阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】某快递公司对每个发出的快递进行跟踪管理,需要建立一个快递跟踪管理系统,对该公司承接的快递业务进行有效管理。【需求描述】1.公司在每个城市的每个街道都设有快递站点。这些站点负责快递的接收和投递。站点信息包括站点地址、站点名称、责任人、一个联系电话、开始营业时间、结束营业时间。 每个站点每天的营业时间相同。每个站点只能有一个责任人。2.系统内需记录快递员、发件人的基本信息。这些信息包括姓名、身份证号、一个联系地址、一个联系电话。快递站点的责任人由快递员兼任,且每个快递站点只有一个责任人。每个快递员只负责一个快递站点的揽件和快递派送业务。发件人和快递员需实名认证。3.快递需要提供详实的信息,包括发件人姓名、身份证号、一个发件人电话号码、发件人地址、收件站点、收件人姓名、收件地址、一部收件人电话、投递时间、物品类别、 物品名称及物品价值。每个发件人和收件人在系统里只能登记一个电话和地址。4.每个快递员接手一份快递后,需在系统中录入每个快递的当前状态信息,包括当前位置、收到时间、当前快递员和上一快递员。状态信息包括待揽件、投递中、已签收。 如果快递已签收,应记录签收人姓名及一个联系电话。每个快递在一个站点只能对应一个负责的快递员。注:试题不需要考虑快递退回的相关问题。【逻辑结构设计】根据上述需求,设计出如下关系模式:快递(快递编号,收件人姓名,收件地址编号,收件人电话,投递时间,物品类别,物品名称,物品价值),其中收件地址编号是地址实体的地址编号。快递员(姓名,身份证号,电话号码,联系地址编号,工作站点编号)快递站点(站点编号,站点名称,责任人编号,站点地址编号,开始营业时间,联系电话,结束营业时间)。责任人编号是负责该站点的快递员的身份证号。地址(地址编号,所在省,所在市,所在街道,其他),其他信息是需补充的地址信息。快递投递(快递编号,快递员编号,发件人姓名,发件人身份证号,发件人电话号码, 发件人地址编号),其中发件人地址编号为发件人地址的地址编号,揽件站点编号为接收该快递的站点编号。快递跟踪(快递编号,当前负责人编号,前一负责人编号,当前状态,收到时间, 当前站点编号)。快递签收(快递编号,签收人姓名,签收人联系电话)。根据以上描述,回答下列问题:【问题1】(6分)对关系“快递投递”,请回答以下问题:(1) 列举出所有候选键。(2) 它是否为3NF,用100字以内文字简要叙述理由。(3) 将其分解为BCNF,分解后的关系名依次为:快递投递1,快递投递2,并用下划线标示分解后各关系模式的主键。【问题2】(6分)对关系“快递跟踪”,请回答以下问题:(1) 列举出所有候选键。(2) 它是否为2NF,用100字以内文字简要叙述理由。(3) 将其分解为BCNF,分解后的关系名依次为:快递跟踪1,快递跟踪2,并用下划线标示分解后各关系模式的主键。【问题3】(3分)快递公司会根据快递物品和距离收取快递费,每件快递需由发件人或收件人支付快递费给公司。同一个发件人同时发起多个快递,必须分别支付。快递公司提供预支付和到付两种支付方式。为了统计快递费的支付情况(详细金额和时间),试增加“快递费支付”关系模式,用100字以内文字简要叙述解决方案。【答案】【问题1】(6分)(1)候选键:快递编号(2)不满足3NF。理由:快递投递关系模式存在非主属性对码“快递编号”的传递函数依赖,如快递编号发件人身份证号,发件人身份证号(发件人姓名,发件人电话号码,发件人地址编号),所以不满足3NF。(3)分解后的关系模式:快递投递1(发件人身份证号,发件人姓名,发件人电话号码,发件人地址编号)快递投递2(快递编号,快递员编号,发件人身份证号)注:根据题干有遗漏,所以还可增加快递投递3(快递员编号,揽件站点编号)【问题2】(6分)(1)候选码:(快递编号,当前负责人编号)(2)不满足2NF。 存在当前负责人编号 决定当前站点编号 。(3)快递跟踪1(快递编号,当前负责人编号,前一负责人编号,收到时间,当前状态),(快递编号,当前负责人编号)做主键;【问题3】(3分)快递费支付(支付编号,快递编号,支付金额,支付方式,快递员编号/收费人,支付状态,支付人身份证号,支付时间)其他能够描述清楚即可。【解析】本题很多信息比较模糊,考虑的前提是对于快递投递,只记录一次投递信息,即揽件信息。(1)快递编号可以推导出其他属性,所以候选键为快递编号。(2)快递投递关系模式存在非主属性对码“快递编号”的传递函数依赖,如快递编号发件人身份证号,发件人身份证号(发件人姓名,发件人电话号码,发件人地址编号);根据题干“快递投递(快递编号,快递员编号,发件人姓名,发件人身份证号,发件人电话号码, 发件人地址编号),其中发件人地址编号为发件人地址的地址编号,揽件站点编号为接收该快递的站点编号。”此处关系模式中应该遗漏了揽件站点编号,这里还应该存在快递编号快递员编号揽件站点编号,这一组非主属性对码的传递函数依赖。(3)模式分解,将不满足的传递函数依赖单独组成关系模式即可。快递投递1(发件人身份证号,发件人姓名,发件人电话号码,发件人地址编号)快递投递2(快递编号,快递员编号,发件人身份证号)注:根据题干有遗漏,所以还可增加快递投递3(快递员编号,揽件站点编号)【问题3】根据题干要求,同一个发件人需要对多个快递分别支付,因此需要记录快递编号; 快递公司提供预支付和到付两种支付方式,因此需要记录支付方式;题干指出统计快递费支付情况(详细金额和时间),因此需要记录支付金额和支付时间;对于支付过程,应该由发件人或收件人支付给公司,可以理解为实际操作是公司快递员收取,因此需要记录支付人身份证号,收费人编号(或快递员编号),为了方便统计,还可以增加支付编号,支付状态等属性。3. 单选题通过将一个关系拆分成两个更小的关系来使其满足范式时,必须( )来保持数据的完整性约束。问题1选项A.用相同的属性使两个子关系互相关联B.移除两个子关系中所有的函数依赖C.封锁机制D.事务机制【答案】A【解析】通过将一个关系拆分成两个更小的关系来使其满足范式时,必须用相同的属性使两个子关系互相关联来保持数据的完整性约束。4. 单选题假设所有的作业同时到达,平均周转时间最短的调度算法是( )。问题1选项A.先来先服务B.优先级调度C.短作业优先D.轮转算法【答案】C【解析】先来先服务调度算法(FCFS):就是按照各个作业进入系统的自然次序来调度作业。这种调度算法的优点是实现简单,公平。其缺点是没有考虑到系统中各种资源的综合使用情况,往往使短作业的用户不满意,因为短作业等待处理的时间可能比实际运行时间长得多。短作业优先调度算法(SPF): 就是优先调度并处理短作业,所谓短是指作业的运行时间短。而在作业未投入运行时,并不能知道它实际的运行时间的长短,因此需要用户在提交作业时同时提交作业运行时间的估计值。时间片轮转调度算法:每个进程被分配一个时间段,称作它的时间片,即该进程允许运行的时间。如果在时间片结束时进程还在运行,则CPU将被剥夺并分配给另一个进程。如果进程在时间片结束前阻塞或结束,则CPU当即进行切换。调度程序所要做的就是维护一张就绪进程列表,当进程用完它的时间片后,它被移到队列的末尾。基于优先级调度算法(HPF):每一个作业规定一个表示该作业优先级别的整数,当需要将新的作业输入并调入内存处理时,优先选择优先级别数最高的作业。作业周转时间(Ti)完成时间(Tei)提交时间(Tsi)作业平均周转时间(T)周转时间/作业个数5. 单选题攻击者使网络中的服务器充斥着大量需要回复的信息,消耗带宽,导致系统停止正常服务或者响应很慢,这种攻击类型属于( )。问题1选项A.直注入攻击B.TCP会话动持C.DoS攻击D.ARP欺骗攻击【答案】C【解析】DoS是Denial of Service的简称,即拒绝服务,造成DoS的攻击行为被称为DoS攻击,其目的是使计算机或网络无法提供正常的服务。最常见的DoS攻击有计算机网络宽带攻击和连通性攻击。tcp会话劫持是获取正常的数据,从而达到窃取秘密的目的。ARP欺骗,或ARP攻击,是针对以太网地址解析协议(ARP)的一种攻击技术。通过欺骗局域网内访问者PC的网关MAC地址,使访问者PC错以为攻击者更改后的MAC地址是网关的MAC,导致网络不通。此种攻击可让攻击者获取局域网上的数据包甚至可篡改数据包,且可让网上特定计算机或所有计算机无法正常连线。6. 单选题有一进口商品数据表iteminfo(itemid,itemtype,unitprice,itemcount),其中itemid是自动编号字段,其他属性可以为NULL。如果用SQL语句:INSERT INTO iteminfo(unitprice,itemcount) VALUES (9.99,150)向数据表中插入元组时,则该元组的item_type属性值为( )。问题1选项A.NULLB.任意值C.0D.插入失败,不存在该元组【答案】A【解析】缺省为NULL值。答案为A。7. 单选题根据计算机软件保护条例的规定,著作权法保护的计算机软件是指( )。问题1选项A.程序及其相关文档B.处理过程及开发平台C.开发软件所用的算法D.开发软件所用的操作方法【答案】A【解析】计算机软件著作权的客体是指著作权法保护的计算机软件著作权的范围(受保护的对象)。根据中华人民共和国著作权法第三条和计算机软件保护条例第二条的规定,著作权法保护的计算机软件是指计算机程序及其有关文档。根据计算机软件保护条例第三条第一款的规定,计算机程序是指为了得到某种结果而可以由计算机等具有信息处理能力的装置执行的代码化指令序列,或者可被自动转换成代码化指令序列的符号化语句序列。计算机程序包括源程序和目标程序,同一程序的源程序文本和目标程序文本视为同一软件作品。根据计算机软件保护条例第三条第二款的规定,计算机程序的文档是指用自然语言或者形式化语言所编写的文字资料和图表,以用来描述程序的内容、组成、设计、功能规格、开发情况、测试结果及使用方法等。文档一般以程序设计说明书、流程图、用户手册等表现。 因此,答案为A。 8. 单选题以下关于木马程序的叙述中,正确的是( )。问题1选项A.木马程序主要通过移动磁盘传播B.木马程序的客户端运行在攻击者的机器上C.木马程序的目的是使计算机或网络无法提供正常的服务D.Sniffer是典型的木马程序【答案】B【解析】传播方式:9. 单选题Redis是一种NoSQL数据库,具体地说,是( )存储数据库。问题1选项A.键-值B.文档C.图形D.XML【答案】A【解析】Redis是一种键-值类型的存储数据库。10. 案例题阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】某网上销售系统的部分关系模式如下:订单表:orders(o_no, o_date, o_time, p_no, mno, p_price, nums, amt, status)。其中属性含义分别为:订单号、订单日期、订单时间、产品编码、供应商编码、产品价格、产品数量、订单金额、订单状态(0-未处理、1-已处理、 2-已取消)。产品表:products(p_no, p_name, p_type, price, m_no, p_nums)。其中属性含义分别为:产品编码、产品名称、产品类型、产品价格、供应商编码、库存数量。【问题1】(5分)节假日时,由供应商提供商品打折后的新价格,数据存放在临时表中,该临时表的表名为tmp_prices(不同供应商有不同的临时表),其关系模式如下:后台维护人员需要根据供应商填写在tmp prices中的数据来更新产品表中某些产品的价格。下面是基于游标,用SQL实现的价格更新程序,请补全空缺处的代码。【问题2】(6分)假设用户1和用户2同时购买1份A商品,用户3查询和浏览A商品。三个用户对应事务的部分调度序列如表4-1所示(事务中未进行并发控制),其中TO时刻该A商品的库存数量p_nums为100。表4-1 事务运行部分调度示意表请说明T4、T7时刻,用户3事务读取到的p_nums 数值分别是多少。请说明T8时刻事务调度结果是否正确?若不正确请说明属于哪一种数据不一致性。【问题3】(4分)为保证并发事务的正确性,系统要求所有事务需遵循两段锁协议。(1)请用100字以内的文字简要解释两段锁协议,并说明“两段”的含义。(2)请说明两段锁协议是否可以避免死锁?如不能避免,应采取什么措施解决死锁问题。【答案】【问题1】(a)cursor(b)open(c)Pno, Pprice, Mno(d)commit【问题2】T4时刻,p_nums的值为100。T7时刻,p_nums的值为99。事务调度结果不正确。丢失修改。【问题3】(1)两段锁协议是指对任何数据进行读写之前必须对数据加锁;在释放一个封锁之后,事务不再申请和获得任何其他锁。“两段”的含义是:事务分为两个阶段,第一阶段是获得封锁,称为扩展阶段;第二阶段是释放封锁,称为收缩阶段。(2)两段锁协议不能避免死锁。解决措施是采用死锁检测机制,发现后按照一定算法解除死锁。【解析】本题考查数据库设计中存储过程和事务并发的相关知识及应用。【问题1】本问题考查存储过程和游标的基本知识。题干描述中已经给出了关系模式和具体的需求描述,给出了使用游标的明确要求,并给出了主体程序。考生应根据游标的具体使用要求,填写空白处代码。存储过程中游标的使用分为四个步骤:定义游标、打开游标、取数据、关闭游标。空白(a)处于存储过程的Declare部分,此部分用于定义临时变量,所以此处应该是游标定义,应该填cursor关键字;空白(b)处应该填open,即打开游标;游标打开后,常见的数据处理方法是采用循环方式,利用fetch语句取出一条数据进行处理,所以空白(c)处应该填写存储数据的临时变量,即Pno,Pprice,Mno,分别来存储取出的产品编码、产品价格和供应商编码,此处需要注意的是临时变量的顺序,需要和游标定义中select后的属性顺序保持一致。空白(d)是该存储过程的最后一条语句,应该对修改后的数据进行确认提交,应该填写commit语句。【问题2】本问题考查事务并发可能会带来的并发问题。根据题干描述,三个事务并发执行,T0时刻p_nums为100。到T4时刻,事务1和事务2均对事务内部的变量p_nums进行了减一操作,事务1和事务2的p_nums值为99,但均未写入数据库,因此此时事务3从数据库中读取的p_nums值应该依然是100。到了T7时刻,事务1将99的数值写入数据库,事务2也将99的数值写入数据库,并且覆盖了事务1写入的数值(虽然都是99),所以T7时刻事务3从数据库读取的p_nums值为99。从上述描述中可以看到,到了T8时刻,事务1和事务2都完成了减一操作,但数据库中p_nums的值却是99(不是98),因此事务调度结果不正确,不属于串行化调度,属于丢失修改。导致不正确的原因是事务2的修改覆盖了事务1的修改,导致事务1的修改丢失了。【问题3】本问题考查两段锁协议的基本知识。两段锁协议是指对任何数据进行读写之前必须对数据加锁;在释放一个封锁之后,事务不再申请和获得任何其他锁。该协议明确所有事务必须分两个阶段对数据项加锁和解锁:第一阶段是获得封锁,事务可以对数据加读/写锁,但不能释放,也称为扩展阶段;第二阶段是释放封锁,事务可以释放前面对数据加的读/写锁,但不能再申请加锁,也称为收缩阶段。两段锁协议不能保证完全避免锁死的发生,当两个满足两段锁协议的事务并发运行时,如果两个事务对两个资源进行了交叉锁定,死锁就必然发生。因此DBMS必须要提供死锁检测机制,以实时检测死锁的发生,并根据某种策略解除死锁。11. 单选题防火墙的工作层次是决定防火墙效率及安全的主要因素,以下叙述中,正确的是( )。问题1选项A.防火墙工作层次越低,工作效率越高,安全性越高B.防火墙工作层次越低,工作效率越低,安全性越低C.防火墙工作层次越高,工作效率越高,安全性越低D.防火墙工作层次越高,工作效率越低,安全性越高【答案】D【解析】防火墙工作层次越低,工作效率越高,安全性越低。12. 单选题属性指的是表中的一个( )。问题1选项A.记录B.列C.元组D.码【答案】B【解析】关系数据库中的关系模型事实上可以看作是一个二维表,这个二维表中的列称为属性(或字段),行称为元组(或记录)。13. 单选题在一个关系表中,各表的行代表( )。问题1选项A.关系B.外码C.元组D.属性【答案】C【解析】关系数据库中的关系模型事实上可以看作是一个二维表,这个二维表中的列称为属性(或字段),行称为元组(或记录)。14. 单选题以下媒体中,( )是表示媒体,( )是表现媒体。问题1选项A.图像B.图像编码C.电磁波D.鼠标问题2选项A.图像B.图像编码C.电磁波D.鼠标【答案】第1题:B第2题:D【解析】表示媒体:表示媒体指的是为了传输感觉媒体而人为研究出来的媒体,借助于此种媒体,能有效地存储感觉媒体或将感觉媒体从一个地方传送到另一个地方。如语言编码、电报码、条形码等。表现媒体:表现媒体指的是用于通信中使电信号和感觉媒体之间产生转换用的媒体。如输入、输出设备,包括键盘、鼠标、显示器、打印机等。15. 单选题通常可以将计算机系统中执行一条指令的过程分为取指令,分析和执行指令3步。若取指令时间为4t,分析时间为2t。执行时间为3t,按顺序方式从头到尾执行完600条指令所需时间为( )t;若按照执行第i条,分析第i+1条,读取第i+2条重叠的流水线方式执行指令,则从头到尾执行完600条指令所需时间为( )t。问题1选项A.2400B.3000C.3600D.5400问题2选项A.2400B.2405C.3000D.3009【答案】第1题:D第2题:B【解析】按顺序方式执行时间为(4+2+3)t * 600=5400t16. 案例题阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】如果一个数据库恢复系统采用检查点机制,且其日志文件如表5-1所示,第一列表示日志记录编号,第二列表示日志记录内容。表示事务Ti开始执行,表示事务Ti提交,表示事务Ti将数据项D的值由V1修改为V2。请回答以下问题。表5-1 日志记录列表【问题1】(6分)假设系统开始执行前X=100,Y=50,Z=10,系统出错恢复后,X、Y、Z各自的数值是多少?【问题2】(4 分)系统发生事务故障时,故障恢复有撤销事务(undo)和重做事务(redo)两个操作。请给出系统恢复时需要redo的事务列表和需要undo的事务列表。【问题3】(5 分)请用100字以内的文字,简要描述系统出错后,基于检查点的恢复过程。【答案】【问题1】X=1,Y=50,Z=10。【问题2】需要redo的事务列表:T1。需要undo的事务列表:T2,T3。【问题3】步骤1:反向扫描日志文件,确定需要redo的事务和需要undo的事务。步骤2:对需要undo的事务撤销已经执行的操作。步骤3:对需要redo的事务重新执行已执行的操作。【解析】本题考查考生对数据库中事务故障的掌握。此类题目要求考生认真阅读日志文件,判断故障发生时完成和未完成的事务对数据项的影响。在此基础上,考生需要了解撤销事务和重做事务在故障恢复中的应用和故障恢复的正确步骤。【问题1】系统出错前,只提交了事务T1,即将数据项X的值由100改为1。T2和T3事务由于未提交,其中的修改未生效。【问题2】系统恢复的方法为:清除尚未完成的事务对数据库的所有修改,undo(撤销)所有未完成的事务(从后往前)。将缓冲区中已完成事务提交的结果写入数据库,redo(重做)所有已提交的事务(从前往后)。T1已完成事务提交,需要redo。T2和T3事务尚未完成,需要undo。【问题3】本题需要重点关注撤销事务和重做事务的顺序。在重做事务之前,需要先进行撤销操作。17. 单选题以下关于数据库的重组和重构的说法中,正确的是( )。问题1选项A.数据库的重组修改了原设计的逻辑和物理结构B.数据库的重构不修改原设计的逻辑和物理结构C.数据库的重组是指按原设计要求重新安排存储位置、回收垃圾、减少指针链以提高系统性能D.数据库的重构是指按原设计要求重新安排存储位置、回收垃圾、减少指针链等,以提高系统性能【答案】C【解析】数据库使用较长一段时间后,因为一些增,删,改等操作,使得数据的分布索引及相关数据会变得比较凌乱,从而影响数据库的效率。数据库重组即是将数据库的相关信息重新组织。18. 单选题对于两个关系E和F,( )的运算结果的任一元组, 同时属于E和F。问题1选项A.EFB.EUFC.EFD.E-F【答案】C【解析】关系的基本运算有两类:一类是传统的集合运算(并、差、交、笛卡尔积),另一类是专门的关系运算(选择、投影、连接、除法、外连接等)。传统的集合运算:(1)并(UNION)设有两个关系R和S,它们具有相同的结构。R和S的并是由属于R或属于S的元组组成的集合,运算符为。记为T=RS。(2)差(DIFFERENCE)R和S的差是由属于R但不属于S的元组组成的集合,运算符为。记为T=RS。(3)交(INTERSECTION)R和S的交是由既属于R又属于S的元组组成的集合,运算符为。记为T=RS。RS=R(RS)。因此,对于两个关系E和F, EF的运算结果的任一元组, 同时属于E和F。答案为C。19. 单选题根据计算机软件保护条例的规定,对软件著作权的保护不包括( )。问题1选项A.目标程序B.软件文档C.源程序D.开发软件所用的操作方法【答案】D【解析】开发软件所用的思想、处理过程、操作方法或者数学概念不受保护。20. 单选题下列描述中,( )不是分布式数据库数据透明性的表现形式。问题1选项A.代码透明性B.分片透明性C.位置透明性D.模型透明性【答案】A【解析】分布式数据库的透明性包括了分片透明、分配透明(复制透明、位置透明)、映像透明(模型透明)。而代码透明的说法是错误的。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 考试试卷


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!