问答题 试题二(15分) 阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。 [说明] 某酒店拟构建一个信息系统以方便酒店管理及客房预订业务运作活动,该系统的部分功能及初步需求分析的结果如下所述: (1)酒店有多个部门,部门信息包括部门号、部门名称、经理、电话和邮箱。每个部门可以有多名员工,每名员工只属于一个部门,每个部门有一名经理,负责管理本部门的事务和员工。 (2)员工信息包括员工号、姓名、职位、部门号、电话号码和工资。职位包括:经理、业务员等,其中员工号唯一标识员工关系中的每一个元组。 (3)客户信息包括客户号、单位名称、联系人、联系电话、联系地址,其中客户号唯一标识客户关系中的每一个元组。 (4)客户要进行客房预订时,需要填写预订申请。预订申请信息包括申请号、客户号、入住时间、入住天数、客房类型、客房数量。其中,一个申请号对应唯一的一个预订申请,一个客户可以有多个预订申请,但一个预订申请对应唯一的一个客户号。 (5)当客户入住时,业务员根据客户预订申请负责安排入住事宜,如入住的客户的姓名、性别、身份证号、电话、入住时间、天数。一个业务员可以安排多个预订申请,但一个预订申请只由一个业务员处理。 概念模型设计 根据需求阶段收集的信息,设计的实体联系图如图2—1所示。
问答题 [问题1](6分) 根据题意,将关系模式中的空(a)~(f)的属性补充完整,并填入答题纸对应的位置上。
【正确答案】 (a)部门号 (b)客户号 (c)申请号 (d)客户号 注:(c)与(d)答案可互换 (e)入住时间 (f)天数 注:(e)与(f)答案可互换
【答案解析】 本题考查数据库系统中实体联系模型(E—R模型)和关系模式设计方面的基础知识。 [问题1] 空(a)分析:部门和员工之间有一个1:n的“所属”联系需要将一端的码并入多端,故员工关系模式中的空(a)应填写部门号。 空(b)分析:在客户关系模式中,客户号唯一标识客户关系的每一个元组,故空(b)应填写客户号。 空(c)、(d)分析:由于预订申请信息包括申请号、客户号、预订入住时间、入住天数、客房类型、客房数量,故空(c)、空(d)应填写申请号、客户号。 空(e)、(f)分析:根据题意,客户入住时,业务员根据客户预订申请负责安排入住事宜,如入住的客户的姓名、性别、身份证号、电话、入住时间、天数。而在安排关系模式中缺少入住时间、天数,故空(e)、(f)应填写入住时间、天数。
问答题 [问题2](4分) 根据题意,可以得出图2—1所示的实体联系图中四个联系的类型,两个实体集之间的联系类型分为三类:一对一(1:1)、一对多(1:n)和多对多(m:n)。请按以下描述确定联系类型并填入答题纸对应的位置上。 客户与预订申请之间的“申请”联系类型为____(g)____; 部门与员工之间的“所属”联系类型为____(h)____; 员工与员工之间的“婚姻”联系类型为____(i)____; 员工、预订申请和客房之间的“安排”联系类型为____(j)____。
【正确答案】 (g) 1:n(或1:*) (h) 1:n (i) 1:1 (j) 1:n:m
【答案解析】 两个实体集之间的联系类型分为三类:一对一(1:1)联系、一对多(1:n)联系和多对多(m:n)联系。 空(g)分析:由于一个客户可以有多份预订申请,但一个预订申请对应唯一的一个客户号,故客户和预订申请之间有一个1:n的“申请”联系。 空(h)分析:根据题意,每名员工只能在一个部门工作,所以部门和员工之间有一个1:n的“所属”联系。 空(i)分析:按照我国婚姻法,员工与员工之间的“婚姻”联系类型为1:1的。 空(j)分析:由于一个业务员可以安排多个预订申请,但一个预订申请只由一个业务员处理;又由于一个预订申请可以申请多个同类型的客房,故业务员、预订申请和客房之间有一个1:n:m的“安排”联系。 根据上述分析,完善图2—1所示的实体联系图如图2—2所示。
问答题 [问题3](5分) 若关系中的某一属性或属性组的值能唯一地标识一个元组,则称该属性或属性组为主键。本题“客户号唯一标识客户关系的每一个元组”,故为客户关系的主键。请指出部门、员工、安排关系模式的主键。
【正确答案】 部门关系模式中的部门号为主键; 员工关系模式中的员工号为主键; 安排关系模式中的主键为客房号,身份证号,入住时间。
【答案解析】 部门关系模式中的部门号为主键,经理为外键,因为经理来自员工关系。 员工关系模式中的员工号为主键,部门号为外键,因为部门号来自部门关系。 安排关系模式的中的主键为客房号,身份证号,入住时间;外键为客房号、业务员。