1、软件水平考试(中级)数据库系统工程师下午(应用技术)试题-试卷 9 及答案解析(总分:60.00,做题时间:90 分钟)一、试题一(总题数:2,分数:20.00)1.试题一()(分数:10.00)_阅读以下说明,回答问题 1-5。说明 设有三个关系: BOOK (BNO,BNAME,PUBLISH_YEAR,PRICE,PRESS) READ(RNO,RNAME,DUTY) BR(BNO,RNO,RETURN_DAY) 试用关系代数表达式表示下列查询语句:(分数:10.00)(1).检索读者号为 01 的读者所借的所有的书名。(分数:2.00)_(2).检索读者 DAVID 没有借的书号。(分
2、数:2.00)_(3).检索在 1988 年以前出版的书名。(分数:2.00)_(4).检索被 DUTY 为老师的读者借出的所有的书名。(分数:2.00)_(5).检索借了书号为 BOOKl 这本书的读者号。(分数:2.00)_二、试题二(总题数:2,分数:16.00)2.试题二()(分数:8.00)_阅读以下说明,回答问题 14。说明 现有某个应用,涉及到两个实体集,相关的属性为: 实体集R(A#,A1,A2,A3),其中 A#为主键 实体集 S(B#,B1,B2),其中 B#为主键 从实体集 R 到 S 存在多对一的联系,联系属性是 D1。(分数:8.00)(1).设计相应的关系数据模型;
3、(分数:2.00)_(2).如果将上述应用的数据库设计为一个关系模式,如下: RS(A#,A1,A2,A3,B#,B1,B2,D1) 指出该关系模式的主键。(分数:2.00)_(3).假设上述关系模式 RS 上的全部函数依赖为:A1A3,指出上述模式 RS 最高满足第几范式?(在1NFBCNF 之内)为什么?(分数:2.00)_(4).如果将上述应用的数据库设计为三个关系模式,如下: R1(A#,A1,A2,A3) R2(B#,B1,B2); R3(A#,B#,D1) 关系模式 R2 是否一定满足第 3 范式?为什么?(分数:2.00)_三、试题三(总题数:2,分数:12.00)3.试题三()
4、(分数:6.00)_阅读以下说明和关系表,回答问题 13。说明 已知关系 R(A,B,C,D) 和函数依赖集 F 为ABD,C,A,DC。(分数:6.00)(1).找出关系 R 的候选键,一共有几个?(分数:2.00)_(2).关系 R 主属性是什么?非主属性是什么?(分数:2.00)_(3).关系 R 是否满足第二范式?第三范式?BCNF 范式?(分数:2.00)_四、试题四(总题数:2,分数:12.00)4.试题四()(分数:6.00)_阅读以下说明和关系表,回答问题 13。 说明 假设现某家庭有存款余额是 500 元,1妈妈存进了200 元,2爸爸又存进了 300 元,其执行的时间如下:
5、 (分数:6.00)(1).能否直接按时间顺序执行事务 1 和 2,为什么?(分数:2.00)_(2).为了实现这两件事情的并发控制,对事务 1 该如何修改?请简要分析。(分数:2.00)_(3).为了实现这两件事情的并发控制,对事务 2 该如何修改?请简要分析。(分数:2.00)_软件水平考试(中级)数据库系统工程师下午(应用技术)试题-试卷 9 答案解析(总分:60.00,做题时间:90 分钟)一、试题一(总题数:2,分数:20.00)1.试题一()(分数:10.00)_解析:阅读以下说明,回答问题 1-5。说明 设有三个关系: BOOK (BNO,BNAME,PUBLISH_YEAR,P
6、RICE,PRESS) READ(RNO,RNAME,DUTY) BR(BNO,RNO,RETURN_DAY) 试用关系代数表达式表示下列查询语句:(分数:10.00)(1).检索读者号为 01 的读者所借的所有的书名。(分数:2.00)_正确答案:(正确答案:BNAME(RN0=01(BOOKD )解析:(2).检索读者 DAVID 没有借的书号。(分数:2.00)_正确答案:(正确答案:BNO(BOOK)-BNO(RNAME=DAVID(READ )解析:(3).检索在 1988 年以前出版的书名。(分数:2.00)_正确答案:(正确答案:RNAME(PUBLIJSH_YEAR1998(B
7、OOK)解析:(4).检索被 DUTY 为老师的读者借出的所有的书名。(分数:2.00)_正确答案:(正确答案:BNAME(BNO(BOOK) -BNO(DUTY=老师 (READD BR)( )解析:(5).检索借了书号为 BOOKl 这本书的读者号。(分数:2.00)_正确答案:(正确答案:RNO(BR)BNO(BSO=BOOKI(BOOK)解析:二、试题二(总题数:2,分数:16.00)2.试题二()(分数:8.00)_解析:阅读以下说明,回答问题 14。说明 现有某个应用,涉及到两个实体集,相关的属性为: 实体集R(A#,A1,A2,A3),其中 A#为主键 实体集 S(B#,B1,B
8、2),其中 B#为主键 从实体集 R 到 S 存在多对一的联系,联系属性是 D1。(分数:8.00)(1).设计相应的关系数据模型;(分数:2.00)_正确答案:(正确答案:R1(A#,A1,A2,A3,B#,D1) R2(B#,B1,B2)解析:(2).如果将上述应用的数据库设计为一个关系模式,如下: RS(A#,A1,A2,A3,B#,B1,B2,D1) 指出该关系模式的主键。(分数:2.00)_正确答案:(正确答案:主键是 A#B#)解析:(3).假设上述关系模式 RS 上的全部函数依赖为:A1A3,指出上述模式 RS 最高满足第几范式?(在1NFBCNF 之内)为什么?(分数:2.00
9、)_正确答案:(正确答案:RS 满足 2NF,不满足 3NF。 因为存在非主属性 A3 对码 A#B#的传递依赖,没有部分函数依赖。)解析:(4).如果将上述应用的数据库设计为三个关系模式,如下: R1(A#,A1,A2,A3) R2(B#,B1,B2); R3(A#,B#,D1) 关系模式 R2 是否一定满足第 3 范式?为什么?(分数:2.00)_正确答案:(正确答案:不一定。 因为 R3 中有两个非主属性 B1 和 B2,有可能存在函数依敕 B1B2,则出现传递依赖 B#B1、B1B2。)解析:三、试题三(总题数:2,分数:12.00)3.试题三()(分数:6.00)_解析:阅读以下说明
10、和关系表,回答问题 13。说明 已知关系 R(A,B,C,D) 和函数依赖集 F 为ABD,C,A,DC。(分数:6.00)(1).找出关系 R 的候选键,一共有几个?(分数:2.00)_正确答案:(正确答案:由自反律,有 ABA,ABB 已知 ABD,DC,由传递关系有 ABC 由上可知,AB 为候选码 由自反律,有 BCB,BCC 又已知 CA,有 BCA BCA,BAD, BBCD,即 BCD 由上可知,BC 也为候选码)解析:(2).关系 R 主属性是什么?非主属性是什么?(分数:2.00)_正确答案:(正确答案:主属性为 A、B、C 非主属性为 D)解析:(3).关系 R 是否满足第
11、二范式?第三范式?BCNF 范式?(分数:2.00)_正确答案:(正确答案:a首先它属于第一范式,这里只有非主属性 D,它完全依赖于 AB 或 BC,不存在部分依赖 满足 2NF b只有一个非主属性 D 不存在非主属性依赖的情况 属于 3NF cCA存在主属性 A 部分依赖于码 BC 它不属于 BCNF)解析:四、试题四(总题数:2,分数:12.00)4.试题四()(分数:6.00)_解析:阅读以下说明和关系表,回答问题 13。 说明 假设现某家庭有存款余额是 500 元,1妈妈存进了200 元,2爸爸又存进了 300 元,其执行的时间如下: (分数:6.00)(1).能否直接按时间顺序执行事
12、务 1 和 2,为什么?(分数:2.00)_正确答案:(正确答案:如果直接按时间顺序执行 1 和 2 两个事务,则最后的 X 为 800,而不是正确1000。 为此,要采用封锁的办法。)解析:(2).为了实现这两件事情的并发控制,对事务 1 该如何修改?请简要分析。(分数:2.00)_正确答案:(正确答案:将 1 事务修改为: WHILE(X 已建立排它锁) 等待 对 X 建立排它锁 读 X 更新 X=X+200 释放排它锁)解析:(3).为了实现这两件事情的并发控制,对事务 2 该如何修改?请简要分析。(分数:2.00)_正确答案:(正确答案:将 2 事务修改为: WHILE(X 已建立排它锁) 等待 对 X 建立排它锁 读 X 更新X=X+300 释放排它锁)解析: