《SQL数据库课程设计酒店管理信息系统.doc》由会员分享,可在线阅读,更多相关《SQL数据库课程设计酒店管理信息系统.doc(20页珍藏版)》请在三一办公上搜索。
1、目 录摘要5一、前言7(一)、课题研究的背景7(二)、课题研究的现状及分析7二、可行性分析8(一)、技术可行性8(二)、经济可行性8(三)、操作可行性8三、客房管理系统总体结构设计9(一)、酒店客房管理系统部分实体E-R图如下所示9(二)、系统结构图10(三)、数据字典101、客房信息表102、管理员信息表103、房客信息表11四、数据库实施11(一)、创建基本表的SQL语句11(1)、CREATE TABLE 入住信息表11(2)、CREATE TABLE 客房信息表12(3)、CREATE TABLE 客房类型信息表13(二)、各功能模块和流程图131、功能模块132、功能图14(三)、代
2、码设计151、客房管理系统登录界面及代码152、管理员管理子系统界面及代码17四、总结和参考资料23(一)、总结23 (二)、参考资料23摘 要随着社会服务行业的发展,使用管理软件来管理整个宾馆企业的要求也逐年升温,有条件的酒店或宾馆都采用了相关的酒店管理系统,以解决宾馆全凭原始的手工记录管理,效率低、易出错的缺陷。宾馆行业对自身提供服务的质量和能力也有了更高的要求,宾馆信息管理系统正因此而越来越受到重视。宾馆信息管理系统主要实现宾馆酒店的客房管理、客户信息管理、客户添加管理、客户修改管理、客户删除管理功能。 一个宾馆信息管理系统应该包括基本的客房信息管理、客房客户信息管理、入住退房信息管理等
3、相关的信息管理。本文结合酒店管理信息系统的开发过程,详细介绍如何针对酒店的需求,将先进的软件应用技术融入现代酒店管理系统中,开发出功能更完善的酒店管理信息系统。本系统运用Access 2000数据库系统和Visual Basic6.0程序语言开发实现,包括了住宿管理、客房管理、挂账管理、查询统计、日结、系统设置和系统维护等七大模块,具有操作简单、界面友善、灵活性好、系统安全性高、运行稳定等特点。论文简要介绍了“酒店管理信息系统”的项目背景和意义,着重阐述了该系统开发实现过程,对系统的需求分析、方案论证、模块设计、数据库设计等各个环节进行了详尽的分析和描述。重点介绍了酒店管理信息系统所采取的关键
4、技术,包括Visual Basic6.0的数据库访问技术、数据库设计的范式分析方法。论文最大的特点在于理论与实践相结合。本文所做的工作和创新之处是比较客观准确地分析识别了酒店信息管理系统的需求问题,值得同行业参考借鉴,在调查分析的基础上,得到了酒店服务业务流程,提出了一套有效的数据处理方案。 本系统采用当前流行的客户机服务器体系结构,将酒店管理各方面信息集中存储于Access 2000数据库,实现了信息的实时共享,适合酒店业向集团化发展的需要。系统具有运行稳定、数据结构严谨、稳定性强等特点。关键词:酒店信息管理;数据访问组件;客户服务器模式经济型酒店管理信息系统的设计与实现一、前言(一)、课题
5、研究的背景随着我国经济发展水平的迅速提高,酒店业作为服务行业中的重要组成部分己经越来越显示出其强劲的发展势头。纵观国内外酒店业信息化发展轨迹和趋势, 我们不难看出,随着酒店业竞争的加剧,酒店之间客源的争夺越来越激烈,客房销售的利润空间越来越小,酒店需要使用更有效的信息化手段,拓展经营空间,降低运营成本,提高管理和决策效率。而经济型酒店通过信息化管理提高收益的需求更加突出。高层次的酒店业信息化不再是仅仅追求计算机辅助管理,而是追求建立在集成化基础上的协同化应用。我国酒店业利用计算机管理系统来加强管理、提高服务水平,虽然至今已有了20多年的历史,但起步发展较晚,只是一些浅层次应用,大多数还停留于七
6、拼八凑的MIS系统水平,甚至还仅限于简单的电算化和信息发布阶段,与国际酒店业先进信息化应用的差距非常明显。信息化程度不高导致企业决策失误、市场反应速度缓慢等,己经成为制约我国酒店业进一步发展的重要瓶颈。中国信息化推进联盟副理事长张献军曾说,随着酒店信息化的发展,酒店将改变以往的经营理念和竞争模式,店内装潢、客房数量、房间设施等质量竞争和价格竞争将退居其次,取而代之的是酒店信息化竞争,信息化正改变着酒店业的竞争模式。国家旅游局2002年修订的旅游星级饭店评定的国家标准,已经把酒店管理的软件指标及服务方面作为主要测评手段。而现代化的酒店是集客房、餐饮、通讯、娱乐,商务文化及其他各种服务与设施为一体
7、化的消费场所,酒店组织庞大,服务项目多,信息量大,要想提高劳动生产,降低成本,提高服务质量和管理水平,进而促进经济效益,必须借助计算机来进行现代化的信息管理,本酒店管理系统正是为此而设计,目的是使酒店管理特别是经济型酒店在高效、低成本方面跨上一个新的台阶。(二)、课题研究的现状及分析酒店计算机管理系统最早是于上世纪70年代初在国外开始发展起来的,到了上世纪80年代,国外的饭店管理系统,如EECO,HIS,CLS,Lodgistix等,整个模式已基本定型,技术较成熟,功能也比较全面。国内的酒店计算机管理系统最早是在80年代初开始的,从事该方面工作的有清华大学自动化系的金国芬教授、西安交大和浙江省
8、计算技术研究所。到上世纪80年代中经济型酒店管理信息系统的设计与实现后期,;随着国外酒店计算机系统的大规模引进,国外酒店的先进管理技术进入我国,进打步促进曩我国饭店管理技术的发展。国内系统正是在充分吸收国外管理系统的精华。,再结合国内的实际情况,逐步发展成熟,到上世纪90年代初期形成了几个较成熟的软件系统,同时产生了许多专职从事酒店计算机管理系统的公司。进入21世纪后,随着计算机在酒店中的普及应用,以及计算机技术的不断发展,酒店计算机系统的发展到了一个新的时期,新的系统平台、新的软件功能、新的系统特点及发展方向不断涌现,酒店管理系统逐渐向ERP方向发展。二、可行性分析可行性研究的目的,就是用最
9、小的代价在尽可能短的时间内确定问题是否能够解决,一般来说,从以下三方面分析系统的可行性。(一)、技术可行性酒店客房管理系统主要用到ASP.Net和Access两种工具,通过在校的学习,本人能够熟练掌握并应用以上两种技术进行系统开发,因此系统在技术上是可行的。(二)、经济可行性酒店客房管理系统运行的硬件环境只需一台电脑即可,电脑由机房提供,软件免费使用。图书馆可以查询相关资料,基于以上方便条件,因此系统在经济方面是可行的。(三)、操作可行性酒店客房管理系统具备友好的用户界面、使用方便,易于维护,操作简单易于被用户接受。只要用户能操作计算机,对此系统使用做简单的了解即可方便使用,而且使用此系统可以
10、大大减少管理人员的负担。因此从使用操用方面看,此系统的开发是可行的。三、客房管理系统总体结构设计(一)、酒店客房管理系统部分实体E-R图如下所示用户名登陆密 码 码 图3.1登陆模块E-R图客 户住宿事由房间类型房间价格住宿日期退宿日期身份证号房间号姓名押金图3.2客户管理E-R图调房登记源房间号交费单号缴费人目标房间号姓名房间价格图3.3调房登记E-R图(二)、系统结构图消费信息修改消费信息查询客人信息修改客人信息添加客人信息查询消费信息管理客房信息管理客房信息查询客房信息修改预订入住管理用户管理用户信息查询用户信息修改酒店客房管理系统(三)、数据字典1、客房信息表列名数据类型可否为空说明房
11、号CharNOT NULL主键,房间编号房类CharNULL房间类型房价FloatNULL房间价格房间状态CharNULL是否入住2、管理员信息表列名数据类型可否为空说明用户名CharNOT NULL主键,登入账号密码CharNOT NULL用户密码3、房客信息表列名数据类型可否为空说明预订单号CharNOT NULL主键,预订编号房号CharNULL房间编号房类CharNULL房间类型客人姓名VarcharNOT NULL入住客人姓名性别CharNULL客人性别人数CharNULL入住人数证件号码VarcharNULL客人证件编号地址CharNULL客人家庭住址天数CharNULL客人入住天
12、数抵店时间CharNOT NULL客人入住时间离店时间CharNULL客人离开时间客人类别CharNULL客人级别支付方式CharNULL客人付款形式押金FloatNULL预付款房价FloatNULL房间价格四、数据库实施设本系统使用的数据库名为酒店客房管理系统,根据已设计的关系模式及各模式的完整性要求,现在就可以在SQL Server 2008数据库系统中实现这些逻辑结构。(一)、创建基本表的SQL语句(1)、CREATE TABLE 入住信息表CREATETABLEdbo.入住单历史(入住单号varchar(36)NOTNULL,预定单号varchar(36)NULL,会员编号intNUL
13、L,客房类型varchar(4)NULL,抵店时间smalldatetimeNULL,离店时间smalldatetimeNULL,单据状态varchar(20)NULL,入住人数intNULL,客房编号varchar(12)NULL,客房价格moneyNULL,入住价格moneyNULL,折扣decimal(4,2)NULL,折扣原因varchar(60)NULL,是否加床bitNULL,加床价格moneyNULL,预收款moneyNULL,预定人varchar(20)NULL,预定公司varchar(60)NULL,联系电话varchar(40)NULL,备注varchar(510)NULL
14、,操作员varchar(10)NULL,业务员varchar(50)NULL,早餐bitNULL,叫醒bitNULL,保密bitNULL,vipbitNULL,电话等级varchar(20)NULL,特要说明varchar(50)NULL,应收帐款moneyNULL,是否结帐bitNULL,结帐金额moneyNULL,结帐日期smalldatetimeNULL,付款方式varchar(20)NULL)ONPRIMARYGO(2)、CREATE TABLE 客房信息表CREATETABLEdbo.客房信息(客房编号varchar(12)NOTNULL,类型编号varchar(4)NOTNULL,
15、楼层编号intNOTNULL,额定人数intNULL,床数intNULL,客房描述varchar(40)NULL,备注varchar(100)NULL,状态varchar(4)NULL,是否可拼房bitNULL)ONPRIMARYGO(3)、CREATE TABLE 客房类型信息表CREATE TABLE dbo.客房类型 (类型编号 varchar (4) NOT NULL ,类型名称 varchar (40) NULL ,价格 money NULL ,拼房价格 money NULL ,可超预定数 decimal(3, 0) NULL ,是否可拼房 bit NULL ) ON PRIMARY
16、GO(二)、各功能模块和流程图1、功能模块根据数据库的设计,该图书管理系统可以分成二个子模块:管理员子模块如图4-1所示: 房客管理子模块如图4-2所示:2、功能图管理员子模块功能如图4-3所示:客房功能模块如图4-4所示:(三)、代码设计1、客房管理系统登录界面及代码客房管理系统登录界面如下图所示:登录部分相关代码为:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Wi
17、ndows.Forms;namespace酒店管理系统publicpartialclassLogin:FormpublicLogin()InitializeComponent();staticvoidMain()Application.Run(newLogin();privatevoidbutton1_Click(objectsender,EventArgse)if(textBox1.Text=dy&textBox2.Text=dy)MainFormrs=newMainForm();rs.Show();this.Hide();elseMessageBox.Show(用户名和密码错误!,登录提示
18、,MessageBoxButtons.OK,MessageBoxIcon.Asterisk);privatevoidbutton2_Click(objectsender,EventArgse)Application.Exit();privatevoidLogin_Load(objectsender,EventArgse)2、管理员管理子系统界面及代码以管理员身份登录该系统,可以显示管理员界面,管理员可以快速进入各模块,没有权限限制。相关代码为:usingSystem;usingSystem.Drawing;usingSystem.Collections;usingSystem.Componen
19、tModel;usingSystem.Windows.Forms;usingSystem.Data;namespace酒店管理系统/Form1的摘要说明。/publicclassMainForm:System.Windows.Forms.FormprivateSystem.Windows.Forms.MainMenumainMenu1;privateSystem.Windows.Forms.MenuItemmenuItem1;privateSystem.Windows.Forms.MenuItemmenuItem2;privateSystem.Windows.Forms.MenuItemmen
20、uItem3;privateSystem.Windows.Forms.MenuItemmenuItem4;privateSystem.Windows.Forms.MenuItemmenuItem5;privateSystem.Windows.Forms.MenuItemmenuItem6;privateSystem.Windows.Forms.MenuItemmenuItem7;privateSystem.Windows.Forms.MenuItemmenuItem8;privateSystem.Windows.Forms.MenuItemmenuItem10;privateSystem.Wi
21、ndows.Forms.StatusBarstatusBar1;privateSystem.Windows.Forms.StatusBarPanelstatusBarPanel1;privateSystem.Windows.Forms.StatusBarPanelstatusBarPanel2;privateIContainercomponents;publicMainForm()/Windows窗体设计器支持所必需的/InitializeComponent();/TODO:在InitializeComponent调用后添加任何构造函数代码/清理所有正在使用的资源。/protectedover
22、ridevoidDispose(booldisposing)if(disposing)if(components!=null)components.Dispose();base.Dispose(disposing);/应用程序的主入口点。/STAThread/-查询MDI子窗体是否存在-privateboolcheckChildFrmExist(stringchildFrmName)foreach(FormchildFrminthis.MdiChildren)if(childFrm.Name=childFrmName)/用子窗体的Name进行判断,如果存在则将他激活if(childFrm.Wi
23、ndowState=FormWindowState.Minimized)childFrm.WindowState=FormWindowState.Normal;childFrm.Activate();returntrue;returnfalse;/-显示客房类型管理设置窗体-privatevoidmenuItem2_Click(objectsender,System.EventArgse)/通过窗体名称查询该窗体是否已经存在,如存在则显示,否则就新创建一个if(this.checkChildFrmExist(RoomType)=true)return;RoomTypenewFrm=newRoo
24、mType();newFrm.MdiParent=this;newFrm.Show(); /-显示客房信息管理设置窗体-privatevoidmenuItem3_Click(objectsender,System.EventArgse)/通过窗体名称查询该窗体是否已经存在,如存在则显示,否则就新创建一个if(this.checkChildFrmExist(RoomInfo)=true)return;RoomInfonewFrm=newRoomInfo();newFrm.MdiParent=this;newFrm.Show(); /-显示客房预定信息窗体-privatevoidmenuItem5
25、_Click(objectsender,System.EventArgse)/通过窗体名称查询该窗体是否已经存在,如存在则显示,否则就新创建一个if(this.checkChildFrmExist(HotelReserve)=true)return;HotelReservenewFrm=newHotelReserve();newFrm.MdiParent=this;newFrm.Show(); /-显示入住管理信息窗体-privatevoidmenuItem6_Click(objectsender,System.EventArgse)/通过窗体名称查询该窗体是否已经存在,如存在则显示,否则就新
26、创建一个if(this.checkChildFrmExist(HotelArrival)=true)return;HotelArrivalnewFrm=newHotelArrival();newFrm.MdiParent=this;newFrm.Show(); /-显示消费记帐窗体-privatevoidmenuItem7_Click(objectsender,System.EventArgse)/通过窗体名称查询该窗体是否已经存在,如存在则显示,否则就新创建一个if(this.checkChildFrmExist(ClientConsume)=true)return;ClientConsum
27、enewFrm=newClientConsume();newFrm.MdiParent=this;newFrm.Show();/-显示收银退房窗体-privatevoidmenuItem8_Click(objectsender,System.EventArgse)/通过窗体名称查询该窗体是否已经存在,如存在则显示,否则就新创建一个if(this.checkChildFrmExist(HotelLeave)=true)return;HotelLeavenewFrm=newHotelLeave();newFrm.MdiParent=this;newFrm.Show(); /-显示房态图-priva
28、tevoidmenuItem9_Click(objectsender,System.EventArgse)/通过窗体名称查询该窗体是否已经存在,如存在则显示,否则就新创建一个if(this.checkChildFrmExist(RoomStatus)=true)return;RoomStatusnewFrm=newRoomStatus(0);newFrm.MdiParent=this;newFrm.Show(); /-退出系统-privatevoidmenuItem10_Click(objectsender,System.EventArgse)Application.Exit();privat
29、evoidMainForm_Load(objectsender,EventArgse)四、总结和参考资料(一)、总结通过对酒店客房管理系统的分析,开发与应用几个步骤, 我的系统实践和软件开发的能力都得到全面的提高,自身素质也得到提高。在这个系统的开发过程中,我收获颇多,感慨颇多。当自己独立要完成一个项目时,明确需求分析,是非常重要的。需求分析做得好,以后的编码工作就显得非常顺利。说到数据库,着实让我学到了不少东西,许多以前不太清楚的知识,不会的内容都有了更深的认识和理解。在开发软件过程中我深知软件的编码是我的一个薄弱的环节,以致有些模块实现得不太理想。在设计软件期间,教师的悉心指导、同学的热心
30、帮助,使我获益匪浅。同时我学到了更多新知识,也加深巩固了以前所学知识,无论理论上还是实践操作上。该系统还有许多不尽如人意的地方,但是从这个系统的开发中我学到了很多东西。实践出真知,这次毕业设计把我以前所学的理论知识得以充分地运用,并加以巩固。理论与实践相结合,动手能力得以很大的提高。开发一个良好的系统需要丰富的知识,由于水平有限,系统功能不够完善,需更进一步地改善。(二)、参考资料1戚晓明 王磊 数据库技术及应用-SQL Server 清华大学出版社 20122萨师煊 王珊数据库系统概述高等教育出版社 20023刘志成 SQL Server 2008 实例教程 电子工业出版社 20084李乃文
31、 傅游 沈学利 任建华 C#程序设计实践教程 清华大学出版社 20075万常选 廖国琼 吴京慧 刘喜平 数据库系统原理与设计 清华大学出版社 20106李建中 王珊数据库系统原理(第2版)电子工业出版社 20047宋昆 李严等SQLServer数据库开发实例解析机械工业出版社20068曾长军 SQLServer数据库原理及应用 人民邮电出版社20079刘杨SQLServer数据库原理 机械出版社 200510徐孝凯贺佳英著数据库基础与SQLServer应用开发清华大学出版社 200811(英)RobinDewson著 董明译SQLServer2008基础教程 人民邮电出版社 200912丁宝康 董健全 数据库实验教程清华大学出版社200313Jesse Libert ProgrammingC#中文版电子工业出版社 200614周佩德 数据库原理及应用 电子工业出版社 200415郑阿奇 SQLServer实用教程(第2版) 电子工业出版社 200516何玉洁 梁琦 数据库设计教程 机械工业出版社 2003