问题 问答题

[说明]


某宾馆拟开发一个宾馆客房预订子系统,主要是针对客房的预订和入住等情况进行管理。

[需求分析]


(1) 员工信息主要包括:员工号、姓名、出生年月、性别、部门、岗位、住址、联系电话和密码等信息。岗位有管理和服务两种。岗位为“管理”的员工可以更改(添加、删除和修改)员工表中本部门员工的岗位和密码,要求将每一次更改前的信息保留;岗位为“服务”的员工只能修改员工表中本人的密码,且负责多个客房的清理等工作。
(2) 部门信息主要包括:部门号、部门名称、部门负责人和电话等信息。一个员工只能属于一个部门,一个部门只有一位负责人。
(3) 客房信息包括:客房号、类型、价格和状态等信息。其中类型是指单人间、三人间、普通标准间和豪华标准间等,状态是指空闲、入住和维修。
(4) 客户信息包括:身份证号、姓名、性别、单位和联系电话。
(5) 客房预定情况包括:客房号、预定日期、预定入住日期、预定入住天数和身份证号等信息。一条预定信息必须且仅对应一位客户,但一位客户可以有多条预定信息。

[概念模型设计]


根据需求阶段收集的信息,设计的实体联系图(不完整)如图8-3所示。


[逻辑结构设计]


逻辑结构设计阶段设计的部分关系模式(不完整)如下。
员工( (4) ,姓名,出生年月,性别,岗位,住址,联系电话,密码)
权限(岗位,操作权限)
部门(部门号,部门名称,部门负责人,电话)
客厉( (5) ,类型,价格,状态,入住日期,入住时间,员工号)
客户( (6) ,姓名,性别,单位,联系电话)
更改权限(员工号, (7) ,密码,更改日期,更改时间,管理员号)
预定情况( (8) ,预定日期,预定入住日期,预定入住天数)
1. 根据问题描述,填写图8-3中的(1)~(3)空缺处联系的类型。联系类型分为一对一、一对多和多对多3种,分别使用1:1,1:n或1:*,m:n或*:*表示。

答案

参考答案:(4)员工号,部门号
(5) 客房号
(6) 身份证号
(7) 岗位
(8) 客房号,身份证号

解析:
主键也称为主码,是关系中的一个或一组属性,其值能唯一标识一个元组。
对于逻辑结构设计阶段已给出关系模式:部门(部门号,部门名称,部门负责人,电话),由常识可知,该模式的主键应该为“部门号”。由题干中的关键信息“员工信息主要包括:员工号、姓名、出生年月、性别、部门、岗位、住址、联系电话和密码等信息”及常识可知,关系模式“员工”的主键为“员工号”。结合[问题1]的分析结果,实体部门和员工之间存在一个“一对多”的联系。对于类型为“一对多”的联系向关系模式转换时,通常将其与多端的实体对应的关系模式合并,即将一端实体的主键和联系上的属性合并到多端实体的关系模式中。因此应在关系模式“员工”中添加“部门号”这一外键,即(4)空缺处所需填补的内容是“员工号,部门号”。
由题干中的关键信息“客房信息包括:客房号、类型、价格和状态等信息”和“客户信息包括:身份证号、姓名、性别、单位和联系电话”可知,逻辑结构设计阶段的关系模式为“客房”、“客户”和“预定情况”,结合[问题1]的分析结果——实体客户和客房之间存在“多对多”的联系,且由于多对多联系向关系模式转换时只能转换成一个独立的关系模式,关系模式的名称取联系的名称,关系模式的属性取该联系所关联的两个多方实体的主键及联系的属性,关系的主键是多方实体的主键构成的属性组。因此(5)空缺处只需填补标识关系模式“客房”主键的“客房号”,(6)空缺处只需填补标识关系模式“客户”主键的“身份证号”,(8)空缺处需要填补标识关系模式“预定情况”主键的“客房号”和“身份证号”。
结合[问题2]的分析结果——实体员工和权限之间存在的是“多对一”的联系,根据E-R模型中一对多联系向关系模式转换规则可知,一个一对多的联系可以转换为一个独立的关系模式,也可以与多端的关系模式合并,本试题中是将实体员工和权限之间的联系转换为一个独立的关系模式“更改权限”。由题干中的关键信息“岗位为‘管理’的员工可以更改(添加、删除和修改)员工表中的本部门员工的岗位和密码,要求将每一次更改前的信息保留”可知,(7)空缺处所需填补的内容是“岗位”。
综上所述,逻辑结构设计阶段设计的关系模式如下。
[*]
其中,键名底部以双下画线标识的是主键,键名底部以波浪线标识的是外键。

判断题
选择题