酒店客房管理系统数据库设计

合集下载

数据库课程设计宾馆客房信息管理系统

数据库课程设计宾馆客房信息管理系统

数据库课程设计宾馆客房信息管理系统(总34页)本页仅作为文档封面,使用时可以删除This document is for reference only-rar21year.March一、设计内容与设计要求1.设计内容:数据库系统原理的课程设计要求学生综合利用本课程的有关知识,在教师的指导下,利用特定的数据库设计环境,针对具体的问题,完成从系统的需求分析、数据库的概念设计、数据库的逻辑设计,到数据库实现等设计过程,最终实现一个较为完整的反映应用需求的数据库系统。

因此,在设计中,要求学生应该全面考虑各个设计环节以及它们之间的相互联系。

下面是各个设计阶段的具体内容。

⒈系统需求分析需求分析是数据库系统设计的一个重要的环节。

本阶段应该对整个应用情况作全面的、详细的调查,确定特定数据库应用环境下的设计目标,收集该应用环境下针对系统设计所需要的基础数据以及对这些数据的具体存储要求,从而确定用户的需求。

用户对数据库的需求包括:⑴处理需求。

即用户要完成什么处理功能等。

学生在设计中应根据具体的课题要求确定系统应该实现的功能,一些基本的功能通常是必须具备的,如用户的管理与维护,基本数据的维护,灵活的信息查询等。

⑵信息需求。

即在数据库中需要存储哪些数据。

学生应该根据具体的课题,认真分析有关的要求,确定本设计的信息需求。

⑶安全性和完整性功能。

实践中这是一个需要与用户不断交流才能逐步确定的需求。

本课程设计要求学生在自己的设计中能反映出基本的安全性和完整性功能。

本阶段的设计结果(即系统需求分析)应该在课程设计报告中进行详细描述,画出系统的数据流图,写出较为详细的数据字典,作为本课程设计的验收依据之一。

⒉数据库的概念设计数据库的概念设计是在需求分析的基础上,利用与用户双方都能理解的形式,设计出数据库的概念模型。

本课程设计要求学生采用E-R方法进行数据库的概念设计。

本设计阶段可分为:● 数据抽象。

即根据需求分析的结果,抽取出与本课程设计相关的特性。

酒店客房数据库设计

酒店客房数据库设计

酒店客房数据库设计1.系统概述1.1 酒店数据库开发前言随着计算机技术的飞速发展,信息时代的到来,信息改变了我们这个社会。

各类行业在日常经营管理各个方面也在悄悄地走向规范化和网络化。

作为计算机及网络应用的一部分,使用计算机对客房信息进行管理,具有手工管理所无法比拟的优点。

例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。

这些优点能够极大地提高客房经营管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。

且办事效率也是决定收入的一个关键因素。

现代化的酒店组织庞大、服务项目多、信息量大,使用传统人工的方式管理文件档案,这种管理方式几乎是不可能实现的。

要想提高劳动生产、降低成本、提高服务质量和管理水平,进而促进经济效益,必须借助计算机来对酒店客房进行现代化的信息管理。

所以就必须建立一个合适高效的酒店客房信息的数据库。

1.2 可行性分析现代化的酒店组织庞大、服务项目多、信息量大,要想提高劳动生产、降低成本、提高服务质量和管理水平,进而促进经济效益,必须借助计算机来进行现代化的信息管理。

一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多弊端,如:效率低、保密性差,容易出现差错等,且对于查询空房间及已定房间等极为不方便。

所以在工作效率方面来说建立一个这样的系统是完全可行的。

另外,客房管理系统是酒店经营管理中不可缺少的部分,它的内容对于经营的决策者和管理者来说都至关重要,所以客房管理系统、信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。

在酒店客房管理系统的主要任务是对酒店的客房进行管理,使用户能轻松地找到所需要的客房信息,提供订房和退房服务,并对酒店客房的业绩进行统计。

通常,酒店客房管理系统的数据库主要记录以下几个方面的信息。

(1) 记录用户信息:对酒店客房管理系统的使用员工进行管理,包括对员工的基本信息(如用户姓名、所属部门、用户类型等)进行检索、录入和修改。

酒店客房管理系统数据库设计

酒店客房管理系统数据库设计

酒店客房管理系统数据库设计一.概述酒店客房管理系统的主要任务是对酒店的客房进行管理,使用户能轻松地找到所需要的客房信息,提供订房和退房服务,并对酒店客房的业绩进行统计。

图1是一个典型的酒店客房管理系统的界面。

图1 典型的酒店客房管理系统界面在不同的酒店之间,酒店客房管理系统会存在一些差异。

通常,酒店客房管理系统的主要功能包括以下几个方面。

(1) 用户信息管理:对酒店客房管理系统的使用员工进行管理,包括对员工的基本信息(如用户姓名、所属部门、用户类型等)进行检索、录入和修改。

(2) 客房类型管理:用户可自定义客房类型,并对其进行管理,包括对客房类型的基本信息(如类型名称、面积、床位、价格等)进行检索、录入和修改。

(3) 客房信息管理:用户对客房信息进行管理,包括对客房的基本信息(如客房号、客房类型、客房位置等)进行检索、录入和修改。

(4) 客房经营管理:实现对客房的订房和退房管理,包括对客房的业务信息(如客房号、入房时间、退房时间、金额等)进行检索、录入和修改。

(5) 客户信息查询:用户可对入住过酒店的客户信息进行查询,包括对客户的基本信息(如身份证号、客户姓名、联系电话)进行检索。

(6) 经营状况统计:根据酒店客房的业务记录,用户可选择不同的统计方式对营业额进行统计。

从功能描述的内容来看,本实例可以实现六大功能。

我们根据这些功能,设计出系统的功能模块,如图2所示。

图2 酒店客房管理系统功能模块示意图二.需求分析需求分析阶段是酒店客房管理系统开发最重要的阶段。

开发者首先要了解和澄清用户的需求,然后严格地定义该系统的需求规格说明书。

这里我们将需求分析分为两个过程,一是理解需求,二是分析需求,下面分别讲解。

1.理解需求理解需求是在问题及其最终解决方案之间架设桥梁的第一步。

开发者只有和客户充分理解了需求之后才能开始设计系统,否则,对需求定义的任何改进,在设计上都必须大量的返工。

下面是经过双方调研后得到的需求规格说明。

酒店管理系统的数据库设计

酒店管理系统的数据库设计

目录:一.概念结构设计二.数据字典三.E-R图四.数据库逻辑结构设计一.概念结构设计建立一个酒店前台管理系统,方便酒店的信息管理和部门管理。

该前台管理系统要求具备以下几个主要功能1.登记客人的基本信息,进行客房分配,建立客人账单和客人在店数据文件;2.计算客人的购物,餐饮消费;3.计算客人的总消费金额,以便结账处理;4.保留熟客的历史档案信息。

二.数据字典客 户 信 息项数据类型 长度 含义说明性别 字符型 20 身份标识 姓名 字符型10性别标识 年龄 整形10身份证号码 整形50身份验证联系方式 整形50联系方式入住日期 日期型8名称 编号 组成 数据量 存取频率房源信息D2房号,楼层,状态,已预定,已清理.....500 不定期客户在店 D3门卡号,姓名,性别,证件号,入住日期.....200 不定期客户消费D4项目编号,类型,项目名,价格,计量单位....1000 不定期房型类 D6类别,名称,普通价,优惠价.....30 固定价格表D8编号,名称,类别,细目,价格.....100 固定三.E-R 图1.入住单预付款操作员姓名结算方式入住天数门卡号2.客户消费项目编号门卡号项目名计量单位预付款金额3.房型表优惠价普通价类别名称长包价4.房源信息楼层状态已清理已预定房号5.客户在店门卡号性别入住日期姓名证件号电话6.总E-R 图入住单房源信息房型表客户在店客户消费分配对应选择门卡号预付款入住天数操作员姓名结算方式已入住已清理已预订状态房号楼层占用普通价类别长包价优惠价名称登记门卡号性别入住日期姓名证件号电话数量时间项目编码金额预付款计量单位项目名门卡号四.数据库逻辑结构设计客户在店(门卡号 ,证件号,姓名,性别,入住日期,电)话 .....顾客消费(项目编码,门卡号,项目名,金额,计量单位,预付款....)入住单(门卡号,姓名,预付款,结算方式,入住天数,操作员.....))房源信息(房号,楼层,状态,已预定,已清理.....)房型表(类别,名称,普通价,长包价,优惠价.....。

酒店管理系统数据库设计

酒店管理系统数据库设计

酒店管理系统酒店管理系统第1页,共15页酒店管理系统一.酒店管理系统的需求分析用户的需求具体体现在各种信息的提供、用户的需求具体体现在各种信息的提供、保存、保存、更新和查询等方面,更新和查询等方面,这就要这就要求数据库结构能充分满足各种信息的输出和输入。

收集基本数据、数据结构以及数据处理的流程,得出本系统所处理的数据流程。

数据处理的流程,得出本系统所处理的数据流程。

针对一般酒店客房信息管理系统的需求,内容和流程分析,设计下面的数据项和数据结构:项和数据结构: 员工标准信息,包括的数据项有:员工编号,姓名,性别,出生日期,工龄,密码,电话,备注等。

密码,电话,备注等。

客户标准信息,包括的数据项有:客户编号,性名,性别,出生日期,身份证号,手机,备注等。

证号,手机,备注等。

客房标准信息,包括的数据项有:客房编号,类型编号,状态,备注等。

客房标准信息,包括的数据项有:客房编号,类型编号,状态,备注等。

类型标准信息,包括的数据项有:类型编号,类型名称,费用,总量,剩余量,备注等。

量,备注等。

订单标准信息,包括的数据项有:订单编号,员工编号,客户编号,客房编号,时间,押金,备注等。

号,时间,押金,备注等。

退房标准信息,包括的数据项有:员工编号,客户编号,客房编号,时间,备注等。

备注等。

二.概念结构设计:经过对酒店一般形式的调查,了解到了该系统包括的实体类型有:经过对酒店一般形式的调查,了解到了该系统包括的实体类型有: 员工、客户、客房等。

员工、客户、客房等。

经过分析画出了“酒店管理系统”数据库的E-R 图,分别如图1~图6所示:所示:图-1 员工实体员工实体E-R 图 员工员工 员工编号员工编号 姓名姓名 性别性别 出生日期出生日期 工龄工龄 密码密码电话电话备注备注图-2 客户实体客户实体E-R 图图-3 客房实体客房实体E-R 图客户客户客户编号客户编号 姓名姓名性别性别 出生日期出生日期 身份证号身份证号手机手机备注备注客房客房客房编号客房编号 类型编号类型编号 状态状态备注备注图-4 类型实体类型实体E-R 图图-5 订单实体订单实体E-R 图图-6 退房实体退房实体E-R 图 通过对个实体之间联系的分析,将局部E-T 图综合成全局E-R 图,类型类型类型编号类型编号 类型名称类型名称 费用费用总量总量 剩余量剩余量 备注备注订单订单订单编号订单编号 员工编号员工编号客户编号客户编号 客房编号客房编号 时间时间押金押金备注备注退房退房员工编号员工编号 客房编号客房编号客户编号客户编号 时间时间备注备注如图-7所示:所示:图-7 全局E-R 图三.逻辑结构设计:根据概念设计的结果,将其转换为关系模型:将其转换为关系模型:员工(员工编号,姓名,性别,出生日期,工龄,密码,电话,备注)员工(员工编号,姓名,性别,出生日期,工龄,密码,电话,备注) 客户(客户编号,性名,性别,出生日期,身份证号,手机,备注)客户(客户编号,性名,性别,出生日期,身份证号,手机,备注) 客房(客房编号,类型编号,状态,备注)客房(客房编号,类型编号,状态,备注)类型(类型编号,类型名称,费用,总量,剩余量,备注)类型(类型编号,类型名称,费用,总量,剩余量,备注)订单(订单编号,员工编号,客户编号,客房编号,时间,押金,备注)订单(订单编号,员工编号,客户编号,客房编号,时间,押金,备注) 退房(员工编号,客户编号,客房编号,时间,备注)退房(员工编号,客户编号,客房编号,时间,备注)四.物理结构设计:1.员工表列名列名数据类型数据类型是否允许为空是否允许为空默认值默认值是否为主键是否为主键员工编号员工编号 Char(10) 否 是 姓名姓名 Char(10) 否性别性别 Char(2) 否 男 出生日期出生日期 Smalldatetime工龄工龄 Int 密码密码 Char(6) 否 电话电话Char(20)客户员工客房客房 退房退房住宿住宿n离开离开m登记登记管理管理分类分类类型类型预定预定 登记登记订单订单n mmnnm mmnnmn备注备注Text2.客户表列名列名数据类型数据类型 是否允许为空是否允许为空默认值默认值 是否为主键是否为主键客户编号客户编号 Char(10) 否 是 姓名姓名 Char(10)否性别性别 Char(2) 否 男 出生日期出生日期 Smalldatetime 身份证号身份证号 Char(18) 否 手机手机 Char(20) 备注备注Text3.客房表列名列名 数据类型数据类型是否允许为空是否允许为空默认值默认值是否为主键是否为主键客房编号客房编号 Char(6) 否是类型编号类型编号 Char(2) 否 状态状态 Char(4) 备注备注Text4.类型表列名列名数据类型数据类型 是否允许为空是否允许为空默认值默认值是否为主键是否为主键类型编号类型编号 Char(2)否是类型名称类型名称 Char(16) 否 费用费用 Int 总量总量 Int 剩余量剩余量 Int 备注备注Text5.订单表列名列名数据类型数据类型 是否允许为空是否允许为空默认值默认值是否为主键是否为主键订单编号订单编号 Char(10) 否 是 员工编号员工编号 Char(10) 客户编号客户编号 Char(10) 客房编号客房编号Char(6)时间时间SmalldatetimeGETDA TE()押金押金 Int备注备注Text6.退房表列名列名数据类型数据类型 是否允许为空是否允许为空默认值默认值是否为主键是否为主键员工编号员工编号 Char(10) 客户编号客户编号 Char(10) 客房编号客房编号 Char(5) 时间时间 SmalldatetimeGETDA TE()备注备注Text题目: (一)1.用T-SQL 语句创建数据库CREATE DATABASE 酒店管理系统酒店管理系统 ON PRIMARY(NAME ='酒店管理系统_data1',FILENAME ='E:\SQL\酒店管理系统\酒店管理系统_data1.mdf',SIZE =5,MAXSIZE =UNLIMITED ,FILEGROWTH =2), FILEGROUP FGROUP(NAME ='酒店管理系统_data2',FILENAME ='E:\SQL\酒店管理系统\酒店管理系统_data2.ndf',SIZE =5,MAXSIZE =UNLIMITED , FILEGROWTH =2) LOG ON(NAME ='酒店管理系统_log1',FILENAME ='E:\SQL\酒店管理系统\酒店管理系统_log1.ldf',SIZE =1010, ,MAXSIZE =UNLIMITED , FILEGROWTH =4) GO2.用T-SQL 语句创建所有的表及设置主键CREATE TABLE 员工表员工表(员工编号员工编号CHAR (1010)) NOT NULL PRIMARY KEY , 姓名姓名CHAR (1010)) NOT NULL, 性别性别CHAR (2) NOT NULL, 出生日期出生日期 SMALLDATETIME , 工龄工龄INT , 密码密码CHAR (6) NOT NULL, 电话电话 CHAR (2020), ), 备注备注TEXT ) GOCREATE TABLE 客户表客户表 (客户编号客户编号CHAR (1010)) NOT NULL PRIMARY KEY , 姓名姓名CHAR (1010)) NOT NULL, 性别性别CHAR (2) NOT NULL, 出生日期出生日期SMALLDATETIME , 身份证号身份证号 CHAR (1818)) NOT NULL, 手机手机CHAR (2020), ), 备注备注TEXT ) GOCREATE TABLE 客房表客房表(客房编号客房编号CHAR (6) NOT NULL PRIMARY KEY , 类型编号类型编号CHAR (2) NOT NULL, 状态状态 CHAR (4), 备注备注TEXT ) GOCREATE TABLE 类型表类型表 (类型编号类型编号CHAR (2) NOT NULL PRIMARY KEY , 类型名称类型名称CHAR (1616)) NOT NULL, 费用费用 INT , 总量总量INT , 剩余量剩余量 INT , 备注备注TEXT ) GOCREATE TABLE 订单表订单表(订单编号订单编号CHAR (1010)) NOT NULL PRIMARY KEY , 员工编号员工编号CHAR (1010), ), 客户编号客户编号CHAR (1010), ), 客房编号客房编号CHAR (6), 时间时间SMALLDATETIME , 押金押金INT ,备注备注TEXT ) GOCREATE TABLE 退房表退房表 (员工编号员工编号CHAR (1010), ), 客户编号客户编号CHAR (1010), ), 客房编号客房编号CHAR (6), 时间时间SMALLDATETIME , 备注备注TEXT ) GO3.用T-SQL 语句给需要设外键的表设置外键ALTER TABLE 客房表客房表 ADD CONSTRAINT FK_类型表_客房表客房表 FOREIGN KEY (类型编号) REFERENCES 类型表(类型编号) GOALTER TABLE 订单表订单表 ADD CONSTRAINT FK_员工表_订单表订单表 FOREIGN KEY (员工编号) REFERENCES 员工表(员工编号) GOALTER TABLE 订单表订单表 ADD CONSTRAINT FK_客户表_订单表订单表 FOREIGN KEY (客户编号) REFERENCES 客户表(客户编号) GOALTER TABLE 订单表订单表 ADD CONSTRAINT FK_客房表_订单表订单表 FOREIGN KEY (客房编号) REFERENCES 客房表(客房编号) GOALTER TABLE 退房表退房表 ADD CONSTRAINT FK_员工表_退房表退房表 FOREIGN KEY (员工编号) REFERENCES 员工表(员工编号) GOALTER TABLE 退房表退房表ADD CONSTRAINT FK_客户表_退房表退房表 FOREIGN KEY (客户编号) REFERENCES 客户表(客户编号) GOALTER TABLE 退房表退房表 ADD CONSTRAINT FK_客房表_退房表退房表FOREIGN KEY (客房编号) REFERENCES 客房表(客房编号)GO4.用T-SQL语句给表加上check约束、UNIQUE约束、DEFAULT约束 ALTER TABLE 员工表员工表ADD CONSTRAINT CK_员工性别性别 IN('男','女'))员工性别 CHECK(性别GOALTER TABLE 员工表员工表ADD CONSTRAINT DF_员工性别性别员工性别 DEFAULT('男') FOR 性别GOALTER TABLE 客户表客户表ADD CONSTRAINT CK_客户性别客户性别 CHECK(性别性别 IN('男','女'))GOALTER TABLE 客户表客户表ADD CONSTRAINT DF_客户性别性别客户性别 DEFAULT('男') FOR 性别GOALTER TABLE 客户表客户表ADD CONSTRAINT UQ_身份证号身份证号 UNIQUE(身份证号)GOALTER TABLE 订单表订单表ADD CONSTRAINT DF_订房时间时间订房时间 DEFAULT(GETDATE()) FOR 时间GOALTER TABLE 退房表退房表ADD CONSTRAINT DF_退房时间退房时间 DEFAULT(GETDATE()) FOR 时间时间GO5.使用insert语句初始化数据库INSERT INTO 员工表(员工编号,姓名,性别,出生日期,工龄,密码,电话)VALUES('010*******','张三','男','1982-2-1',2,'123401','0758-*******')INSERT INTO 客户表(客户编号,姓名,性别,出生日期,身份证号,手机)VALUES('1009010001','王恒','女',461324************,,'136********')'1987-8-16',461324************INSERT INTO 客房表(客房编号,类型编号,状态)VALUES('120501','12','空')INSERT INTO 类型表(类型编号,类型名称,费用,总量,剩余量)VALUES ('12','豪华双人房','480','20','20')INSERT INTO 订单表(订单编号,员工编号,客户编号,客房编号,押金)VALUES ('1005010001','010*******','1009010001','120506','50')INSERT INTO 退房表(员工编号,客户编号,客房编号) VALUES ('010*******','1009010001','210301')(二)1、流程控制语句与函数(1)、用上while 语句根据入住天数,查询客户应付费用declare @y @y int int declare @x @x int int set @x @x==0 set @y @y==0while @x @x<><>datediff (day ,'2010-12-10',getdate ()) begin beginset set @x @x==@x @x++1 set set @y @y==@x @x**300 end endselect fare fare==@y(2)、用上if if……else 语句 查出普通房中,单人房多少钱。

酒店客房管理系统数据库设计报告

酒店客房管理系统数据库设计报告

酒店客房管理系统数据库设计报告摘要本文档旨在对酒店客房管理系统的数据库设计进行详细说明和解释。

酒店客房管理系统是一种旨在提供客房管理和预订服务的软件系统,通过有效的数据库设计可以提高系统的性能和扩展性。

本文档将介绍系统的需求分析,数据库设计思路,数据表设计,以及一些重要的数据关系和查询操作。

1. 引言酒店客房管理系统是为酒店提供客房管理和预订服务的系统,旨在提供高效、准确和可靠的客房管理功能。

数据库设计对于该系统的性能和扩展性起着至关重要的作用。

一个良好设计的数据库可以提高系统的运行效率,减少数据冗余和不一致性,并且能够轻松支持未来的扩展和功能增加。

2. 需求分析在进行数据库设计之前,我们首先需要对酒店客房管理系统的需求进行分析。

根据需求分析,我们可以确定系统需要存储的数据及其相关结构和关系。

酒店客房管理系统的主要功能包括客房管理、客户管理和预订管理。

其中客房管理包括客房类型、客房设施和客房价格的管理;客户管理包括客户信息的管理;预订管理包括客房预订信息的管理。

此外,系统还需要支持查询客房的可用性、查询客户的预订信息等功能。

3. 数据库设计思路基于需求分析,我们可以得到以下的数据库设计思路:•将客房、客户和预订信息分别作为不同的数据表存储。

•使用主键和外键设计有效的数据关系。

•使用索引提高查询性能。

•使用适当的数据类型和约束确保数据的完整性和一致性。

•根据实际需求进行合理的数据表分割和合并。

4. 数据表设计根据数据库设计思路,我们可以设计以下几个数据表:4.1 客房表客房表包含客房的基本信息,如客房号、客房类型、客房设施和价格等。

表结构如下:字段名类型约束room_id int 主键room_number varchar 唯一,非空type_id int 外键,参考客房类型表facility varcharprice decimal4.2 客房类型表客房类型表用于存储不同客房类型的信息,如单人间、双人间等。

宾馆客房管理系统数据库设计报告(精选五篇)

宾馆客房管理系统数据库设计报告(精选五篇)

宾馆客房管理系统数据库设计报告(精选五篇)第一篇:宾馆客房管理系统数据库设计报告宾馆客房管理系统数据库设计报告摘要:本系统是宾馆客房管理系统,该报告主要介绍了数据库的设计,建立,主要功能的实现。

数据库系统包括员工管理、客房管理、顾客管理几个大块。

主要实现了登记功能,预订功能,多种方法查询顾客功能,查看客房状态功能,操作人员对系统的修改功能,以及结账报表功能。

一、需求分析(1)具有方便的登记、结账功能,以及预订客房的功能,能够支持团体登记和团体结账。

(2)能快速、准确地了解宾馆内的客房状态,以方便管理者决策。

(3)提供多种手段查询客人的信息。

(4)具备一定的维护手段,有一定权利的操作人员在密码的支持下才可以更改房价、房间类型、增减客房。

(5)完善的结账报表系统。

二、E-R关系图三、关系表本系统有八个表,分别是职工信息表(staffinfo)、顾客信息表(custmerinfo)、经理信息表(managerinfo)、客房信息表(roominfo)、客房状态表(roomstatus)、入住表(checkin)、退房表(checkout)、结账订单表(orderinfo)。

1,职工信息表(staffinfo)2,顾客信息表(custmerinfo)3,经理信息表(managerinfo)4,客房信息表(roominfo)5,客房状态表(roomstatus)6,入住表(checkin)7,退房表(checkout)8,结账订单表(orderinfo)四、范式分析本系统所有的表均为BCNF,职工和经理表由各自的工作编号为主码,并且可以决定其他所有属性,顾客表由身份证号做为主码,同理,客房的房间号可以决定其他所有属性。

五、功能分析 1,登记功能本系统采用存储过程实现登记功能,顾客前来预订客房,由工作人员调用存储过程向顾客表中插入该顾客信息,完成登记。

create procedure register@身份证号 varchar(20),@姓名 varchar(10),@性别 char(5),@电话 char(15), char(10)asinsert into custmerinfovalues(@身份证号,@姓名,@性别,@电话,@员工编号)@员工编号2,预订功能采用存储过程实现,由工作人员调用存储过程,在入住表中插入相应信息,并且设计触发器,在预定的同时在客房状态表中修改客房状态为“已入住”。

如家酒店客房服务管理系统数据库设计

如家酒店客房服务管理系统数据库设计

1.客房表room类型大小非空约束默认描述ID Number 4 √客房号(主键)TypeID Number 4 √客房类型编号IsAvailble char 1 √否客房是否空闲状态,包括是和否两种状态Notes varchar 50 备注1.客房类型表ROOMTYPE字段名称类型大小读写非空约束默认描述TypeID Number 4 w/r √客房类型编号(主键)Type varchar 20 w/r √客房类型,包括标准间,商务间,三人间等等(3)客人表CUSTOMER:记录客人身份证号、客人姓名、客人性别等信息字段名称类型大小非空约束默认描述Id Number 10 √客人编号(主键)CardId Number 20 √唯一客人身份证号Name varchar 20 √客人姓名Sex char 1 √男性别(男/女)Telephone Number 8 √联系电话Address varchar 50 地址Notes varchar 50 备注(4)职工表staff字段名称类型大小非空约束默认描述Id Number 20 √工作证号码(主键)Name varchar 20 √职员姓名Password varchar 20 √111 密码Sex char 1 √女性别(男/女)CardId Number 20 √唯一身份证号Level varchar 20 √职务Notes varchar 50 备注(5)住宿表字段名称类型大小非空约束默认描述id Number 4 √住宿记录编号(主键)RoomId char 4 √入住房间CustomId Number 10 √客人编号CheckInTime DateTime √入住时间CheckInTime DateTime √离开时间Due Number 4 √应付款Deposit Number 4 押金数Payment Number 4 实际支付金额Change Number 4 找零Notes varchar 50 备注。

数据库技术课程设计--客房管理系统数据库设计

数据库技术课程设计--客房管理系统数据库设计

客房管理系统数据库设计系科:管理信息系专业:计算机软件技术班级:软件3111 学号: 0326111019姓名:史平安时间: 2013年 6月指导教师:杨洋一、设计的目的和意义二、客房管理系统功能模块1.数据录入功能2.数据查询功能3.数据统计功能三、数据库设计1.数据库与数据表设计(1)个人信息表定义(2)客房信息数据表定义(3)客房类型数据表定义2、数据完整性设计(1)主键约束、非空值约束(2)CHECK 约束(3)使用缺省值(4)唯一约束(5)外键约束(6)规则(7)标识列3、视图、触发器和存储过程设计(1)客人选择客房处理(2)客人入住登记处理(3) 客人离店退房处理(4)统计某年份每月的客房销售数据一、设计的目的和意义在当今经济和商务交往日益频繁的状况下,宾馆服务行当正面临客流量骤增的压力。

越来越多的宾馆饭店都认识到传统的管理方法已经不能适合当今社会的需要,必须借助先进的计算机信息技术对宾馆服务进行管理。

“客房管理系统”可以说是整个宾馆计算机信息管理系统的中心子系统,因为宾馆最主要的功能就是为旅客提供客房。

设计客房管理系统数据库,可以涉及到大多数SQL Server数据库的重要数据库对象、重要功能和特性,比如:视图、触发器和存储过程等。

由此,通过这个课程设计可以加深对这些SQL Server数据库知识的学习、理解,积累在实际工程应用中运用各种数据库对象的经验。

二、客房管理系统功能模块系统功能需求分析是数据库分析设计的前提,由于本设计为数据库设计,所以简化前期的需求分析,现将系统功能模块描述如下。

1、数据录入功能:在本系统中提供客人信息登记功能。

可以录入客人的姓名、性别、年龄、身份证号码、家庭住址、工作单位、来自地的地名、入住时间、预计入住天数、客房类别、客房号、离店时间以及缴纳押金金额等信息。

在客人退房时,系统根据输入的离店时间以及客房单价自动计算客人住宿费金额。

2、数据查询功能系统需要提供以下查询功能:1)查某类客房的入住情况及空房情况,显示所有该类客房空房数目和客房号。

宾馆客房管理系统数据库课程设计

宾馆客房管理系统数据库课程设计

5、宾馆客房管理系统(难度系数1)
功能介绍:
1)客房数量的基本设置(例如:一楼有101,102……109九个标准间,二楼有201,202……208八个三人间,……七楼有701,702……706六个套房)根据实际考察,再进行房间价格,入住手续办理等各环节业务流程设置
2)办理入住手续(客人姓名、身份证号,家庭住址,入住客房,入住时间,预住时间,押金(>=当天客房费用+200押金))
3)客房门卡管理系统(入住时发卡;每天进行一次刷卡登记,必要时需要补交房费,否则不能够正常开锁;退房时交卡结算)
4)办理退房手续
5)日、周、月核算报表
6)网上预定及处理
注:要求图形化交互界面,友好易用。

客房房间号楼层单价类别
客人信息客人姓名、身份证号,家庭住址,入住客房,入住时间,预住时间,押金
1.客房表(客房号,楼层,客房类型,入住单价,可入住人数,清洁周期) room
2.客户表(入住编号,客户姓名,客房号,入住日期,入住天数,每天单价,入住压金,接待员)
3.订房表(订房编号,客户姓名,客户号,预计入住日期,预计入住天数,订房压金,订房日期,接待员)
4.清洁表(客房号,清洁记录,清洁人,清洁日期)
5.结算表(入住编号,入住天数,入住金额,结算员,结算日期
6.报表(入住编号。

房间号房间类别实际价押金总额操作员入住时间)。

数据库客房管理系统 课程设计报告

数据库客房管理系统 课程设计报告

目录1 需求分析 (2)1.1系统背景分析 (2)1.2组织结构分析 (3)1.3业务流程分析 (4)1.3.1业务简介 (4)1.3.2业务流程图 (5)1.4数据流程分析 (7)1.4.1符号说明 (7)1.4.2数据流程图 (7)1.5数据字典 (10)1.5.1 数据项描述 (11)1.5.2 数据结构 (11)1.5.3 数据流的描述 (12)1.5.4 处理逻辑的描述 (13)1.5.5 数据存储的描述 (14)1.5.6 外部实体的描述 (14)2 概念结构设计 (14)2.1E-R图 (15)2.1.1符号说明 (15)2.1.2实体图 (15)2.1.3 实体—联系图 (16)2.2CDM图 (16)3 逻辑结构设计 (17)3.1概念模型转换为关系模型 (17)3.1.1 实体转换 (17)3.1.2 联系转换 (17)3.2数据库物理模型 (18)4 数据库的实施与运行 (18)5 参考文献 (28)6 课程设计总结 (28)1 需求分析1.1 系统背景分析1.1.1产生背景及意义众所周知,在经济飞速发展的今天,人们生活水平和消费意识得到了普遍提高,这无疑刺激了旅游业的发展,与此同时,人员流动规模不断扩大,客房需求数量急剧增加,有关客房管理的各种信息量也在不断成倍增长。

面对庞大的信息量,为了提高客房管理工作的效率。

客房信息管理系统应运而生。

传统手工的客房信息管理,管理过程繁琐而复杂,执行效率低,并且易于出错。

庆幸的是,伴随计算机技术的飞速发展和信息时代的到来,信息改变了我们这个社会,各行各业的日常经营管理也在悄悄地发生变化。

而客房管理的信息化程度体现在将计算机与信息技术应用于经营与管理,以现代化工具代替传统手工作业。

无疑,使用信息化管理使客房管理更先进、更高效、更科学,信息交流更迅速。

这些优点能够极大地提高客房经营管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。

酒店管理系统数据库设计

酒店管理系统数据库设计

酒店管理系统数据库设计1. 客房信息表(Room)该表包含酒店客房的各项信息,包括客房号、类型、价格、状态等。

字段:- Room_ID: 客房号(主键)- Type: 客房类型- Price: 房间价格- Status: 房间状态(已预订、空闲等)2. 客户信息表(Customer)该表包含顾客的个人信息,用于酒店管理系统进行客户管理与预订。

字段:- Customer_ID: 客户ID(主键)- Name: 客户名称- Address: 客户地址3. 订单信息表(Order)该表包含顾客预订酒店客房的订单信息,包括入住日期、离店日期、房间号、顾客ID等。

字段:- Order_ID: 订单号(主键)- Room_ID: 客房号(外键,关联Room表)- Customer_ID: 客户ID(外键,关联Customer表)- CheckIn_Date: 入住日期- CheckOut_Date: 离店日期- Total_Price: 订单总价- Payment_Method: 支付方式4. 房间设施表(Room_Facility)该表包含客房的设施信息,如空调、电视、Wi-Fi等。

字段:- Room_ID: 客房号(外键,关联Room表)- Facility_Name: 设施名称5. 员工信息表(Employee)该表包含酒店员工的个人信息。

字段:- Employee_ID: 员工ID(主键)- Name: 员工姓名- Position: 员工职位以上是一个简单的酒店管理系统数据库设计示例。

在实际应用中,可能还会涉及其他表和字段,如酒店楼层信息表、房间图片表等。

根据实际需求,数据库设计需要进一步细化和优化。

某宾馆客房管理系统——数据库课程设计报告

某宾馆客房管理系统——数据库课程设计报告

数据库原理课程设计报告设计题目某宾馆客房管理系统专业班级学号学生姓名起止日期年月日至月1 日摘要宾馆客房管理系统是对宾馆管理的现代化、网络化管理手段,逐步摆脱宾馆管理的人工管理方式,拓展经营空间,降低运营成本,提高管理和决策效率而开发的。

宾馆客房管理系统是宾馆经营管理中不可缺少的部分它的容对于经营的决策者和管理者来说都至关重要,所以客房管理系统、信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。

但一直以来人们使用传统人工的方式管理文件档案。

这种管理方式存在着许多弊端如:效率低、保密性差容易出现差错等。

且对于查询空房间及已定房间等极为不方便。

在当今时代,这些完全可以改用计算机来代替人的手工操作。

作为计算机及网络应用的一部分使用计算机对客房信息进行管理,具有手工管理所无法比拟的优点。

例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。

这些优点能够极大地提高客房经营管理的效率。

也是企业的科学化、正规化管理与世界接轨的重要条件。

且办事效率也是决定收入的一个关键因素。

宾馆客房管理系统主要包括前台管理系统和后台管理系统两大部分,基本包含了宾馆主要业务部门,初步实现了对顾客服务和进行财务核算所需要的各个功能。

它包括客户信息管理、客房信息管理、入住和退房管理、客房类型管理、费用管理、价目信息管理等6大功能模块,并提供了对各功能模块的查询和更新功能。

其中客户信息管理、入住和退房管理是系统开发的重点。

本系统由问题描述、系统需求分析、概念设计、逻辑设计、物理结构设计、触发器设计、存储过程设计、视图设计、数据库实施和维护组成。

目录1.问题描述 (1)1.1背景 (1)1.2编写目的 (1)1.3功能要求 (1)2.可行性分析 (1)3.需求分析 (2)3.1需求分析 (2)4系统概要设计 (3)4.1数据流图 (3)4.2数据字典 (7)5.概念结构设计 (8)5.1E-R图 (8)5.2实体及属性的定义 (9)6.逻辑结构设计 (11)7.物理结构设计 (12)8.触发器设计 (12)9.数据库的实施和维护 (13)10.结束语 (15)1.问题描述1.1要求某宾馆客房管理系统实现客房类型、价目信息、客房信息的管理;实现客户信息的管理;实现入住和退房管理;实现费用管理;创建触发器,实现入住和退房时自动修改客房的状态;创建存储过程统计某段时间各种类型的客房的入住时间合计和费用合计;创建视图查询某一时刻没有入住的房间信息;建立数据库相关表之间的参照完整性约束。

客房数据库设计

客房数据库设计

客房数据库设计1数据库概念结构设计通过以上对数据字典的设计,总结出3个数据库实体,其E-R图如图5至图7所示。

图5 :客户实体图图6:客房实体图图7:客房类型实体图该系统的综合E-R图如图8所示。

图8:系统综合E-R图.2数据库逻辑结构设计根据上一节中的E-R图可以设计出以下的数据库表:客房表(房间号,房间类型,价格,房态,标志,配置,使用设置,营业日期,备注)客房住宿登记表(凭证号码,姓名,证件名称,证件号码,详细地址,出差事由,房间号,客房类型,联系电话,客房价格,住宿日期,住宿时间,住宿天数,宿费,折扣,应收宿费,预收金额,提醒日期,退宿日期,备注,标志,日期,时间,结款方式,退宿时间,提醒时间,摘要,BZ)退房登记表(凭证号码,姓名,证件名称,证件号码,详细地址,工作单位,房间号,客房类型,客房价格,住宿日期,住宿时间,住宿天数,宿费,折扣或招待,折扣,应收宿费,杂费,电话费,会议费,存车费,赔偿费,金额总计,预收宿费,退还宿费,退房日期,退房时间,日期,时间,备注,联系电话,BZ)挂账登记表(ID,日期,挂账单位,摘要,住宿金额,欠款金额,还款金额,金额累计,姓名,证件号码,票号,时间,序号,房间标准,房间价格)用户表(用户名,密码)用户权限表(客房预定,住宿登记,追加押金,调房登记,退宿登记,客房管理,客房查询,房态查看,挂帐查询,客户结款,预定房查询,住宿查询,退宿查询,宿费提醒,登记预收报表,客房销售报表,客房销售统计报表,操作员设置,密码设置,数据库备份,权限设置,用户名)宾馆客房管理系统的详细设计与实现1数据库的实现1、创建数据库:打开Microsoft SQL Server 2000的企业管理器,创建一个空数据库,命名为Hotel,如图9所示。

图9:数据库实现图2、在Hotel中创建六张表,分别为客房住宿登记表,退房登记表,挂账表,客房信息表用户表,用户权限表,其结构如图10至图15所示。

酒店客房管理系统数据库课程设计报告

酒店客房管理系统数据库课程设计报告

酒店客房管理系统数据库课程设计报告酒店客房管理系统是一个非常重要的系统,涵盖了客户预订,房间管理,收银结算和前台工作等关键领域。

在当今数字化的时代,酒店客房管理系统的设计和开发变得越来越重要。

在这篇文章中,我们将讨论酒店客房管理系统数据库课程设计报告。

首先,我们需要了解酒店客房管理系统的功能。

一个完整的酒店客房管理系统包括以下功能:客房管理、预订管理、收费管理、房态管理、客户管理、餐饮管理、报表管理、管理决策和安全管理等多个功能模块。

在这些功能中,我们将根据现代企业的需求和技术,设计和开发一个完善的酒店客房管理系统数据库。

第二步,我们需要确定数据库设计的标准。

我们将按照范式理论设计基于数据库标准化的酒店客房管理系统。

在此基础上,我们将使用结构化语言SQL语言为该系统创建一个特定的数据库结构。

我们还将使用相关的设计工具,如Power Designer和Dia等,来进行数据库设计和建模。

第三步,我们将设计数据字典。

在这个阶段,我们将定义实体间和实体内的关系,以及属性描述。

酒店客房管理系统将涉及到多个数据表,每个表都需要独立而准确的属性描述。

这样,我们将确保每个数据单元都被条理化地描述。

第四步,我们将开始为酒店客房管理系统建立数据库。

创建数据库前,我们将定义数据库的类型(如MySQL、Oracle或SQL),并根据实践需求建立创建主机。

接下来,我们将创建所有表结构和其关联,并填充数据。

我们将使用合适的查询语句和存储过程,确保数据的存储,更新和删除。

最后,我们将定义数据库请求和权限系统。

为酒店客房管理系统定义数据库请求和权限系统是非常重要的。

为了确保数据的完整性和安全性,我们将实施完整的安全策略和权限控制,包括使用高低权限用户和可追踪性路宁等手段。

这些措施将有助于确保系统的可靠性和稳健性。

总之,酒店客房管理系统数据库课程设计报告是一个非常复杂的项目,需要对功能需求和数据库标准有很深的了解。

在本文中,我们介绍了酒店客房管理系统数据库的设计和建立步骤。

通用酒店客房管理系统数据库设计说明书

通用酒店客房管理系统数据库设计说明书

通用酒店客房管理系统数据库设计说明书目录1引言 (3)1.1编写目的 (3)1.2开发背景 (3)1.3参考资料 (3)2实体-联系图(E-R图) (3)3 数据库设计 (4)3.1数据表 (4)3.2视图 (11)3.3存储过程 (13)1 引言1.1 编写目的本说明书是在《酒店客房管理系统需求规格说明书》的基础上,对系统的概念结构模型进行分析,进而进行数据库设计,为建立数据库提供依据。

同时,本说明书也是项目完成后验收的重要依据。

1.2 开发背景酒店行业的激烈竞争使得争取客源、提高酒店入住率、制定正确营销策略已经成为一项重要的任务,而借助于当前蓬勃发展的IT工具来拓展销售能力,创造客观的经济效益已经成为许多酒店的首选。

作为一种有效的统计分析手段,计算机管理系统发挥其强大的优势,在数据保存、数据交换方面的快速可靠,是手工操作所不能完成的。

本酒店客房管理系统主要针对酒店管理中最核心的客房管理,旨在提高酒店的管理效率,减免手工处理的繁琐与误差,及时、准确地反映酒店的工作情况、经营情况,从而提高酒店的服务质量,获得更好的经济效益;实现客房管理的规范化、自动化。

1.3 参考资料2 实体-联系图(E-R图)3 数据库设计3.1 数据表数据表清单(TableList):楼层信息表(FloorInfo):客房类型表(RoomType):客房信息表(RoomInfo):商品设置表(CommoditySet):会员信息表(MememberInfo):宾客预订表(ReserveInfo):预订客房信息表(ReserveRoomInfo):时间(计费)设置表(TimeSet):宾客入住表(RegisterInfo):宾客信息表(GuestInfo):入住客房信息表(RegisterRoomInfo):换房记录表(ChangeRoom):客史资料表(GuestHistoryInfo):员工信息表(StaffInfo):其它商品消费明细表(CommodityConsume):消费项目明细清单表(ConsumeList):宾客结帐表(PayBill):消费退单明细表(AlterBill):日营业状况统计表(DayBusiness):3.2 视图视图清单(ViewList):客房信息视图(V_RoomInfo):预订客房信息视图(V_ReserveRoomInfo):入住客房信息视图(V_RegisterRoomInfo):宾客信息查询视图(V_GuestQuery):宾客结帐视图(V_PayBill):其它商品消费明细视图(V_CommodityConsume):消费退单明细视图(V_AlterBill):3.2 存储过程存储过程清单(ProcedureList):计算应收帐款(P_TotalAccount):CREATE procedure P_TotalAccount @RegisterNo varchar(10)ASBEGIN TRANdeclare @daycount float,@flag int,@arrivetime datetimedeclare @start int,@halfday int,@wholeday int,@extra int,@hour intIF NOT EXISTS(SELECT * FROM PayBill WHERE RegisterNo=@RegisterNo) insert into PayBill(RegisterNo) values(@RegisterNo)update PayBill set LeaveTime=getdate() where RegisterNo=@RegisterNo update PayBill set PayTime=getdate() where RegisterNo=@RegisterNo --计算住店总天数SELECT @arrivetime=ArriveTime FROM RegisterInfo WHERE RegisterNo=@RegisterNoSELECT @start=CheckIn FROM TimeSetSELECT @halfday=CheckOutHalfDay FROM TimeSetSELECT @wholeday=CheckOutWholeDay FROM TimeSetSELECT @extra=ExtraTime FROM TimeSetSELECT @hour=datediff(hh,@arrivetime,getdate())SELECT @daycount=@hour/24--时间超过设定的某个值,追加一天if @hour-(@hour/24)*24>@wholeday+isnull(@extra,0)-@start SELECT @daycount=@daycount+1--时间超过设定的某个值,追加半天else if @hour-(@hour/24)*24>@halfday+isnull(@extra,0)-@start SELECT @daycount=@daycount+0.5--总天数未满半天算半天if @daycount=0SELECT @daycount=0.5--计算房费declare @room decimal(10,2)declare @num varchar(10),@price decimal(10,2),@ischange varchar(5) --声明游标declare mycur cursorfor select RoomNo,RealPrice,IsChangeRoom from V_RegisterRoomInfo where RegisterNo=@RegisterNoopen mycurfetch next from mycur into @num,@price,@ischangeSELECT @room=0WHILE (@@FETCH_STATUS=0)BEGINIF @ischange='是' --在住店期间换过房BEGINdeclare @oldprice decimal(10,2),@changetime datetime,@changeday floatSELECT @oldprice=OldRealPrice,@changetime=ChangeTimeFROM ChangeRoomWHERE RegisterNo=@RegisterNo and NewRoomNo=@num--计算换房后在新客房住的天数SELECT @hour=datediff(hh,@changetime,getdate())SELECT @changeday=@hour/24if @hour-(@hour/24)*24>@wholeday+isnull(@extra,0)-@start SELECT @changeday=@changeday+1else if @hour-(@hour/24)*24>@halfday+isnull(@extra,0)-@startSELECT @changeday=@changeday+0.5update RegisterRoomInfo set StayDay=@changeday where RegisterNo=@RegisterNo and RoomNo=@numupdate ChangeRoom set OldStayDay=@daycount-@changeday where RegisterNo=@RegisterNo and NewRoomNo=@num--计算房费SELECT@room=@room+(@daycount-@changeday)*@oldprice+@changeday*@price ENDELSEBEGINupdate RegisterRoomInfo set StayDay=@daycount where RegisterNo=@RegisterNo and RoomNo=@numSELECT @room=@room+@daycount*@priceENDfetch next from mycur into @num,@price,@ischangeENDclose mycurdeallocate mycurupdate PayBill set RoomIncome=@room where RegisterNo=@RegisterNo--计算其他商品消费金额declare @other decimal(10,2),@commodity decimal(10,2)SELECT @other=0--声明游标declare mycur2 cursorfor select TotalAccount from V_CommodityConsumewhere RegisterNo=@RegisterNoopen mycur2fetch next from mycur2 into @commodityWHILE (@@FETCH_STATUS=0)BEGINSELECT @other=@other+@commodityfetch next from mycur2 into @commodityENDclose mycur2deallocate mycur2--减去已退单的商品消费declare @alter decimal(10,2)--声明游标declare mycur3 cursorfor select TotalAccount from V_AlterBillwhere RegisterNo=@RegisterNoopen mycur3fetch next from mycur3 into @alterWHILE (@@FETCH_STATUS=0)BEGINSELECT @other=@other+@alterfetch next from mycur3 into @alterENDclose mycur3deallocate mycur3update PayBill set OtherIncome=@other where RegisterNo=@RegisterNo--计算消费总金额update PayBill set TotalAccount=@room+@other where RegisterNo=@RegisterNo--查询预付金额declare @prepayment decimal(10,2)SELECT @prepayment=Prepayment FROM RegisterInfo WHERE RegisterNo=@RegisterNoupdate PayBill set Prepayment=isnull(@prepayment,0) where RegisterNo=@RegisterNo--计算应付金额update PayBill set Account=TotalAccount-Prepayment where RegisterNo=@RegisterNoCOMMITGO统计日营业状况(P_DayStatistics):CREATE procedure P_DayStatisticsASBEGIN TRANdeclare @date datetimedeclare mycur cursorfor select str(YEAR(PayTime),4)+'-'+str(MONTH(PayTime),2)+'-'+str(DAY(PayTime),2) from V_PayBillwhere IsPaid='是'open mycurfetch next from mycur into @dateWHILE (@@FETCH_STATUS=0)BEGINIF NOT EXISTS(SELECT * FROM DayBusiness WHERE Date=@date) insert into DayBusiness(Date) values(@date)--根据指定日期统计日营业额(已结帐的)declare @guestamount int,@roomincome decimal(10,2),@otherincome decimal(10,2),@day decimal(10,2)SELECT@guestamount=SUM(GuestAmount),@roomincome=SUM(RoomIncome),@otherincome=SUM(OtherIncome),@day=SUM(TotalAccount)FROM V_PayBill WHERE IsPaid='是' and PayTime between @date andDATEADD(dd,1,@date)update DayBusinesssetGuestAmount=@guestamount,RoomIncome=@roomincome,OtherIncome=@otherinc ome,DayIncome=@daywhere Date=@datefetch next from mycur into @dateENDclose mycurdeallocate mycurCOMMITGO保存客史资料(P_GuestHistoryInfo):CREATE procedure P_GuestHistoryInfo@RegisterNo varchar(10),@Name varchar(20),@ArriveTime datetimeASBEGIN TRANdeclare @identityno varchar(20)SELECT @identityno=IdentityNo FROM GuestInfo WHERE RegisterNo=@RegisterNo and Name=@Name--若登记资料时没填身份证号IF @identityno=nullBEGINinsert into GuestHistoryInfoselectName,Sex,Nationality,IdentityNo,WorkPlace,Phone,Address,@ArriveTime,g etdate(),Remarkfrom GuestInfowhere RegisterNo=@RegisterNo and Name=@NameENDELSEBEGIN--若存在该宾客的历史资料,则更新记录IF EXISTS(SELECT * FROM GuestHistoryInfo WHERE IdentityNo=@identityno)BEGINupdate GuestHistoryInfoset RecentArriveTime=@ArriveTime,RecentLeaveTime=getdate()where IdentityNo=@identitynoENDELSE--若不存在该宾客的历史资料,则插入该宾客的信息insert into GuestHistoryInfoselectName,Sex,Nationality,IdentityNo,WorkPlace,Phone,Address,@ArriveTime,g etdate(),Remarkfrom GuestInfowhere RegisterNo=@RegisterNo and Name=@Name ENDCOMMITGO。

酒店客房管理系统--数据库课程设计报告

酒店客房管理系统--数据库课程设计报告

数据库程序设计课程设计报告课题: 酒店客房管理系统姓名:杨伏学号: 2同组姓名:彭旭专业班级:计科14102指导教师:汤海蓉设计时间: 2016.12.24——2016.12.30评阅意见:评定成绩:指导老师签名:年月日1、开发背景随着信息的不断飞速发展,信息技术已逐渐成为各种技术的基础,信息也成为企业具有竞争力的核心要素。

企业的生存和发展依靠正确的决策,而决策的基础就是信息,所以企业竞争力的高低完全取决于企业对信息的获取和处理能力。

企业要准确、快速的获取和处理信息,企业信息化是必然的选择。

企业必须加快内部信息交流,改进企业业务流程和管理模式,提高运行效率,降低成本,提高竞争力,信息化建设是企业适应社会发展的要求。

随着我国改革开放的不断推进,人民生活水平日益提高,旅游经济蓬勃发展,这一切都带动了酒店行业的发展。

再加上入境旅游的人也越来越多,入境从事商务活动的外宾也越来越多。

传统的手工已不适应现代化酒店管理的需要。

及时、准确、全方位的网络化信息管理成为必需。

酒店是一个服务至上的行业,从客人的预定开始,到入住登记直至最后退房结账,每一步骤都要保持一致性的服务水准,错失一步,会令其辛苦经营的形象功亏一篑。

要成为一间成功的酒店,就必须作到宾至如归,面对酒店业内激烈的竞争形势,各酒店均在努力拓展其服务领域的广度和深度。

虽然计算机并不是酒店走向成功的关键元素,但它可以帮助那些真正影响成败的要素发挥更大的效用。

因此,采用全新的计算机网络和管理系统,将成为提高酒店的管理效率,改善服务水准的重要手段之一。

2、系统描述2.1 系统需求根据酒店客房管理系统的理念,此酒店客房管理系统必须满足以下需求:(1)系统管理:提供简单的酒店工作人员的添加用户和修改密码功能。

(2)客房信息管理:具有设置酒店客房类型和房间信息的功能,包括对客房标准的添加、修改、删除以及对客房信息的添加、删除、查找、修改,方便用户快速、准确地了解酒店的客房状态,以便订房和退房。

酒店客房管理信息系统设计

酒店客房管理信息系统设计

酒店客房管理信息系统设计目录一、E-R设计二、关系模型三、客房管理信息系统结构功能图四、数据库结构设计(一)数据库软件选择(二)数据库表一、E-R设计1、预订E-R图2、入住E-R图3、挂账E-R图4、退宿E-R图5、查询E-R图6、客房所属E-R图7、E-R总图二、关系模型由以上E-R图,导出以下关系模型:预订(凭证号码、房间号、日期、姓名、联系电话、工作单位、预订日期、预住天数、押金、预住人数、备注、预订服务员和时间)入住(凭证号码、姓名、性别、年龄、证件名称、证件号码、工作单位、姓名1、性别1、年龄1、证件名称1、证件号码1、工作单位1、房间号、住宿日期、预住天数、退宿日期、备注、日期、时间、押金、来宿服务员、是否结账)退宿(凭证号码、姓名、房间号、住宿日期、住宿时间、实际宿费、结款方式、折扣、应收宿费、金额总计、押金、住宿天数、退还宿费、酒水费、电话费、赔偿费、其他费用、退宿日期、退宿时间、备注、操作员)挂账(凭证号码、日期、挂账单位、摘要、住宿金额、欠款金额、还款金额、金额累计、姓名、证件名称、证件号码、时间、是否结清)客房(房间号、类型编号、房态、配置、使用设置、营业时间、备注)房间类型(类型编号、客房类型、价格、备注)挂账单位(单位编号、单位全称、简称、地址、邮政编码、传真、电话、联系人、联系人电话)员工(员工编号、姓名、性别、密码、职务、聘用日期、薪金、备注)三、客房管理信息系统结构功能图三、数据库结构设计(一)数据库软件选择Oracle9i软件,其功能非常强大,实现复杂,维护困难,考虑员工的技能,不易采用该软件,而由微软公司研发的SQL2000数据库管理软件,具有良好的数据管理功能,面向多用户,事务处理功能,界面的友好性,易安装性等特点,成为选择的对象。

(二)数据库表。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

任务书一、数据库原理课程设计的任务1)通过本课程设计的训练,使学生掌握数据库技术的实际应用以及数据库信息管理系统的设计方法与开发过程;初步掌握数据库需求分析方法,掌握概要设计、逻辑设计和物理设计的步骤和技巧,理解并掌握数据库系统的整个开发过程。

2)通过课程设计,掌握数据库开发工具的使用以及综合编程调试的能力,结合数据库原理的基本理论,选用一种现代关系数据库系统,设计一个具体的信息管理系统,具备基本的数据库编程能力,为以后能进行数据库系统设计、开发与维护打下良好的基础。

3)提升工程实践能力、团队协作精神、交流与沟通能力;4)通过规化的实验报告,培养学生良好的文档习惯以及撰写规文档的能力。

二、课程设计的基本容..目录1.数据库需求分析·41.1设计目的··41.2系统功能分析··41.3功能模块设计··52.数据库概念结构设计·62.1概念模型··62.2 E-R模型··63.数据库逻辑结构设计·83.1关系模型设计··93.2数据模型的优化··93.3子模式设计··94.数据库物理结构设计·94.1存取方式设计··94.2存储结构设计··105.数据库安全性、完整性设计·10 5.1主要视图设计··105.2用户权限··106.数据库实现·116.1编码实现··116.1.1主要数据表的创建·116.1.2主要视图的创建·146.1.3索引的创建·146.1.4创建用户权限·146.1.5创建存储结构·157.数据录入调试及运行·168.课程设计总结体会·189.参考文献·191.数据库需求分析1.1设计目的本酒店客房管理系统是为了满足现代酒店的管理需求、提高对顾客的服务质量、方便酒店的管理和运营而设计的一款多功能易操作的基于B/S模式的数据库管理系统。

由于当前的多数酒店都是以人工的方式来统计管理酒店里的各项事务,其中带来了很多的不便,使得酒店的管理也相对比较困难。

对于酒店的营业情况的统计,要耗费很大的人力来进行统计分析。

人工方式的管理也很容易出现管理上的失误。

随着计算机技术和互联网技术的发展,设计一种可以实现自动化管理酒店事务的系统是当前酒店行业的一个迫切要求。

本款酒店客房管理系统就是应运而生的一款快捷酒店管理系统,它可以使酒店人员很方便的管理酒店的各项事务,并将管理的失误降到最低。

本系统通过对不同的人员分配不同的权限可以很好的防止客户以及酒店一些信息的泄露。

酒店会计还可以通过本系统快捷地统计出酒店在特定阶段的营业情况,可以根据分析的结果进行相应业务的调整。

顾客可以通过本系统对入住的体验进行评价或者提出相关的建议,可以使酒店的服务更加完善。

1.2系统功能分析本系统是为方便酒店管理和日常的营业需要,加入了酒店房间预定功能、顾客入住登记功能、员工维修客房设施记录功能、顾客体验反馈功能、营业情况统计功能。

酒店房间预订系统:顾客可根酒店客房的一些信息,根据自身需求预定相应的客房,并支付一定的押金,顾客可根据情况选择入住或者退订已预订的房间。

顾客入住登记功能:当顾客预定好房间选择入住时,系统进入住登记阶段,用户登记自身信息,并根据预定的订单信息办理入住房间。

员工维修记录功能:当酒店里的服务设施发生故障时,维修人员对故障进行维修,并记录维修的设施名称及其维修时间,以及维修所产生的费用,最后将数据存储在数据库中,并打印凭条以便上报。

顾客体验反馈系统:当顾客要退房离开时,顾客可根据自身体验对酒店的设施和服务进行相应的评价和对一些问题提出相应的建议便于酒店对此做出改进。

营业情况统计功能:酒店人员可根据特定阶段的营业状况,对消费记录进行分析,得出相应阶段营业盈亏的原因,并从中提取一些好的建议,以利于酒店的盈利。

1.3功能模块设计--系统功能模块图—●有关客房标准的制定、标准信息的输入,包括标准编号、标准名称、房间面积、床位数量、住房单价、是否有空调、电视机、以及单独卫生间等。

●客房标准信息的修改、查询等。

●客房基本信息的输入,包括客房编号、客房类型、客房位置、客房单价、备注等。

●客房基本信息的查询、修改,包括客房编号、客房类型、客房位置、客房单价、备注等。

●剩余客房信息的查询等。

●订房信息的输入,包括客房编号、客房种类、客房位置、客房单价、顾客、顾客、入住日期、折扣、备注信息等。

●订房信息的修改和查询,包括客房编号、客房种类、客房位置、客房单价、顾客、顾客、入住日期、折扣、备注信息等。

●入住信息的输入,包括客房编号、客房种类、位置、客房单价、顾客、顾客、入住日期、折扣、结算日期、备注信息等。

●入住信息的修改和查询,包括客房编号、客房种类、客房位置、客房单价、顾客、顾客、入住日期、折扣、结日期、备注信息等。

●员工信息的输入,包括员工工号,员工,性别,年龄,手机,酒店编号信息等。

2.数据库概念结构设计2.1概念模型●客房标准信息:客房编号、客房名称、床位数量、住房单价。

●客房信息:客房编号、客房种类、客房位置、客房单价,客房状态。

●订房信息:订单编号、客房种类、顾客、顾客、订房时间、折扣。

●顾客信息:顾客、顾客、手机。

●入住信息:流水单号、客房编号、客房类型、顾客、入住时间、结算时间、职工工号、结算备注。

●职工信息:工号、职工、职工性别、职工年龄、入职时间、职务。

●酒店信息:酒店编号、酒店名称、酒店。

●物品信息:物品编号、物品名称、物品类别、物品单价、库存。

●维修信息:流水单号、维修时间、维修物品、房间编号、维修费用。

2.2 E-R图客房状态客房标准信息E-R图职工信息E-R图顾客信息E-R图物品信息E-R图酒店信息E-R图手机号库存房间编号实体间联系E-R图3.数据库逻辑结构设计3.1 关系模型设计客房(客房编号,客房名称,客房类型,床位数量,住房单价,酒店编号)顾客(顾客,顾客,手机)员工(员工工号,员工,员工性别,员工年龄,手机,入职时间,职务)酒店(酒店编号,酒店名称)物品(物品编号,物品名称,物品单价,物品类型)入住(流水单号,房间名称,顾客号,入住时间,退房时间,住宿时长,住宿费用)预定(流水单号,顾客号,房间类型,预定时间,预定入住时长,押金,预定状态)维修(流水单号,员工工号,房间编号,维修设施名称,维修费用,维修时间)消费(流水单号,入住单号,消费物品名称,消费量,消费金额)评价(流水单号,顾客号,评论时间,评论星级,评论容,酒店编号)3.2 数据模型的优化客房信息关系模型中的主属性可推出所有其他非主属性,模式中不存在传递依赖和部分依赖所以符合3NF.顾客信息关系模型中的关系模型中的主属性可推出所有其他非主属性,模式中不存在传递依赖和部分依赖所以符合5NF.员工信息关系模型中的主属性可推出所有其他非主属性,模式中不存在传递依赖和部分依赖所以符合3NF.酒店信息在酒店信息关系模式中,因仅有两个属性且属性间不存在部分依赖,传递依赖所以该模式设计合理符合第三式。

物品信息在物品信息关系模式中,主属性可推出关系中的所有非主属性,关系中不存在传递依赖和部分依赖,且每一个决定因素都包含码,该关系模式满足BCNF式。

入住信息3.3 子模式设计为方便系统的使用,以及开发人员对程序的设计和顾客身份信息的安全性,本数据库系统采用子模式的设计方法来提高数据的使用效率和安全保障。

在酒店查询客房信息的时候设计一个子模式仅供系统用户查询到客房名称,客房类型,床位数量,住房单价等一些主要信息,而客房编号和酒店编号是为了系统的灵活性和数据库后台的方便操作而设计的用户可忽略。

在系统人员查询顾客身份信息时,系统可添加子模式使系统用户只能顾客信息的前六位和后四位,以防止顾客信息的泄露。

在用户查询入住信息,评价信息,消费信息以及维修信息时,流水单号都可忽略,减少用户的信息阅读量。

4. 数据库物理结构设计4.1存取方式设计由于本系统的数据信息的查询操作频繁,所以在部分表中建立索引以提高查询效率。

客房信息表修改删除插入操作较少,查询操作较为频繁,所以在该表中以客房编号上建立聚簇索引以提高查询效率。

顾客信息表由于插入操作较为频繁,所以不适合建立聚簇索引,采用在用户属性上建立非聚簇索引的方法提高数据的查询效率。

入住信息表和预定信息表要频繁的进行插入和查询操作,入住信息表和预定信息表中的流水单号具有有序的特性且插入的操作仅发生在表的末尾,所以适合在该模式的流水单号属性上建立聚簇索引便于数据的查询。

由于职工表的在本系统使用频率较少且数据量较少,添加索引反而使系统在索引的维护上耗费大量时间,所以不建议添加索引。

评价表由于要经常的插入和查询数据,且该表的数据量随营业时间增加而增加,所以要添加索引以提高系统对数据的查询效率。

4.2存储结构设计本系统的数据的存储结构可根据数据的规模的进行设计,对于小型的酒店建议采用单个硬盘的存储方式,减少设计开销。

对于大型的酒店,数据量较大,建议使用多个磁盘或使用磁盘阵列的形式来存储数据。

具体的设计要根据实际情况进行详细的设计。

5. 数据库安全性、完整性设计5.1主要视图设计顾客加密信息(顾客号,顾客)顾客只显示前六位和后四位。

客房基本信息(客房名称,客房类型,床位数量,住房单价)入住基本信息(房间编号,顾客号,入住时间,退房时间,住宿时长,住宿费用)只显示前六位和后四位。

预定基本信息(顾客号,房间类型,预定时间,预定入住时长,押金,预定状态)只显示前六位和后四位。

顾客消费总金额(客房名称,客房类型,入住时间,退房时间,住宿时长,住宿费用,消费总金额)5.2 用户权限酒店经理:对于客房信息表具有查看,修改,添加权限。

对于顾客信息表具有查看权限。

对于入住和预定信息表具有查看权限。

对于员工信息表具有查看,修改,插入和删除权限。

酒店会计:对于客房信息表具有查看结算信息表具有查看和插入权限。

对于员工表具有查看权限。

酒店前台:对于客房信息表具有查看权限,对其中的客房的入住状态具有修改权。

对于顾客信息表具有插入权。

对于入住表和预定表具有插入权。

顾客:对客房信息某些记录具有查询权。

6. 数据库实现6.1编码实现6.1.1主要数据表的创建CREATE DATABASE [酒店客房信息管理系统] ON PRIMARY(NAME = N'酒店客房信息管理系统',FILENAME=N'C:\ProgramFiles\MicrosoftSQLServer\MSSQL10_50.MSSQLSERVER\MSSQL\ DATA\酒店客房信息管理系统.mdf' ,SIZE = 3072KB ,FILEGROWTH = 1024KB)LOG ON(NAME = N'酒店客房信息管理系统_log',FILENAME=N'C:\ProgramFiles\MicrosoftSQLServer\MSSQL10_50.MSSQLSERVER\MSSQL\ DATA\酒店客房信息管理系统_log.ldf' ,SIZE = 1024KB ,FILEGROWTH = 10%)create table 物品(物品编号 char(5) primary key,物品名称 char(30) not null,物品单价 money,物品类型 char(10));create table 顾客(号 char(18) primary key,char(20) not null,手机号 char(11));create table 酒店(酒店编号 char(4) primary key,酒店名称 char(20));create table 客房(客房编号 char(4) primary key,客房名称 char(4) not null,客房类型 char(8) check(客房类型 in ('标准间','豪华间')),客房状态 char(4) check(客房状态 in('入住','空闲')),床位数 int,客房单价 money);create table 员工(员工工号 char(6) primary key,员工 char(20) not null,员工性别 char(2) check(员工性别 in('男','女')),员工年龄 int check(员工年龄>18 and 员工年龄<60),员工职务 char(20) not null,手机号 char(11));create table 维修(维修流水单号 int primary key IDENTITY (1, 1),维修房间编号 char(4) foreign key references 客房(客房编号), 维修员工工号 char(6) foreign key references 员工(员工工号), 维修物品名称 char(20),维修时间 date,维修费用 money);create table 评论(酒店编号 char(4),顾客号 char(18),评论时间 date,评论星级 int,评论容 char(500) not null);create table 预定(流水号 char(8) primary key,预定客房编号 char(4) foreign key references 客房(客房编号), 顾客号 char(18) foreign key references 顾客(号),员工工号 char(6) foreign key references 员工(员工工号),预定时间 date,预订时长 int,预定状态 char(10),退订时间 date,押金 money);create table 入住(流水单号 int primary key IDENTITY (1, 1),入住客房编号 char(4) foreign key references 客房(客房编号), 顾客号 char(18) foreign key references 顾客(号),入住时间 date,退房时间 date,住宿费用 money,);create table 消费单(消费流水单号 int primary key IDENTITY (1, 1),入住流水单号 int foreign key references 入住(流水单号),物品编号 char(5) foreign key references 物品(物品编号),消费量 int,消费金额 money);6.1.2主要视图的创建--创建客房基本信息视图--create view 客房基本信息asselect 客房名称,客房类型,床位数,客房单价from 客房--统计顾客住宿的消费费用--create view 消费统计asselect 流水单号, 客房名称, 客房类型, 入住时间,退房时间,DATEDIFF(day,入住时间,退房时间) as 住宿时长,住宿费用from 入住 join 客房 on 客房.客房编号=入住.入住客房编号--创建顾客加密信息视图--create view 顾客加密信息asselect =replace(号,substring(号,7,8),'********'),,手机号from 顾客.--创建预订概要信息便于查询--create view 预定概要信息asselect 预定客房编号,顾客号,预定时间,客房类型,押金,预定状态from 预定6.1.3索引的创建因其他表在建立主键时以默认添加,此处不再添加额外索引。

相关文档
最新文档