反馈
问题:
阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。<br/><br/> 【说明】<br/>某宾馆为了有效地管理客房资源,满足不同客户需求,拟构建一套宾馆信息管理系统,以方便宾馆管理及客房预订等业务活动。<br/><br/> 【需求分析结果】<br/><br/> 该系统的部分功能及初步需求分析的结果如下:<br/><br/> (1) 宾馆有多个部门,部门信息包括部门号、部门名称、电话、经理。每个部门可以有多名员工,每名员工只属于一个部门;每个部门只有一名经理,负责管理本部门。<br/><br/> (2) 员工信息包括员工号、姓名、岗位、电话、工资,其中,员工号唯一标识员工关系中的一个元组,岗位有经理、业务员。<br/><br/> (3) 客房信息包括客房号(如1301、1302等)、客房类型、收费标准、入住状态(已入住/未入住),其中客房号唯一标识客房关系中的一个元组,不同客房类型具有不同的收费标准。<br/><br/> (4) 客户信息包括客户号、单位名称、联系人、联系电话、联系地址,其中客户号唯一标识客户关系中的一个元组。<br/><br/> (5) 客户预订客房时,需要填写预订申请。预订申请信息包括申请号、客户号、入住时间、入住天数、客房类型、客房数量,其中,一个申请号唯一标识预订申请中的一个元组;一位客户可以有多个预订申请,但一个预订申请对应唯一的一位客户。<br/><br/> (6) 当客户入住时,业务员根据客户的预订申请负责安排入住客房事宜。安排信息包括客房号、姓名、性别、身份证号、入住时间、天数、电话,其中客房号、身份证号和入住时问唯一标识一次安排。一名业务员可以安排多个预订申请,一个预订申请只由一名业务员安排,而且可安排多间同类型的客房。<br/><br/> 【概念模型设计】<br/><br/> 根据需求阶段收集的信息,设计的实体联系图如图1-1所示。<br/><br/> <img style='width:100%;' src="https://files.lightsoft.tech/rkfiles/ruankao_work_version_0103/userfile/image/xt-dzsw-16-x-x-1-1.png"><br/><br/> 【关系模式设计】<br/><br/> 部门(部门号,部门名称,经理,电话)<br/><br/> 员工(员工号,(a),姓名,岗位,电话,工资)<br/><br/> 客户((b),联系人,联系电话,联系地址)<br/><br/> 客房(客房号,客房类型,收费标准,入住状态))<br/><br/> 预定申请((c),入住时间,天数,客房类型,客房数量)<br/><br/> 安排(申请号,客房号,姓名,性别,(d),天数,电话,业务员)
选项 :
【问题:1.1】根据问题描述,补充四个联系,完善图1-1的实体联系图。联系名可用联系1、联系2、联系3和联系4代替,联系的类型为1:1、1:n和m:n(或者1:1、1:*和*:*)。
选项 :
【问题:1.2】(1)根据题意,将关系模式中的空(a)~(d)补充完整,并填入答题纸对应的位置上。<br/> (2)给出“预订申请”和“安排”关系模式的主键和外键。
选项 :
【问题:1.3】【关系模式设计】中的“客房”关系模式是否存在规范性问题,请用100字以内文字解释你的观点(若存在问题,应说明如何修改“客房”关系模式)。
答案:
解析:
完善后的实体联系图如下所示(所补充的联系和类型如虚线所示):<br/><img style='width:100%;' src="http://files.lightsoft.tech/rkfiles/ruankao_work_version_0103/userfile/image/xt-dzsw-16-x-x-1-3.png"><br/>本题考查数据库系统中实体联系模型(E-R模型)和关系模式设计方面的基础知识。<br/>①根据题意“每个部门可以有多名员工,每名员工只属于一个部门”,所以部门和员工之间有一个“所属”联系,联系类型为1:*。<br/>②根据题意“每个部门有一名经理,只负责管理本部门的事务”,所以部门和经理之间有一个“负责”联系,联系类型为1:1。<br/>③根据题意—个客户可以有多个预订申请,但一个预订申请对应唯一的一个客户号”,所以客户和预订申请之间有一个“预订”联系,联系类型为1:*。<br/>④根据题意“一个业务员可以安排多个预订申请,一个预订申请只由一个业务员安排,而且可安排多个同类型的客房。”,即一份预订申请可以预订多间同类型的客房,所以业务员与客房和预订申请之间的“安排”联系类型为1:*:*。<br/>根据上述分析,完善图1-1所示的实体联系图如图1-2所示。<br/><img style='width:100%;' src="http://files.lightsoft.tech/rkfiles/ruankao_work_version_0103/userfile/image/xt-dzsw-16-x-x-1-2.png"> <br/>(1) <br/>(a)部门号<br/>(b)客户号,单位名称<br/>(c)申请号,客户号<br/>(d)身份证号,入住时间<br/>(2) <br/>“预订申请”关系模式:<br/>主键为申请号<br/>外键为客户号<br/>“安排”关系模式:<br/>主键为客房号,身份证号,入住时间<br/>外键为申请号,客房号,业务员<br/>由于部门和员工之间有一个1:*的“所属”联系需要将一端的码“部门号”并入多端,故员工关系模式中的空(a)应填写“部门号”。<br/>根据题意,客户信息包括客户号、单位名称、联系人、联系电话、联系地址,给定的客户关系模式中,不含客户号、单位名称,故空(b)应填写“客户号,单位名称”。<br/>由于预订申请信息包括申请号、客户号、预订入住时间、入住天数、客房类型、客房数量,故空(c)应填写“申请号,客户号”。<br/>根据题意“客房号、身份证号和入住时间唯一标识安排联系的每一个元组”,所以空(d)应填写“身份证号,入住时间”。<br/>根据题意,“一个申请号对应唯一标识预订申请中的每一个元组”,所以预订申请关系模式的主键为申请号;又因为客户号是客户关系的主键,根据外键定义可知,客户号是预订申请关系的外建。<br/>根据题意“客房号、身份证号和入住时间唯一标识安排联系的每一个元组”,所以安排关系模式的主键为客房号,身份证号,入住时间;外键为申请号,客房号,业务员,因为申请号和客房号为预约申请和客房关系的主键,而“业务员”是员工关系子实体必须参考员工关系的主键“员工号”,所以业务员也是外键。 <br/>存在问题<br/>关系模式存在传递依赖,没有达到3NF<br/>应将客房关系模式分解为客房1(客房号,客房类型,入住状态)客房2(客房类型,收费标准)<br/>客房关系模式存在问题。因为,客房号为主键,所以客房号可以决定全属性,即客房号→(客房类型,收费标准,入住状态)。又因为客房类型→收费标准,所以该关系模式存在传递依赖,没有达到3NF,应将客房关系模式分解为客房1(客房号,客房类型,入住状态),客房2(客房类型,收费标准)。 <br/>