酒店管理系统数据库设计推荐.docx
《酒店管理系统数据库设计推荐.docx》由会员分享,可在线阅读,更多相关《酒店管理系统数据库设计推荐.docx(29页珍藏版)》请在冰豆网上搜索。
![酒店管理系统数据库设计推荐.docx](https://file1.bdocx.com/fileroot1/2023-2/9/77eaa709-7d23-499e-82af-6a06c164e406/77eaa709-7d23-499e-82af-6a06c164e4061.gif)
酒店管理系统数据库设计推荐
酒店管理系统
、背景说明
目前大多数酒店提供的服务多种多样,规模大小也各不相同,但稍具规模的酒店必含下面三类服务:
饮食、住宿和娱乐。
由于我们对酒店行业没有具体的接触和实质性的了解。
此次数据库设计只能在一些收集到的基本材料与个人直观认识的基础上,简单模仿中等规模的酒店设计管理系统,并将其抽象成一个由三部门组成、实现三大服务的系统。
、部门的划分
1.饮食部门
它是酒店基本部门之一。
它提供服务的特点是实时性强、持续时间短,强调效率。
例如,顾客人数、顾客所用的菜及其它饮料等种类繁多,数量不等;后勤各种活动如采购等频繁发生。
通过分析可发现,用人工完成此类操作比计算机更具实效与时效,且此类信息也没有长时间保留的必要,因此这些信息没有必要采用数据库管理。
对于饮食部门,需要较长时间保留的信息主要是财务信息,一方面便于期末汇总,另一方面便于向上级报告。
在规模较大的酒店餐饮服务部分,餐厅可分成几个等级或几个小部门,然后各自形成小系统,本系统为了简单起见,把饮食部门作为一个子系统,不再细分。
2.住宿管理部门
它也是酒店基本部门之一。
住宿管理部门的主要职责有:
A.给个房间布置各种设备、分类、编号、制定收费标准、分配服务人员。
B.登记旅客信息,确认其身份,登记其入住、退房时间。
C.统计各类房间的客满程度。
D.对本部门的财务流动进行登记处理。
以上信息处理可以通过计算机完成,其他不便于计算机操作的在此没有列出。
3.娱乐管理部门
娱乐是酒店非主流服务,它的存在除了赢利,更多的是为了吸引顾客食宿。
娱乐部门的特点与饮食部门很相似,不便于使用计算机进行操作。
可以用计算机完成并且有必要用计算机完成的有:
A.制定收费标准,分配负责人.B.收入支出财务处理:
编号、财务来源去处的摘要、数量、单价、数额、结余、经手人等。
这些信息都需要长时间保留并上报。
4.经理部门
经理部门的功能虽然不是面向顾客、不是酒店的服务项之一,但它的存在却是必不可少的。
它的主要职责有:
A.管理员工。
给员工编号,登记其基本信息;根据员工的平时表现及工龄确定工资;此外,还要给员工分配工作部门及职务等等。
B.划分部门。
给个部门编号、命名、确定其职责范围、任命部门经理、分配员工。
C.对本部门的财务进行核算(支付工资等)。
D.期末对酒店的收益情况进行核算。
、各子系统的功能
虽然酒店按功能可以划分成四个部门,但是饮食部门的大部分工作手工操作比计算机操作更具有效率,如上所述,便于电脑操作只有财务处理。
在划分子系统时,考虑到各子系统都有各自的财务处理,且有相似性,所以就把它们归为统一的一个“财务子系统”。
同时“饮食子系统”取消,因为它的所有需要涵盖的功能都已包含在“财务子系统”中。
因此系统共划分为四部分:
总经理子系统、财务子系统、住宿子系统和娱乐子系统。
1.总经理子系统
A.对新来的员工进行编号、登记、分配工作。
{员工号、姓名、性别、年龄、工龄、级别、部门号、职务、其他备注}
B.对于被辞退的员工从系统中级联删除其信息,如从员工表中删除其基本信息,从它所服务的工作部门中删除该员工的工作名额,结算支付其工资、奖金;同时补充新的员工,代替它的工作。
C.对新增部门作各种初始工作。
如编号、命名、任命经理等。
{部门号、名称、部门经理、员工数量}
D.取消某个部门时,核算该部门的财务情况,并作备份;同时对该部门的员工重新分配工作。
E.其他情况的处理。
2.财务子系统
A.每天的收入、支出登记
{编号、发票号、摘要、数量、单位、数额、经手人、日期}
B.期末各子系统的财务汇总
{编号、上月余额、总收入、总支出、余额、经手人、日期}
C.期末酒店汇总个部门的财务报表,结算本酒店收益
(编号、部门号、部门名称、收入、支出、净收入、经手人、日期)
3.住宿子系统
A.来客登记
若多人住同一房间,只作一个记录。
客人信息{房间号、房间类别、客人数量、联系人名、身份、证件名称(类型)、证件号码、入住时间、退出时间}
B.房间管理收费标准
旅客入住(旅客退出)除了登记(删除)客人信息之外,还应对相关的记录进行修改,如房间的状态等。
房间类别{类别号、名称、设备、、总数量、剩余量、管理人员}
房间{房间号,房间类型、状态}
(该部门的财务处理与饮食子系统同,归到财务子系统)
4.娱乐子系统
A.添加新的娱乐项目
娱乐项目{娱乐项目号、名称、收费标准、负责人}
B.取消某娱乐项目
(财务处理(同饮食子系统)归到财务子系统)
、数据字典
1.数据项
数据项有待按各子系统分类列表。
编号
数据项名称
说明部分
编号
数据项名称
说明部分
1
员工号
整数类型;有唯一性
2
姓名
文本类型长度为10字符
3
性别
枚举类型:
男、女
4
年龄
整数类型18…100
5
工龄
整数类型0…100
6
部门号
数字串类型;有唯一性
7
名称
文本类型
8
职务
枚举类型;根据公司的制定而定
9
级别号
整数类型
10
级别名
文本
11
工资
整数类型
12
部门经理
参照“员工号“
13
负责人
参照“员工号“
14
经手人
参照“员工号“
15
员工数量
整数类型
16
房间类型
枚举类型如单人、双人标准间等
17
设备
文本说明设备情况
18
收费标准
不同的实体有不同的单位
19
总数量
某一等级的房间的数量
20
剩余量
某一等级房的尚可用数
21
房间号
数字串类型有唯一性
22
状态
该房是否已被入住枚举类型
23
客人数量
某一房间所住的人数
24
身份
登记旅客的目前住址
25
证件类型
文本类型
26
证件号码
整数类型
27
入住时间
格式:
**/**
28
退出时间
格式:
**/**
29
编号
在各系统有不同意义,唯一
30
发票号
按固定格式输入
31
摘要
收入支出来源去向的摘要
32
数量
整数类型
33
单价
不同的系统有不同的单位
34
备注
文本类型
35
日期
格式:
**/**
2.数据结构
编号
数据结构名
属性
1
员工信息
员工号、姓名、性别、年龄、工龄、级别、部门、职务、备注
2
部门
部门号、名称、部门经理、员工数量
3
酒店财务总汇
编号、部门号、名称、收入、支出、净利、日期、经手人、备注
4
部门营业情况
编号、发票号、摘要、单价、数量、数额、日期、经手人、备注
5
房间类别
类别号、名称、设备、收费标准、总数量、剩余量、管理人员
6
房间
房间号、房间类别、状态
7
客人信息
房间号、客人数量、联系人名、身份、证件类型、证件号码、入住时间、退出时间、备注
8
娱乐项目
编号、名称、收费标准、负责人
3.数据流
编号
数据流名
输入
输出
1
员工基本信息
招新员工
员工信息
2
工资结算
员工信息
总经理处财务支出
3
当前员工工作
员工信息
调配工作
4
员工新工作
调配工作
员工信息
5
“辞工”信息
辞老员工
调配工作
6
部门基本信息
部门信息
调配工作
7
更新后的部门信息
调配工作
部门信息
8
新部门基本信息
新增部门
调配工作
9
老部门信息
取消老部门
调配工作
10
顾客基本信息
来客登记
顾客信息
11
顾客需求
住房登记
调配住房
12
满足顾客要求
调配住房
顾客信息
13
顾客住房信息
顾客信息
调配住房
14
目前住房信息
住房信息
调配住房
15
更新后的住房信息
调配住房
住房信息
16
住房单价
住房信息
住宿管理部门收入
17
住房数量
调配住房
住宿管理部门收入
18
新娱乐项目信息
添加新项目
娱乐项目信息
19
老娱乐项目信息
取消老项目
娱乐项目信息
20
数额
娱乐管理部门收入
娱乐管理部门信息
21
项目单价
娱乐项目信息
娱乐管理部门收入
22
支出情况
子部门支出
子部门财务信息
23
收入情况
子部门收入
子部门财务信息
24
部门营业情况
子部门财务信息
酒店财务总汇信息
4.数据存储
数据存储名
输入数据流
输出数据流
说明部分
员工信息
员工基本信息
员工新工作
工资结算
当前员工工作
部门信息
更新后的部门信息
当前部门信息
经理处财务信息
经理处财务支出
经理处财务收入
部门营业情况
顾客信息
顾客基本信息
满足顾客要求
住房信息
更新后的住房信息
目前的住房信息
住房单价
娱乐项目信息
新娱乐项目信息
老娱乐项目信息
娱乐项目单价
子部门财务信息
收入情况
支出情况
部门营业情况
酒店财务总汇信息
部门营业情况
5.处理过程
处理过程名
输入数据流
输出数据流
说明部分
招新员工
终端
员工基本信息
辞老员工
终端
员工基本信息
调配工作
当前员工工作
员工基本信息
当前部门基本信息
员工新工作
更新后的部门信息
增新部门
终端
部门基本信息
取消部门
终端
部门基本信息
部门营业结算
来客登记
终端
顾客基本信息
顾客需求
顾客离开
终端
注销住房
调配住房
顾客需求
注销住房
目前住房信息
更新后的住房信息
住房数量
满足顾客要求
住宿管理部门收入
住房数量
住房单价
添加新项目
终端
新项目信息
取消老项目
终端
老项目信息
娱乐管理部门
娱乐项目单价
部门收入
终端
收入情况
部门支出
终端
支出情况
概念结构设计过程
本公司开发酒店管理系统,经过可行性分析、详细调查以及多次讨论,确定了该系统由娱乐管理部门、经理管理部门、宿舍管理部门和财务管理部门四个子系统组成。
本过程结构设计过程采用自底向上的设计方法,即首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构.
下面给出各个子系统的分析及分E-R图的设计及对其进行的各项调整。
经理管理部门子系统
本开发小组成员经过调查、信息流程分析、数据收集,并结合需求分析,明确了——
子系统的功能:
A.管理员工:
给员工编号,登记其基本信息。
根据员工的平时表现确定其出勤工资及根据等级确定其固定工资,从而确定其实际工资,此外还要给员工分配工作部门等。
B.划分部门:
给各部门编号、命名、确定其职责范围、任命部门经理、分配员工。
C.对本部门的财务进行核算(支付工资等)。
根据要求分析给出的数据流图,参照数据字典中的详细描述,给出经理管理部门的分E-R图:
员工11工资
n
1部门1n账单
对E-R图调整的准则:
现实世界中的事物能作为属性对待的尽量作为属性对待;
属性和实体的划分:
属性中不具有需要描述的信息,即属性是不可分的数据项,不再包含其他信息。
实体属性定义:
员工(员工号、姓名、性别、年龄、工龄、级别、部门、职务、备注)
工资(员工号、等级、实际工资、基本工资、出勤工资)
部门(部门号、名称、部门经理、员工数量)
账单(编号、发票号、摘要、收入数、支出数、日期、经手人、备注)
具体调整如下:
1.本来员工还应对应一个领导关系,但这里为了简便,就用员工的”等级”属性来表示员工之间的领导关系;
2.工资本应作为员工的一个属性,但这里需强调员工对应的出勤工资(由出勤情况决定),因此将它单独作为一个实体;
3.部门对应的账单本应属于财务子系统的内容,这里为了简化财务子系统,先在各个子系统中进行财务总结,因此,将账单也作为一个实体。
娱乐管理部门子系统
本开发小组成员经过调查、信息流程分析、数据收集,并结合需求分析,明确了——
子系统的功能:
A.为各个项目制定收费标准,分配负责人;
B.收入支出财务处理:
编号、财务来源去处的摘要、数量、单价、数额、结余、经手人等信息;
C.对在部门内进行娱乐的顾客进行收费,并根据折扣规则给与顾客相应的折扣;
D.对部门内部进行帐务处理;
根据要求分析给出的数据流图,参照数据字典中的详细描述,给出经理管理部门的分E-R图:
项目1n员工折扣规则
1n
n1账单
m顾客11款项1
实体属性定义:
项目(编号、名称、所在位置、收费标准、负责人)
员工(员工号、姓名、性别、年龄、工龄、级别、部门、职务、备注)
顾客(顾客号、级别、姓名、年龄、性别、证件号码、证件名称、所选项目、使用时间、备注)
款项(顾客号、级别、使用时间、应收款、实际收款、折扣)
折扣规则(级别、折扣情况)
账单(编号、发票号、摘要、收入数、支出数、日期、经手人、备注)
对E-R图调整的准则:
现实世界中的事物能作为属性对待的尽量作为属性对待;
属性和实体的划分:
属性中不具有需要描述的信息,即属性是不可分的数据项,不再包含其他信息。
具体调整如下:
1.本来员工还应对应一个领导关系,但这里为了简便,就用员工的“等级”属性来表示员工之间的领导关系;
2.款项本可以作为顾客的一个属性来设置,但这里为了强调对顾客的折扣情况,需要对款项进行进一步的描述,因此这里作为一个实体;
3.对顾客所采取的折扣规则,本应该根据顾客的实际消费量来划定,这里为了方便起见,给每位顾客添加了一个“级别”属性,用以对应采取的折扣规则;
4.部门对应的账单本应属于财务子系统的内容,这里为了简化财务子系统,先在各个子系统中进行财务总结,因此,将账单也作为一个实体;
住宿管理部门子系统
本开发小组成员经过调查、信息流程分析、数据收集,并结合需求分析,明确了——
子系统的功能:
A.给个房间布置设备、分类、编号、制定收费标准、分配服务人员。
B.登记旅客信息,确认其身份,登记其入住、退出时间;
C.接受顾客的预定服务,对于已预定的客房进行登记的处理;
D.统计各类房间的客满程度;
E.对本部门的财务流动进行登记处理。
根据需求分析给出的数据流图,参照数据字典中的详细描述,给出经理管理部门的分E-R图:
顾客mn客房mn员工
111
m
1账单
11订单1
款项11折扣规则
实体属性定义:
顾客(顾客号、级别、姓名、年龄、性别、证件类型、证件号码、入住时间、退出时间、备注)
客房(客房号、类别、位置、设备、收费标准、管理人员、状态)
员工(员工号、姓名、性别、年龄、工龄、级别、部门、备注)
款项(顾客号、级别、使用时间、应收款、实际收款、折扣)
折扣规则(级别、折扣情况)
订单(订单号、时间、房间号、经手人、备注)
账单(编号、发票号、摘要、收入数、支出数、日期、经手人、备注)
对E-R图调整的准则:
现实世界中的事物能作为属性对待的尽量作为属性对待;
属性和实体的划分:
属性中不具有需要描述的信息,即属性是不可分的数据项,不再包含其他信息。
具体调整如下:
1.本来员工还应对应一个领导关系,但这里为了简便,就用员工的“等级”属性来表示员工之间的领导关系;
2.款项本可以作为顾客的一个属性来设置,但这里为了强调对顾客的折扣情况,需要对款项进行进一步的描述,因此这里作为一个实体;
3.对顾客所采取的折扣规则,本应该根据顾客的实际消费量来划定,这里为了方便起见,给每位顾客添加了一个“级别”属性,用以对应应采取的折扣规则;
4.部门对应的账单本应属于财务子系统的内容,这里为了简化财务子系统,先在各个子系统中进行财务总结,因此,将账单也作为一个实体。
财务管理子系统
本开发小组成员经过调查、信息流程分析、数据收集,并结合需求分析,明确了——
子系统的功能:
A.对各个部门上交上来的收支情况进行汇总,得出各个部门的损益情况;
B.对整个酒店各个部门的损益情况进行汇总登记,得出本期酒店的损益;
C.将整个酒店的收益情况下发给各个部门,帐务公开,集思广益。
分E-R图如下:
部门1n员工
1n
1财务状况
1
mm
账单m1总帐
实体属性定义:
部门(部门号、名称、部门经理、员工数量)
员工(员工号、姓名、性别、年龄、工龄、级别、部门、职务、备注)
账单(编号、发票号、摘要、收入数、支出数、日期、经手人、备注)
总帐(编号、部门号、收入、支出、净利、日期、经手人、备注)
财务状况(时期、总收入、总支出、净利润)
对E-R图调整的准则:
现实世界中的事物能作为属性对待的尽量作为属性对待;
属性和实体的划分:
属性中不具有需要描述的信息,即属性是不可分的数据项,不再包含其他信息。
具体调整如下:
员工应对应一个领导关系,但为了简便起见,就用员工的“等级”属性来表示员工之间的领导关系。
视图集成
以上便是四个子系统的分E-R图设计及其调整的整个过程,接着要做的就是将所有的分E-R图进行综合,合成一个系统的总E-R图.
由于本系统比较简单,分E-R图规模也比较小,所以E-R图合成过程采用一次将四个子系统分E-R图集成总E-R图的方式.
分两步进行:
第一步:
合并。
解决各分E-R图之间的冲突,将各分E-R图合并起来生成初步E-R图。
各分E-R图之间的冲突主要有三类:
1.属性冲突:
(1)属性域冲突,即属性值的类型、取值范围或取值集合不同。
由于本系统较简单,所以并不存在这种冲突;
(2)属性取值单位冲突。
由于本系统较简单,不存在这类冲突;
2.命名冲突:
(1)同名异义:
由于本系统较简单,所以不存在这类冲突;
(2)异名同义:
由于本系统较小,所以不存在这类冲突;
3.结构冲突:
(1)同一对象在不同应用中具有不同的抽象:
本系统在需求分析阶段原本存在这种冲突,考虑到后期的简化合并,我们在设计各个分E-R图就早先解决了这个问题,即将在任何一个分E-R图中作为实体出现的属性全部作为实体;
(2)同一实体在不同分E-R图中所包含的属性个数和属性排列次序不完全相同:
由于本系统较简单,所以并不存在这种冲突;
第二步:
修改和重构。
消除不必要的冗余,生成基本E-R图。
由于本系统涵盖的内容比较少,基本不存在冗余的现象,所以初步E-R图就是基本E-R图,不必再进行调整。
下面给出E-R图。
总E-R图:
员工(员工号、姓名、性别、年龄、工龄、级别、部门号、职务、备注);
工资(员工号、等级、实际工资、基本工资、出勤工资);
部门(部门号、名称、部门经理、员工数量、财务状况编号);
项目(项目编号、部门号码、名称、所在位置、收费标准、负责人号);
顾客(顾客编号、级别、姓名、年龄、性别、证件号码、证件名称、所选项目、使用时间、备注);
客房(客房号、类别、部门号、位置、设备、收费标准、管理人员号、状态);
款项(款项编号、顾客号、项目号、折扣级别、使用时间、应收款、实际收款);
折扣规则(折扣级别、折扣情况);
订单(订单号、顾客号、经手人号、备注);
账单(账单编号、总帐编号、发票号、收入数、支出数、日期、经手人号、备注);
总帐(总帐编号、部门号、财务状况编号、收入、支出、净利、日期、经手人号、备注);
财务状况(财务状况编号、时期、总收入、总支出、净利润);
工资1
1
负责
结算
汇总
下属
下属
选择
住宿
预约
预订
应付
对应
核算
员工财务状况
n1
1n
部门1总账
11m折扣规则
帐单n1
1
n项目
n
m1
m款项
客房mn顾客11
n1
m订单1
逻辑结构设计
一.与总E-R图对应的关系模式
1、实体所对应的关系模式:
员工(员工号、姓名、性别、年龄、工龄、级别、部门号、职务、备注);
工资(员工号、等级、实际工资、基本工资、出勤工资);
部门(部门号、名称、部门经理、员工数量、财务状况编号);
项目(项目编号、部门号码、名称、所在位置、收费标准、负责人号);
顾客(顾客编号、级别、姓名、年龄、性别、证件号码、证件名称、所选项目、使用时间、备注);
客房(客房号、类别、部门号、位置、设备、收费标准、管理人员号、状态);
款项(款项编号、顾客号、项目号、折扣级别、使用时间、应收款、实际收款);
折扣规则(折扣级别、折扣情况);
订单(订单号、顾客号、经手人号、备注);
账单(账单编号、总帐编号、发票号、摘要、收入数、支出数、日期、经手人号、备注);
总帐(总帐编号、部门号、财务状况编号、收入、支出、净利、日期、经手人号、备注);
财务状况(财务状况编号、时期、总收入、总支出、净利润);
说明:
1.下加横线部分表示关系的码
2.以上关系的详细内容说明请参照概念结构设计中的具体内容
3.上面的各个关系对概念结构设计中的相关内容了作了修改,主要加了各个实体中间的联系,尤其是一对多的联系,纳为属性。
2、联系所对应的关系模式:
1)、把客房和订单之间的n:
m的预约联系转化为相应的关系模式如下:
预约(订单号、客房号、始定时间、结束时间);
2)、把顾客和房间之间的n:
m的住宿联系转化为相应的关系模式如下:
住宿(顾客号、房间号码、住宿时间);
3)、把顾客和项目之间的n:
m的选择联系转化为相应的关系模式如下:
选择(顾客号、项目号、发生时间、经受人号、备注);
4)、其他联系处理说明如下:
工资和员工之间的1:
1联系与员工关系合并;
顾客和订单之间的1:
1联系与订单关系合并;
折扣规则和款项之间的1:
1联系与款项关系合并;
员工和部门之间的n:
1联系与员工关系合并;
部门和财务状况之间的n:
1联系与部门关系合并;
客房和部门之间的n:
1联系与客房关系合并;
项目和部门之间的n:
1联系与项目关系合并;
总帐和财务状况之间的n:
1联系与总帐关系合并;
帐单和总帐之间的n:
1联系与帐单关系合并;
帐单和项目之间的n:
1联系与项目关系合并;
二.优化后的数据模型
1、按照数据依赖对关系模式进行逐一分析,并进行极小化处理:
员工(员工号、姓名、性别、年龄、工龄、级别、部门号、职务、备注);BCNF
工资(员工号、等级、实际工资、基本工资、出勤工资);BCNF
部门(部门号、名称、部门经理、员工数量、财务状况编号);BCNF
项目(项目编号、部门号码、名称、所在位置、收费标准、负责人号);BCNF
顾客(顾客编号、级别、姓名、年龄、性别、证件号码、证件名称、所选项目、备注);BCNF
优化说明:
删除了使用时间,一是因为“使用时间”对于顾客的属性必要性不强,二是因为使用时间在别的关系中也可以查询到。
客房(客房号