阅读下列说明,回答问题1至问题4,将解答填入对应栏内。【说明】某汽车维修站拟开发一套小型汽车维修管理系统,对车辆维修情况进行管理。1.对于新客户及车辆,汽车维修管理系统首先登记客户信息,包括:客户编号、客户名称、客户性质(个人、单位)、折扣率、联系人、联系电话等信息:还要记录客户车辆信息,包括:车牌号、车型、颜色等信息。一个客户至少有一台车。客户及车辆信息如表2-1所示。表2-1 客户及车辆信息
2.记录维修车辆故障信息,包括:维修类型(普通、加急)、作业分类(大、中、小修)、结算方式(自付、三包、索赔)等信息。维修厂员工分为:维修员和业务员。车辆维修首先委托给业务员。业务员对车辆进行检查和故障分析后,与客户磋商,确定故障现象,生成维修委托书。如表2-2所示。表2-2 维修委托书
3.维修车间根据维修委托书和车辆故障现象,在已有维修项目中选择并确定一个或多个具体维修项日,安排相关维修工及工时,生成维修派工单。维修派工单如表2-3所示。表2-3 维修派工单
4.客户车辆在车间修理完毕后,根据维修项目单价和维修派工单中工时计算车辆此次维修总费用,记录在委托书中。根据需求阶段收集信息,设计实体联系图(图2-1)和关系模式(不完整)如下所示。图2-1中业务员和维修工是员工子实体。[概念结构设计]
[逻辑结构设计]客户( 5 ,折扣率,联系人,联系电话)车辆(车牌号,客户编号,车型,颜色,车辆类别)委托书( 6 ,维修类型,作业分类,结算方式,进厂时间,预计完工时间,登记日期,故障描述,总费用)维修项目(维修项目编号,维修项目,单价)派工单( 7 ,工时)员工( 8 ,工种,员工类型,级别)5、【问题1】根据问题描述,填写图2—1中(1)~(4)处联系类型。联系类型分为一对一、一对多和多对多三种,分别使用1:1,1:n或1:*,m:n或*:*表示。6、【问题2】补充图2—1中联系并指明其联系类型。联系名可为:联系1,联系2,…7、【问题3】根据图2-1和说明,将逻辑结构设计阶段生成关系模式中空(5)~(8)补充完整。8、【问题4】根据问题描述,写出客户、委托书和派工单这三个关系主键。
5、(1)* (或n或m)(2)1(3)* (或n或m)(4)* (或n或m)
6、
7、(5)客户编号,客户名称,客户性质(6)委托书编号,客户编号,车牌号,业务员编号或:委托书编号,车牌号,业务员编号(7)委托书编号,维修工编号,维修项目编号(8)员工编号,员工姓名 8、 客户:客户编号委托书:委托书编号派工单:委托书编号,维修项目编号,维修工编号
【解析】
试题二[分析]本题考查数据库设计,属于比较传统题目,考查点也与往年类似。问题1、问题2考查是数据库概念结构设计,题目要求补充完整实体联系图中联系和联系类型。根据题目需求描述和表2-1中数据可知,一个客户至少拥有一台车,每台车辆有一个对应客户。所以,客户实体和车辆实体之间存在“拥有”联系,联系类型为一对多(1:*)。根据题目需求描述和表2-2中数据可知,一份委托书由一个业务员负责接受委托,一个业务员可以负责多份委托书。所以,业务员实体和委托书实体之间存在“委托”联系,联系类型为一对多(1:*)。根据题目需求描述和表2-3中数据可知,一份委托书可以对应多个维修项目和维修员工,一个维修项目可能涉及多个维修工,一个维修工可以参与多个维修项目。因此,维修派工单信息涉及三个实体,是由三个实体相互联系而形成。所以,委托书实体和维修工实体之间存在“派工”联系,联系类型为一对多(1:*),维修项目实体和维修工实体之间存在“派工”联系,联系类型为多对多(*:*)。问题3考查是数据库逻辑结构设计,题目要求补充完整各关系模式,并给出各关系模式主键。根据实体联系图和表2-1数据,对于“客户”关系模式需补充属性:客户编号、客户名称、客户性质。根据实体联系图和表2-1数据,对于“车辆”关系模式,由于车辆实体与客户实体有联系,需记录对应客户信息,并且车辆有自己属性——车牌号,因此,“车辆”关系模式需补充属性:车牌号、客户编号。根据实体联系图和表2-2数据,对于“委托书”关系模式,由于车辆实体与委托书实体和业务员实体都有联系,需记录对应车辆和业务员信息,并且委托书有自己属性——委托书编号,因此,“委托书”关系模式需补充属性:委托书编号、车牌号、业务员编号。根据实体联系图和表2-3数据,“派工学—”关系模式记录是委托书、维修项目和维修工三个实体之间联系,因此,“派工单”关系模式需补充属性:委托书编号、维修项目编号、维修员编号。根据实体联系图和表2-1数据,对于“员工”关系模式需补充属性:员工编号、员工姓名。问题4为指定给定关系模式主键,显然,管理客户数据时,应为每位客户设置唯一编码,因此客户关系模式主键为“客户编号”,类似,委托书关系模式主键为“委托书编号”。根据E-R图中派工联系与相关实体关系,派工单关系模式主键为“委托书编号,维修项目编号,维修员编号”。