中级数据库系统工程师2009上半年下午试题、答案及详细解析.docx





《中级数据库系统工程师2009上半年下午试题、答案及详细解析.docx》由会员分享,可在线阅读,更多相关《中级数据库系统工程师2009上半年下午试题、答案及详细解析.docx(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 第16章 数据库系统工程师下午试题分析与解答 试题一 阅读以下说明,答复以下问题1和问题2,将解答填入答题纸的对应栏内。 说明 假设某大型商业企业由商品配送中心和连锁超市组成,其中商品配送中心包括选购, 财务, 配送等部门。为实现高效管理,设计了商品配送中心信息管理系统,其主要功能描述如下: 1系统接收由连锁超市提出的供货恳求,并将其记录到供货恳求记录文件。 2在接到供货恳求后,从商品库存记录文件中进展商品库存信息查询。假如库存满意供货恳求,那么给配送处理发送配送通知:否那么,向选购部门发出缺货通知。 3配送处理接到配送通知后,查询供货恳求记录文件,更新商品库存记录文件,并向配送部门发送配送
2、单,在配送货品的同时记录配送信息至商品配送记录文件。 4选购部门接到缺货通知后,与供货商洽谈,进展商品选购处理,合格商品入库,并记录选购清单至选购清单记录文件, 向配送处理发出配送通知,同时通知财务部门给供货商支付货款。 该系统采纳构造化方法进绽开发,得到待修改的数据流图(如图1-1所示)。 问题1 运用说明中的词语,给出图1-1中外部实体E1至E4的名称和数据存储D1至 D4的名称。 问题2图1-1中存在四处错误数据流,请指出各自的起点和终点;假设将上述四条错误数据流删除,为保证数据流图的正确性,应补充三条数据流,请给出所补充数据流的起点和终点。(起点和终点请采纳数据流图1-1中的符号或名称
3、)错误数据流补充的数据流 试题一分析 此题考察DFD的分析与设计,问题一主要考察DFD中的外部实体和数据存储,由于在题干中已经提到“系统接收由连锁超市提出的供货恳求,并将其记录到供货恳求记录文件,因此可以明确出“连锁超市外部实体和“供货恳求记录文件数据存储:对应到DFD图中为E3和D4。描述中的第二项提出“从商品库存记录文件中进展商品库存信息查询。假如库存满意供货恳求,那么给配送处发送配送通知;否那么,向选购部门发出缺货通知,因为配送通知须要发送到选购部门,因此选购部门将成为系统的外部实体;同时,商品库存记录文件能够供应库存信息,所以DFD图中E2和D2分别为选购部门和商品配送记录文件。第三项
4、需求“配送处理接到配送通知后,查询供货恳求记录文件,更新商品库存记录文件,并向配送部门发送配送单,在配送货品的同时记录配送信息至商品配送记录文件,所以配送处理须要查询供货恳求记录文什,更新商品库存记录文件与商品配送记录文件,因此D3为商品配送记录文件:选购处理须要记录选购清单同时通知财务部门,所以E1应当为财务部门,D1为选购清单记录文件,剩下的E4那么为配送部门。 DFD中出现的错误数据流为:E1到E2,E1与E2的数据流不属于系统的范围:D3到E4,多余的数据流;D2到选购处理,数据流方向错误;D4到供货恳求处理,数据流方向错误。 须要补充的数据流为:E2到选购处理,因为E2是选购部门,选
5、购部门须要给选购处供应入库商品信息;选购处到D2须要一条数据流,因为选购处理须要更改库存信息;供货恳求处理到D4须要一条数据流,因为供货恳求处理须要记录供货恳求信息。 参考答案 问题1 E1:财务部门 E2:选购部门 E3:连锁超市 E4配送部门 D1:选购清单记录文件 D2:商品库存记录文件 D3商品配送记录文件 D4:供货恳求记录文件问题2错误数据流补充的数据流 试题二 阅读以下说明,答复以下问题1至问题3,将解答填入答题纸的对应栏内。 说明 某网上书店后台数据库的局部关系模式如下: 会员(会员编号,用户名,密码,姓名;地址, , ,消费额,积分) 图书(图书编号,类型名称,图书名称,作者
6、,出版社,出版日期,ISBN,价格) 订单(订单编号,用户名,销售额,订购日期,出货日期) 订单明细(订单明细编号,订单编号,图书编号,数量) 问题1 下面是创立订单关系的SQL语句,订单编号唯一识别一个订单,用户名为订购图书的会员用户名,且不能为空。要求订购日期不能大于出货日期。请将空缺局部补充完整。 CREATE TABLE 订单( 订单编号 CHAR(6) (a) 用户名VARCHAR(40)NOT NULL (b) , 销售额FLOAT, 订购日期DATE NOT NULL, 出货日期DATE (c) ); 问题2 请完成以下查询的SQL语句。 (1)查询名称中包含“数据库的图书的图书
7、名称,作者,出版社和出版日期。 SELECT (d) FROM 图书 WHERE 图书名称 (e) ; (2)查询供应销售(图书表中有)但没有销售过(没在订单明细表中出现)的图书名称和出版社。 SELECT 图书名称,出版社 FROM 图书 WHERE NOT EXISTS ( SELECT (f) FROM 订单明细 WHERE (g) ); (3)查询订购图书数量最多的会员名及其订购的数量。 SELECT 用户名, (h) FROM订单,订单明细 WHERE (i) GROUP BY 用户名 HAVING (j) (SELECT SUM (数量) FROM 订单,订单明细 WHERE 订单
8、.订单编号=订单明细订单编号 GROUP BY 用户名); (4)为了统计会员的购置行为信息,实施有意义的客户关切策略,查询会员的平均订购间隔时间,考虑屡次购置图书和一次购置图书的状况(其中,DATEDIFF函数表示两个日期之间的天数)。 SELECT 用户名,CASE WHEN (k) THEN DATEDIFF (MAX (订购日期),MIN (订购日期) / (1) ELSE DATEDIFF(CURRENT_TIMESTAMP,MIN(订购日期) END AS AVG GAP FROM 订单 (m) ; 问题3 会员订购图书后,将本次订购的销售额累加到该会员的消费额中,并依据本次订单的
9、销售额计算积分累加到该会员的积分中(每20元增加1个积分,缺乏20元不计入积分)。下面用触发器实现该需求,请填充空缺局部。 CREATE TRIGGER会员积分TRIGGER AFTER (n) REFERENCING NEW ROW AS NROW BEGIN UPDATE会员 SET消费额=消费额+NROW.销售额, (o) WHERE用户名=NROW用户名 END 试题二分析 此题考核SQL语言的应用。 问题1 此题考察关系模型的完整性约束。完整性约束包括三类:实体完整性, 参照完整性和用户定义的完整性。实体完整性约束规定关系的主属性不能取空值,关系模型中以主码作为唯一性标示。(a)考核
10、的是实体完整性,订单编号是订单关系的主键,用PRIMARY KEY关键字,也可用NOT NULL UNIQUE 或UNIQUE NOT NULL来保证一个订单标号唯一识别一个订单:参照完整性约束规定假设属性(或属性组)A是关系R上的主码,B是关系S上的外码,A与B相对应(来自一样的域),那么B取值为空或者来自于R上的某个A的值。(b)考察参照完整性,用户名属性对应于会员关系的用户名属性,定义语法为REFERENCES会员(用户名),由于两个关系中的属性名一样,因此也可以用 REFERENCES会员定义;用户定义的完整性约束是针对详细的数据库应用而定义的,它反映该应用所涉及的数据必需满意用户定义
11、的语义要求。(c)考察用户定义的完整性约束,要求出货日期必需大于等于订购日期,因此答案为CHECK(订购日期=出货日期) 或C0ONSTRAINT chk date CHECK(订购日期=出货日期),此处,chk date可以为其他的约束名。 问题2 此题考察查询语句SELECT的语法,查询是SQL的重要内容。 (1)考察根本的SQL查询语法,SELECT后是要查询的属性,查询条件是包含“数据库的图书,因此用LIKE关键字。 (2)考察NOTEXISTS语法,(f)处填。该查询为相关查询,因此(g)处的条件为图书.图书编号=订单明细.图书编号。 (3)考察较困难的嵌套查询, 分组查询和ALL关
12、键字。子查询得到全部会员的订购数,题目要求查询订购数最多的会员名和订购数,因此(j)的答案为SUM(数量)=ALL。 (4)考察分组查询, 聚集函数和CASE语法。平均订购间隔时间对一次购置和屡次购置的会员有不同的计算方式,对一次购置的会员,平均订购时间为当前时间订购时间;而对于屡次购置的会员,平均订购时间为(最晚的订购时间最早的订购时间)/间隔数,间隔数为订购数-1。 问题3 此题考察SQL的触发器机制。触发器是通过事务触发而执行的,事务指的是对某个关系的插入, 删除或更新。当触发器被事务激活时,并不是马上执行,而是检测触发器的条件,假设条件满意那么执行触发器定义的动作。因此,创立一个触发器
13、时,必需指定:触发器名称, 在其上定义触发器的关系(表), 触发器将何时激发, 触发器执行时应作的动作。此题中触发器定义的事务为会员订购图书,即插入一个订单记录,因此(n)的答案为INSERT ON订单。执行的动作是累加会员的消费额,并依据规那么把本次订单的销售 额计算为积分,更新会员的积分,因此(o)的答案为积分=积分+INT(NROW.销售额/20)。 参考答案 问题1 (a) PRIMARY KEY 或 NOT NULL UNIQUE 或 UNIQUE NOT NULL (b) REFERENCES会员(用户名)或REFERENCES会员 (c) CHECK(订购日期=出货日期)或 CO
14、NSTRAINT chk date CHECK(订购日期=出货日期) (注:chk date可为其他名称) 问题2 (1)(d)图书名称,作者,出版社,出版日期 (e)LIKE%数据库% (2)(f)* (3)(h)SUM(数量) (j) SUM(数量)=ALL (4)(k)COUNT(*)1 (l)(COUNT(*)-1或COUNT(*)也给分 (m)GROUP BY 用户名 问题3 (n)INSERT ON订单 (o)积分=积分+INT(NROW.销售额/20) 试题三 阅读以下说明,答复以下问题1至问题3,将解答填入答题纸的对应栏内。 说明 某集团公司拥有多个大型连锁商场,公司须要构建一
15、个数据库系统便于管理其业务运作活动。 需求分析结果 1商场须要记录的信息包括商场编号(商场编号不重复), 商场名称, 地址和联系 。某商场信息如下表1所示。 2每个商场包含不同的部门,部门须要记录的信息包括部门编号(不同商场的部门编号不同), 部门名称, 位置分布和联系 。某商场的部门信息如表2所示。 表1 部门信息表 商场编号部门名称位置分布联系 DT002财务部商场大楼六层DT007后勤部商场地下副一层DT021安保部商场地下副一层DT005人事部商场大楼六层DT021管理部商场裙楼三层 3每个部门雇用了多名员工处理日常事务,每名员工只能属于一个部门(新进员工在培训期不隶属于任何部门)。员
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中级 数据库 系统 工程师 2009 上半年 下午 试题 答案 详细 解析

限制150内