2022软件水平考试-中级数据库系统工程师考试全真模拟卷1(附答案带详解)

上传人:博****1 文档编号:473112614 上传时间:2023-09-06 格式:DOCX 页数:17 大小:23.30KB
返回 下载 相关 举报
2022软件水平考试-中级数据库系统工程师考试全真模拟卷1(附答案带详解)_第1页
第1页 / 共17页
2022软件水平考试-中级数据库系统工程师考试全真模拟卷1(附答案带详解)_第2页
第2页 / 共17页
2022软件水平考试-中级数据库系统工程师考试全真模拟卷1(附答案带详解)_第3页
第3页 / 共17页
2022软件水平考试-中级数据库系统工程师考试全真模拟卷1(附答案带详解)_第4页
第4页 / 共17页
2022软件水平考试-中级数据库系统工程师考试全真模拟卷1(附答案带详解)_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《2022软件水平考试-中级数据库系统工程师考试全真模拟卷1(附答案带详解)》由会员分享,可在线阅读,更多相关《2022软件水平考试-中级数据库系统工程师考试全真模拟卷1(附答案带详解)(17页珍藏版)》请在金锄头文库上搜索。

1、2022软件水平考试-中级数据库系统工程师考试全真模拟卷(附答案带详解)1. 问答题:阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】某小区由于建设时间久远,停车位数量无法满足所有业主的需要,为公平起见,每年进行一次抽签来决定车位分配。小区物业拟建立一个信息系统,对停车位的使用和收费进行管理。【需求描述】(1)小区内每套房屋可能有多名业主,一名业主也可能在小区内有多套房屋。业主信息包括业主姓名、身份证号、房号、房屋面积,其中房号不重复。(2)所有车位都有固定的编号,且同一年度所有车位的出租费用相同,但不同年份的出租费用可能不同。(3)所有车位都参与每年的抽签分配。每套房屋

2、每年只能有一次抽签机会。抽中车位的业主需一次性缴纳全年的车位使用费用,且必须指定唯一的汽车使用该车位。(4)小区车辆出入口设有车牌识别系统,可以实时识别进出的汽车车牌号。为方便门卫确认,系统还需登记汽车的品牌和颜色。【逻辑结构设计】根据上述需求,设计出如下关系模式:业主(业主姓名,业主身份证号,房号,房屋面积)车位(车位编号,房号,车牌号,汽车品牌,汽车颜色,使用年份,费用)【问题1】对关系业主,请回答以下词题:(1)给出业主关系的候选键。(2)它是否为2NF,用60字以内文字简要叙述理由。(3)将其分解为BCNF,分解后的关系名依次为:A1,A2,.,并用下划线标示分解后的各关系模式的主键。

3、【问题2】对关系车位,请回答以下问题:(1)给出车位关系的候选键。 (2)它是否为3NF,用60字以内文字简要叙述理由。(3)将其分解为BCNF,分解后的关系名依次为:B1,B2,.,并用下划线标示分解后的各关系模式的主键。【问题3】若临时车辆进入小区,按照进入和离开小区的时间进行收费(每小时2元)。试增加临时停车关系模式,用100字以内文字简要叙述解决方案。答案: 本题解析:【问题1】本题考查数据库理论规范化及应用,属于比较传统的题目,考查点也与往年类似。本问题考査候选键和第二范式。业主关系的候选键为:房号,业主身份证号。分析业主关系的函数依赖可知:房号,业主身份证号业主姓名,业主身份证号,

4、房号,房屋面积根据第二范式的要求:每一个非主属性完全函数依赖于码,而根据业主关系的函数依赖:房号房屋面积可知,存在非主属性对候选键的部分依赖。所以,业主关系模式不满足第二范式。分解后的关系模式为:A1(房号,业主身份证号)A2(房号,房屋面积)A3(业主身份证号,业主姓名)【问题2】本问题考查第三范式。根据第三范式的要求:每一个非主属性既不部分依赖于码也不传递依赖于码。车位关系的候选键为:(车位编号,使用年份),(房号,使用年份)或(车牌号,使用年份)存在非主属性汽车品牌(或汽车颜色)对候选键车位编号,使用年份的传递依赖:(车位编号,使用年份)车牌号,车牌号汽车品牌。故(车位编号,使用年份)汽

5、车品牌,为传递依赖。所以,车位关系模式不满足第三范式。分解后的关系模式为:B1(使用年份,费用)B2(车牌号,汽车品牌,汽车颜色)B3(车位编号,使用年份,房号,车牌号)或B3(车位编号,使用年份,房号,车牌号)或B3(车位编号,使用年份,车牌号,房号) 【问题3】本问题考查增加新的关系。因为需要根据进入和离开小区的时间进行收费,所以在增加的临时停车关系模式中只需要体现车牌号、进入时间和离开时间即可,即增加的关系模式为:临时停车(车牌号,进入时间,离开时间)。需要注意的是:这三个属性是必须有的,也可以出现其他属性。2. 问答题:某抢红包软件规定发红包人可以一次抛出多个红包,由多个人来抢。要求每

6、个抢红包的人最多只能抢到同一批次中的一个红包,且存在多个人同时抢同一红包的情况。给定的红包关系模式如下:Red(ID,BatchID,SenderID,Money,ReceiverID)其中 ID 唯一标识每一个红包; BatchID 为发红包的批次,一个 BatchID 值可以对应多个ID 值;SenderID 为发红包人的标识;Money 为红包中的钱数; ReceiverID 记录抢到红包的人的标识。发红包人一次抛出多个红包,即向红包表中插入多条记录,每条记录表示一个红包, 其 ReceiverID 值为空值。抢某个红包时,需要判定该红包记录的 ReceiverID 值是否为空,不为空时

7、表示该红包己被抢走,不能再抢,为空时抢红包人将自己的标识写入到 ReceiverID 宇段中,即为抢到红包。【问题1】引入两个伪指令 a = R(X) 和 W(b,X) 。其中a = R(X) 表示读取当前红包记录的ReceiverID 字段(记为数据项 X) 到变量a中, W(b,X)表示将抢红包人的唯一标识b的值写入到当前红包记录的ReceiverID 字段(数据项 X) 中,变量a为空值时才会执行 W(b,X) 操作。假设有多个人同时抢同一红包(即同时对同一记录进行操作),用 ai=Ri (X)和 Wi(bi, X)表示系统依次响应的第i个人的抢红包操作。假设当前数据项 X 为空值,同时

8、有三个人抢同一红包,则(1)如下的调度执行序列:a1 =R1, a2 = R2(X),W1(b1 ,X),W2(b2,X), a3 = R3(X)抢到红包的是第几人?并说明理由。(2)引入共享锁指令 SLocki(X)、独占锁指令XLocki(X)和解锁指令 ULocki(X) ,其中下标i表示第i个抢红包人的指令。如下的调度执行序列:SLock1(X),a1 = R1(X),SLock2(X),a2 = R2(X),XLock1(X).是否会产生死锁?并说明理由。(3)为了保证系统第一个响应的抢红包人为最终抢到红包的人,请使用上述中引入的锁指令,对上述(1)中的调度执行序列进行修改,在满足2

9、PL协议的前提下,给出一个不产生死锁的完整的调度执行序列。【问题2】下面是用 SQL实现的抢红包程序的一部分,请补全空缺处的代码CREATE PROCEDURE ScrambleRed (IN BatchNo VARCHAR(20) , 红包批号( IN RecvrNo VARCHAR(20) ) 一接收红包者BEGIN是否已抢过此批红包if exist s( SELECT * FROM Red WHERE BatchID = BatchNo AND ReceiverID = RecvrNo) thenreturn -1;end if;-读取此批派发红包中未领取的红包记录IDDECLARE N

10、onRecvedNo VARCHAR(30);DECLARE NonRecvedRed CURSOR FORSELECT ID FROM RedWHERE BatchID = BatchNo AND ReceiverID IS NULL;-打开游标OPEN NonRecvedRed;FETCH NonRecvedRed INTO NonRecvedNo;while not error一抢红包事务BEGIN TRANSACTION;/写入红包记录UPDATE RED STE RECDIVER ID =RecvrNoWHERE ID = nonRECVED AND( a )/执行状态判定Ifima

11、ge.png修改的记录数= 1 THENCOMMIT;( b );Return 1;ElseROLLBACK;End if;( c );End while-关闭游标CLOSE NonRecved RDReturn 0;END答案: 本题解析:【问题1】(1)第2人,并发操作出现了丢失更新的问题,第2个的更新覆盖了第1个的更新,原因是破坏了事物的隔离性。(2)会产生死锁,由于数据X同时被1和2加锁了S锁,再对方没有释放的时候,都无法加成功X锁,导致1和2一直都处于等待的状态(3)XLock(X) a=R(X) W(b,X)UNLock(X)【问题2】(a)BatchID=BatchNo(b)CL

12、OSE NonRecvedRed(c)END TRANSACTION3. 问答题:某小区由于建设时间久远,停车位数量无法满足所有业主的需要,为公平起见,每年进行一次抽签来决定车位分配。小区物业拟建立一个信息系统,对停车位的使用和收费进行管理。【需求描述】(1)小区内每套房屋可能有多名业主,一名业主也可能在小区内有多套房屋。业主信息包括业主姓名、身份证号、房号、房屋面积,其中房号不重复。(2)所有车位都有固定的编号,且同一年度所有车位的出租费用相同,但不同年份的出租费用可能不同。(3)所有车位都参与每年的抽签分配。每套房屋每年只能有一次抽签机会。抽中车位的业主需一次性缴纳全年的车位使用费用,且必

13、须指定唯一的汽车使用该车位。(4)小区车辆出入口设有车牌识别系统,可以实时识别进出的汽车车牌号。为方便门卫确认,系统还需登记汽车的品牌和颜色。【逻辑结构设计】根据上述需求,设计出如下关系模式:业主(业主姓名,业主身份证号,房号,房屋面积)车位(车位编号,房号,车牌号,汽车品牌,汽车颜色,使用年份,费用)【问题1】(6分)对关系“业主”,请回答以下问题:(1)给出“业主”关系的候选键。(2)它是否为2NF,用60字以内文字简要叙述理由。(3)将其分解为BCNF,分解后的关系名依次为:A1,A2,.,并用下划线标示分解后的各关系模式的主键。【问题2】(6分)对关系“车位”,请回答以下问题:(1)给

14、出“车位关系的候选键。(2)它是否为3NF,用60字以内文字简要叙述理由。(3)将其分解为BCNF,分解后的关系名依次为:B1,B2,.,并用下划线标示分解后的各关系模式的主键。【问题3】(3分)若临时车辆进入小区,按照进入和离开小区的时间进行收费(每小时2元)。试增加“临时停车”关系模式,用100字以内文字简要叙述解决方案。答案: 本题解析:【问题1】(6分)(1)业主身份证号、房号(2)不满足,存在部分函数依赖,如:业主身份证号业主姓名,房号房屋面积,业主姓名和房屋面积部分依赖于码(业主身份证号、房号)(3)A1(业主姓名,业主身份证号)A2(房号,房屋面积)A3(业主身份证号,房号)【问

15、题2】(6分)(1)(车位编号,使用年份)、(房号,使用年份)或(车牌号,使用年份)。注(回答三个中任意一个得分)(2)不满足3NF,存在部分依赖,如:车牌号(汽车品牌、汽车颜色),对码(车位编号、房号、车牌号、使用年份)存在部分依赖(3)B1(车牌号,汽车品牌、汽车颜色)B2(使用年份,费用)B3(车位编号、房号、车牌号、使用年份)B3(车位编号、房号、车牌号、使用年份)B3(车位编号、房号、车牌号、使用年份)注:任意一个B3均正确。【问题3】(3分)因为需要根据进入和离开小区的时间进行收费,所以在增加的“临时停车”关系模式中值需要体现车牌号、进入时间和离开时间即可,即增加的关系模式为:临时停车(车牌号,进入时间,离开时间)。4. 问答题:某健身俱乐部要开发一个信息管理系统,该信息系统的部分关系模式如下:员工(员工身份证号,姓名,工种,电话,住址)会员(会员手机号,姓名,折扣)项目(项目名称,项目经理,价格)预约单(会员手机号,预约日期,项目名称,使用时长)(外键:会员手机号)消费(流水号,会员手机号,项目名称,消费金额,消费日期)(外键:会员手机号,项目名称)有关关系模式的属性及相关说明如下:(1

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号