酒店管理信息系统数据库设计_第1页
酒店管理信息系统数据库设计_第2页
酒店管理信息系统数据库设计_第3页
酒店管理信息系统数据库设计_第4页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库原理及应用课程设计报告设计题目:酒店管理信息系统数据库设计目录1111.121.22232.132.23333.133.2E R4454.154.26576107118128.1128.2138.31313酒店管理信息系统数据库设计第一章概述1.1 选题背景酒店业是一个前景广阔而又竞争激烈的行业。改革开放以来, 我国的酒店业迅速发展,已经成为一个具有相当规模的产业。由于我国的旅游业迅速发展,通过调查,我国在2020 年将成为世界上第四大旅游国家;同时我国加入世界贸易组织,酒店业将完全开放,这个时候,我国的酒店业将面临着前所未有的机遇和挑战。但是, 现在甚至还有一些酒店还停留在由人工操作和

2、管理阶段,这样已经无法适应当前的发展趋势。因此,要想使酒店的工作质量和效率提高,采用先进的计算机网络通信技术改变酒店业务模式,实现酒店业务管理的自动化已经成为一种必然。正是在这样一种背景下,新的快捷酒店管理模式应运而生,即采用先进的计算机和软件技术来实现快捷酒店的信息化管理。从客房的营销即客人的预订登记开始,到入住之后至最后退房结账,整个过程以顾客为中心, 利用计算机简化各种复杂操作,在最合理最短时间内完成快捷酒店管理的规范操作,这样才能令顾客得到优质的服务,增加顾客的回头率。虽然信息化并不是酒店走向成功的关键元素,但它可以帮助那些真正影响成败的要素发挥更大的效用。因此,采用全新的计算机管理系

3、统,将成为提高快捷酒店的管理效率,改善服务水准的重要手段之一。1.2 课题研究的目的和意义酒店作为高层的服务行业之一,最重要的就是要做到优质服务。服务的安排、调度是否周到,客人的要求是否能迅速地得到满足, 都直接影响到酒店的形象和声誉。 借助计算机技术来进行信息管理, 并配合现代化的快捷酒店管理经验和模式, 可以极大地提高酒店的服务质量, 获得更好的经济效益。 酒店信息化管理已成为酒店现代科学管理的重要内容,是酒店经营中必不可缺少的现代科学工具。由此可见, 一个好的酒店管理系统应该达到以下几个目标:1.提高工作效率,减轻劳动强度。在快捷酒店的日常工作中,每天都要完成对营业信息进行更新统计,提供

4、查询服务, 结算账单等大量的业务,用手工方式进行的话,不仅速度慢,需要的人手多,且出错的概率也大,而计算机管理则可以大大提高业务运作的速度和准确性,实现营业管理自动化。2.提高了快捷酒店经济效益,增加营业收入。完善的客房管理功能可防止有房不能出租或房间重订的情况出现,随时提供准确和最新的房态信息,从而可提高工作效率和客房出租率。客人费用的一次性结账,不仅减少了票据传送,而且避免了管理上的混乱,更主要的是有效地防止逃帐的发生。3.提高了服务质量,可以为客人提供快捷、细致、周到的服务。操作人员只需敲击键盘,就可以办理客人入住、查询信息、结账等各项手续,并准确无误地记录客人的每笔消费记录,大大缩短客

5、人办理手续时的等候时间,提高了服务质量。2 数据库需求分析2.1 调查对象基本情况说明酒店有总经理、会计和前台工作人员。总经理总管各类事务,会计负责对酒店收入统计管理,前台负责客人的入住、退房以及一般的查询等事务办理。酒店有各种标准的房间。房间数据包括房间号、房间级别、房间床位数目、房间价位以及房间的状态(是否已经有客人)。房间编号唯一表示一个房间,房间级别决定房间价格,房间有四种级别分别表示:四人标准间、二人标准间,单人标准间,豪华间。房间状态表示此房间是否入住或者转房。酒店要求了解顾客的一般信息,能够为顾客提供入住、换房、退房、随时交费服务,并能够满足顾客对自身消费以及酒店房间状况等各类信

6、息的查询要求。酒店在正常运营中需要对客房资源、顾客信息、顾客住宿情况、收费信息进行管理。一套功能强大而又使用简便实用的酒店管理系统有利于提高管理效率。1.2 数据库系统设计目标及具体功能1 、系统设计的总体目标:实现酒店各种信息的系统化、规范化和自动化,提供客户、客房信息录入和查询修改,客户住宿情况的变动管理以及酒店与客户的费用统计查询。进一步的提高酒店的管理效率。2 、主要功能:不同等级客房信息的录入与记录,客人的信息登记,客人的入住、换房、退房、交费信息记录,有关客人交费情况、酒店住宿收入情况、客房状态、客人各类信息等各种强大的统计报表,另外还提供各类统计查询。3 数据库概念结构设计3.1

7、 实体及属性说明实体属性描述数据类型及长度是否空约束客房客房编号客房编号varchar(3)否唯一级别四个级别varchar(10)是唯一价格级别决定价格smallint是唯一住客情况是否住客varchar(2)是是与 Null客人客人编号客人编号varchar(11)否唯一身份证号客人身份varchar(18)否唯一姓名客人姓名varchar(10)是无联系电话客人电话varchar(15)是无收费收费日期收费日期smalldatetime否无客人编号客人编号varchar(11)否唯一价格客人入住客房的smallint是无价格需建立六个表 ,如下 (下划线为主码 ) 。其中客房、客人、收费

8、属于实体;入住、换房、退房属于实体之间的联系。客房 (客房编号 ,级别 ,价格,住客情况);客人 (客人编号 ,身份证号 ,姓名 ,联系电话 );收费 (收费日期,客人编号,价格);入住 (客房编号,客人编号 ,入住日期 , 是否换房,是否退房 ); 换房 (客人编号,原房号 , 现房号 ,换房日期 ); 退房 (客人编号,客房编号,退房日期 );3.2 ER 图设计客房编号是否换房日期入住是否收费日期退房N对应收费级别价格是否住客客房原房1号11退房换房换房日期退1房11日现期房1号客人客人编号价格客人编号身份证号姓名联系电话4 数据库逻辑结构设计4.1 数据库逻辑结构设计4.2 主要表的作

9、用说明及内容图示1 、客房表:记录客房信息,包括编号、等级、状况,空房查询。2、客户表:记录客人的基本情况,用于酒店管理与联系客户。3、入住表:记录客人的入住情况,包括入住客房与时间。4 、换房表:记录换房客人的情况,包括换房前后客房号与时期,用于计算费用。5 、退房表:记录客人的退房情况,用于计算费用和改变客房状态6 、收费标准表:记录客房等级对应的价位,方便收费与交费的统计计算。7 、收费记录表:记录客人的交费记录与酒店退款(超额)记录,用于计算收入与费用。5 主要视图设计( 1)客人信息视图创建必要性: 创建客人信息视图,方便酒店服务员对客户服务,方便酒店与客户进行联系与沟通。该视图用于

10、前台服务人员。命令:CREATE VIEW 客人信息 (客人编号 , 姓名 ,身份证号 ,联系电话 ,入住房间 ,入住日期 , 是否离开 )AS SELECT 客户表 A. 客户编号 , 客户表 A. 姓名 , 身份证号 , 联系电话 , 入住 .客房号 , 入住 .日期 , 入住 .是否退房 FROM 客户表 A, 入住表WHERE 客户表 A. 客户编号= 入住表 .客户编号AND客房表 B.客房编号 = 入住表 .客房编号数据图示 :( 2)现住客人费用情况视图创建必要性:创建现住客人费用情况视图用于前台服务员对退房客户进行收费与退费,客户查询自己需交费用与以交费用以及余额。命令:由于此

11、视图较为复杂,在创建该视图时必须先建立另外几个视图,所有视图命令如下:一、 CREATE VIEW客人交费情况 (客人编号 ,缴费总额 )AS SELECT 客户表 A. 客户编号 , SUM( 收费记录表 .缴费金额 )FROM客户表 A, 收费记录表WHERE 客户表 A. 客户编号= 收费记录表 .客户编号GROUP BY客户表 A 。客人编号二、 CREATE VIEW现住客人费用情况一(客人编号AS SELECT 客户表 A. 客户编号 , datediff(d,期 , getdate() * D2.价格, 应交费用 )入住表 .日期 ,换房表 .日期 ) * D1.价格+ date

12、diff(d,换房表 .日FROM客户表 A, 入住表 , 客房表S1, 收费标准表D1, 客房表S2, 收费标准表D2, 换房表WHERE 客户表A. 客户编号= 入住表 . 客户编号AND入住表 .客房编号编号= 换房表 .原房号AND S1. 等级= D1. 等级AND S2. 等级= D2.房编号and入住表 . 是否退房is null= S1.客房编号 AND 入住表 .客房等级 AND 换房表 .现房号 = S2.客三、 CREATE VIEW现住客人费用情况二(客人编号 , 应交费用 )AS SELECT 客户表 A. 客户编号 , datediff(d,入住表 .日期 , ge

13、tdate() *FROM客户表 A, 入住表 , 收费标准表 , 客房表 BWHERE 客户表 A. 客户编号= 入住表 .客户编号AND入住表 . 客房编号表 B.等级= 收费标准表 .等级AND入住表 .是否退房IS NULL AND收费标准表 .价格= 客房表 B.客房编号AND入住表 .是否换房IS NULL客房四、 CREATE VIEW 现住客人费用情况( 客户编号客户姓名, 应交费用 ,已交费用 ,余额 )AS SELECT 客户表 A. 客户编号 ,客户表 A. 客户姓名 , 现住客人费用情况一 .应交费用 , 收费记录表 .缴费金额 , 收费记录表 .缴费金额 - 现住客人

14、费用情况一 .应交费用FROM现住客人费用情况一, 收费记录表 , 客户表 AWHERE 现住客人费用情况一.客户编号= 收费记录表 .客户编号AND客户表A. 客户编号= 收费记录表 .客户编号UNION SELECT金额 , 收费记录表客户表 A. 客户编号 ,客户表 A. 客户姓名 , 现住客人费用情况二.缴费金额- 现住客人费用情况二.应交费用.应交费用,收费记录表.缴费FROM现住客人费用情况二, 收费记录表,客户表AWHERE现住客人费用情况二.客人编号= 收费记录表.客户编号AND客户表A. 客户编号= 收费记录表.客户编号数据视图:(3) 以退客人费用情况视图创建必要性: 现住

15、客人所交费用不是其实际应交费用,创建已退房客人费用情况视图用于会计统计酒店收入情况,经理了解酒店的盈利等。命令:此视图较为复杂,在创建该视图时必须先建立另外几个视图,顺序与视图( 2)相似,所有视图命令如下:一、 CREATE VIEW 客人交费情况 ( 客人编号 , 缴费总额 )AS SELECT 客户表 A. 客户编号 , SUM( 收费记录表 .缴费金额 )FROM 客户表 A,收费记录表WHERE 客户表 .客户编号= 收费记录表 . 客户编号GROUP BY客户表 A 。客户编号二、 CREATE VIEW退房客人费用情况一(客人编号AS SELECT 客户表 A. 客户编号 , d

16、atediff(d,期, 退房 .日期 ) * D2. 价格,应交费用 )入住表 .日期 ,换房 .日期 ) * D1. 价格+ datediff(d,换房 .日FROM 客户表 A, 入住表 , 客房表 B S1, 收费标准表 D1, 客房表 B S2, 收费标准表 D2, 换房表 , 退房表 WHERE 客户表 A. 客户编号 = 入住表 .客户编号 AND 入住表 .客房编号 = S1.客房编号 AND 入住表 .客房编号 =换房表 . 原房号AND换房表 .现房号= 退房表 .客房编号AND S1. 等级 = D1. 等级 AND S2. 等级 = D2. 等级 AND 换房表 .现房

17、号 = S2.客房编号CREATE VIEW 退房客人费用情况二(客人编号 , 应交费用 )AS SELECT 客户表 A. 客户编号 , datediff(d,入住表 . 日期 , 退房表 . 日期 ) *FROM客户表 A, 入住表 , 客房表 , 收费标准表 , 退房表WHERE 客户表A. 客户编号= 入住表 .客户编号AND入住表 .客房编号住表 .客房编号= 退房表 .客房编号AND客房表B.等级= 收费标准表收费标准 .价格= 客房表B.客房编号AND入.等级AND入住表 .是否换房IS NULLCREATE VIEW 以退客人费用情况AS SELECT 客户表A. 客户编号,(

18、客人编号 , 姓名 , 应交费用姓名 , 退房客人费用情况一, 已交费用. 应交费用 ,余额 )收费情况表. 缴费总额,收费情况表.缴费总额- 退房客人费用情况一.应交费用FROM退房客人费用情况一, 收费情况表 , 客户表 AWHERE 退房客人费用情况一.客人编号= 收费情况表.客户编号AND客户表A. 客户编号= 收费情况表.客户编号UNIONSELECT 客户表A. 客户编号,姓名 ,退房客人费用情况二.应交费用,收费情况表.缴费总额,收费情况表 . 缴费总额- 退房客人费用情况二.应交费用FROM退房客人费用情况二, 收费情况表,客户表AWHERE退房客人费用情况二.客人编号= 收费

19、情况表.客户编号AND客户表A. 客户编号= 收费情况表.客户编号6 安全体系设计1、用户游客:所有人,拥有查询房间状态及收费权限,利于了解酒店。2 、用户前台:拥有对各个基本表(视图)所有客人、客房的查询及部分修改、删除、插入权限,便于管理与登记入住客人的信息与换房、退房活动以及收费。3、用户客人:客人拥有对自己各类信息的全部查询功能。便于了解自己的交费与住宿情况并核对,及时交费。4 、用户会计:拥有一切与费用相关表(视图)的查询功能,以核对实际情况的正确性。5 、总经理用户:拥有所有表的一切功能,以掌握酒店经营状况。6 、dbo :记数据库拥有者,拥有一切功能。7 典型功能处理过程设计(1

20、) 空房查询功能处理过程使用背景 : 客户入住前查询可入住空闲房间及价格标准。具体要求:能够查询酒店空余房间及其等级价格操作命令及结果:AS SELECT 客房表 B.客房编号 , 客房表 B.等级 , 收费标准表 .价格FROM客房表 B, 收费标准表WHERE 客房表 B.等级= 收费标准表 .等级AND客房表 B.空房IS Y( 2)客人消费以及交费情况查询功能处理过程使用背景:入住客人查询自己的费用情况。具体要求:能够使客人清楚的查询自己的交费、消费、欠费情况。操作命令及结果:此功能由以建视图实现,例如:20101231002查询自己费用信息SELECT 入住表 .客户编号 , 现住客

21、人费用情况.姓名 , DATEDIFF(d,入住表 .日期 , GETDATE()AS 入住天数 , 现住客人费用情况 . 应交费用 , 现住客人费用情况 . 已交费用 , 现住客人费用情况 .余额 FROM 现住客人费用情况 ,入住表Where现住客人费用情况.客人编号= 入住表 . 客户编号AND入住表 .客户编号 =121001( 3)统计酒店的进账数目功能处理过程使用背景 :酒店会计与经理查询账目。具体要求 :统计酒店每天的进账数目。操作命令及结果:SELECT 日期 , SUM( 交费金额 ) AS 收入FROM收费记录表GROUP BY日期8 总结8.1 设计中遇到的主要问题及解决

22、方法这次数据库课程设计中遇到很多问题,主要表现在以下几个方面。主要问题一: 由于在设计要求中有换房这一项,而换房时房间变换可能使房间等级改变,而进一步改变房间的价格,因此在计算换房客人费用时要将两个不同的收费标准分别计算。在计算所有客人应收费用时就有两个不同情况:换房客人与未换房客人。两种情况计算方法不同,无法在一个视图中实现,而为了查询方便又必须在同一视图中显示。同时现住客人与已退房客人之间也存在着一个问题,即退房客人住宿天数已确定而现住客人不确定。经过不断考虑, 想到以下解决方法,为了建立最终的费用视图先根据各种不同情况(是否换房、是否退房)建立几个过渡视图,然后将过渡视图综合,在综合时遇

23、到的两视图合并显示通过查询资料用UNION 命令解决。主要问题二:计算费用时需用“住宿天数* 价格”实现,而住宿天数的计算让我思考了很久,时间跨年与跨月的差值计算通过已学各种知识感觉无法实现,后来通过查找资料找到解决方法:使用datediff函数计算。8.2 设计方案的主要优点及不足方案优点:正确有效的的实现了既定目标与功能,能够执行各类输入、修改、查询与统计等功能,由于设计多个视图而使系统的使用简单方便。客人的费用等信息可以由视图直接查询得出,而不必要用复杂繁琐的命令。方案不足:由于时间仓促,该系统缺少了现实中某些必要的部分,例如酒店服务员的有关信息管理、酒店的日常消费支出、工资管理等方面的内容。而且视图建立时自己感觉部分算法太过于复杂,但没有更好的办法改进。8.3 收获及建议本次课程设计对于我们小组来说不仅是做了酒店管理系统,最为珍贵的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论