酒店客房管理系统数据库设计
酒店客房管理系统的设计与实现

酒店客房管理系统的设计与实现1. 引言酒店客房管理系统是一种帮助酒店管理客房信息并提供相关服务的软件系统。
该系统能够方便酒店管理人员对客房进行预订管理、入住登记、客房状态跟踪等操作,提高客房的利用率和服务质量。
本文将介绍酒店客房管理系统的设计与实现。
2. 功能需求分析酒店客房管理系统的功能主要包括以下几点:1.客房信息管理:包括客房类型、客房价格、客房状态等信息的录入和查询。
2.客房预订管理:支持客户对客房进行预订操作,同时能够进行客房的冲突检测,避免重复预订。
3.客房入住管理:记录客户的入住信息,包括入住登记、客房分配、押金收取等。
4.客房状态跟踪:及时更新客房的状态信息,包括客房是否已打扫、客房是否已空净等。
5.客房费用管理:包括客房的消费记录、押金退还、费用结算等功能。
6.统计报表生成:能够根据需求生成各类统计报表,如客房利用率、客房收入等。
3. 系统设计3.1 数据库设计酒店客房管理系统的数据库设计是系统设计的关键部分。
系统需要设计以下几个主要的数据表:•客房表:存储客房的基本信息,包括客房ID、客房类型、价格、状态等字段。
•客户表:存储客户的基本信息,包括客户ID、姓名、联系方式等字段。
•预订表:存储客户的预订信息,包括客户ID、客房ID、预订时间、预订状态等字段。
•入住表:存储客户的入住信息,包括客户ID、客房ID、入住时间、退房时间、押金等字段。
•消费表:存储客户的消费记录,包括客户ID、客房ID、消费金额、消费时间等字段。
3.2 系统架构设计酒店客房管理系统的架构设计应该采用分层结构,主要包括表示层、业务逻辑层和数据存储层。
•表示层:负责与用户交互,展示界面并接收用户输入,使用HTML、CSS和JavaScript等前端技术完成。
•业务逻辑层:负责处理用户请求、业务逻辑判断、调用数据存储层从数据库中读取或写入数据等,使用Java或其他后端语言实现。
•数据存储层:负责与数据库进行交互,读取或写入数据,可以使用关系数据库(SQL Server、MySQL)或非关系数据库(MongoDB、Redis)等进行存储。
数据库课程设计报告酒店客房管理

数据库课程设计报告酒店客房管理酒店客房管理对于整个酒店的运营和管理具有至关重要的作用。
为了更好地实现酒店客房管理的规范和自动化,我们设计了一个数据库课程项目——酒店客房管理系统,该系统可以实现客房预定、入住、退房、客房管理等功能,以下是详细的报告:一、需求分析1.1用户需求为酒店客户提供方便的客房预定、入住、退房等服务,实现客户信息管理,在用户交互方面适合不同需求客户的使用。
1.2系统功能能够完成相应的客房数据管理、客房预定、订单管理、及时的预订余量查看、用户信息管理等。
1.3技术实现使用MySQL数据库和Java语言实现酒店客房管理系统,采用B/S架构,提供Web端和PC端双端服务。
二、系统设计2.1设计思路在本项目中我们采用了MySQL数据库和Java语言编程,并采用了B/S架构的设计思路。
B/S架构优点是可以快速开发和更新同步体现,操作系统和浏览器的兼容性都不错。
我们采用java作为系统开发语言,通过Web端和PC端实现数据管理,提供高效的客房管理服务,并添加了合理的权限控制和身份验证。
2.2系统模块和功能该系统模块包括客房管理、订单管理、客户管理三大模块,分别实现以下功能:(1)客房管理:包含客房搜索、客房预订、查看及修改客房信息等功能;(2)订单管理:包含订单查询、订单取消、订单结算、订单信息更新等功能;(3)客户管理:包含客户信息查询、添加、删除、修改等功能。
三、系统实现3.1数据库搭建我们选择MySQL数据库作为本项目的数据库,搭建了相应的数据表,包括员工表、客房表、订单表、客户表等。
3.2后端代码实现我们使用Java语言实现了后端代码,包括实现客房预订、查看客房信息、订单结算等功能,并为管理人员设计了权限控制和身份验证功能。
3.3前端界面实现我们采用了基于Bootstrap的前端UI框架,提供了简约、美观的Web页面,以及基于Java Swing的PC客户端,实现了用户与系统的交互功能。
数据库原理课程设计客房预订系统

客房预订系统
设计要求
• 概念设计 • 逻辑设计 • 要求:关系模式满足第三范式
一.需求分析(流程图)
顾客
反馈给客户以确认
需要预定
查询
无空房
有空房
不能
用户要求的客 房能被提供吗
服务台
能 财务部
有 基本信息
无
有误吗
客房管理部
Hale Waihona Puke 文字描述:1. 顾客可以用电话或上网注册的方式预定。 其方式不同,但提交的内容是相同的:需 要的房间类型,房间数,客人人数,预定 时间,退房时间等。
理 部
收 入 客
部
1
房
身
联 系 电家 话庭
地 址
退 房 日 期
订 房 日 期
当 值 服 务 员 工 号
服 务 员 姓客 名房
设 备
管理 位 置
N
客房
今 日 状 态
客 房 单 价
客 房 种 类
客 房 编 号
份 证 号
三.逻辑设计
• 将E-R图转化为关系模式(不是最终的)
– 顾客(姓名,性别,身份证号,联系电话,家 庭住址,客房种类,房间数,订房日期,退房 日期,服务台台号,当值服务员工号) 3NF
2. 服务台查询客房管理部,看看是否有满足 客人要求的客房。如果有,则记录下客人 的需要,同时客房管理部通知财务部准备 收预约金,同时反馈给客人确认信息。
3. 如果客人要求的客房无法提供,则通知顾 客无法满足。
二.概念设计
• 实体:
– 顾客 – 服务台 – 客房 – 客房管理部 – 财务部
• 局部视图 – 顾客-预定-服务台 – 服务台-查询-客房管理部 – 客房管理部-管理-客房
宾馆客房管理系统数据库设计报告(精选五篇)

宾馆客房管理系统数据库设计报告(精选五篇)第一篇:宾馆客房管理系统数据库设计报告宾馆客房管理系统数据库设计报告摘要:本系统是宾馆客房管理系统,该报告主要介绍了数据库的设计,建立,主要功能的实现。
数据库系统包括员工管理、客房管理、顾客管理几个大块。
主要实现了登记功能,预订功能,多种方法查询顾客功能,查看客房状态功能,操作人员对系统的修改功能,以及结账报表功能。
一、需求分析(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.酒店实体2.客房实体客房实体包含以下属性:客房ID、客房类型、客房价格、客房状态等。
客房与酒店之间是多对一的关系,即一个酒店可以有多个客房,但一个客房只属于一个酒店。
3.员工实体员工实体包含以下属性:员工ID、员工姓名、员工职位、员工工资等。
员工与酒店之间是多对一的关系,即一个酒店可以有多个员工,但一个员工只属于一个酒店。
4.顾客实体5.订单实体订单实体包含以下属性:订单ID、顾客ID、酒店ID、客房ID、订单状态等。
订单与顾客、酒店和客房之间是多对一的关系,即一个订单属于一个顾客、一个酒店和一个客房。
二、酒店管理系统的关系分析通过对实体之间的关系进行分析,可以确定各个实体之间的关系。
1.酒店与客房之间的关系一个酒店可以有多个客房,一个客房只属于一个酒店,这是一对多的关系。
酒店与客房之间通过酒店ID进行关联。
2.酒店与员工之间的关系一个酒店可以有多个员工,一个员工只属于一个酒店,这是一对多的关系。
酒店与员工之间通过酒店ID进行关联。
3.订单与顾客之间的关系一个订单属于一个顾客,一个顾客可以有多个订单,这是一对多的关系。
订单与顾客之间通过顾客ID进行关联。
4.订单与酒店之间的关系一个订单属于一个酒店,一个酒店可以有多个订单,这是一对多的关系。
订单与酒店之间通过酒店ID进行关联。
5.订单与客房之间的关系一个订单属于一个客房,一个客房可以有多个订单,这是一对多的关系。
订单与客房之间通过客房ID进行关联。
三、酒店管理系统的数据表设计根据以上的实体分析和关系分析,可以设计出数据库的数据表。
1.酒店表2.客房表字段:客房ID、客房类型、客房价格、客房状态、酒店ID等。
宾馆客房管理系统数据库课程设计

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. 客房信息表(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大功能模块;并提供了对各功能模块的查询和更新功能..其中客户信息管理、入住和退房管理是系统开发的重点..本文讲述的是基于客户/服务器的宾馆管理系统;实现了宾馆管理的信息化..本系统涉及数据库方面的技术;采用SQL语言来实现..本系统由系统需求分析、概念设计、逻辑设计、物理结构设计、触发器设计、数据库实施和维护组成..目录1.问题描述 (1)1.1背景 (1)1.2功能要求 (1)2.需求分析 (1)2.1需求分析 (1)2.2系统功能模块图 (3)2.3数据流图 (3)2.4数据字典 (6)3.概念结构设计 (7)3.1E-R图 (7)3.2实体及属性的定义 (7)4.逻辑结构设计 (8)5.物理结构设计 (9)6.触发器设计 (10)7.数据库的实施和维护 (10)8.结束语 (12)8.答辩与成绩考核 (13)1.问题描述1.1背景随着宾馆业竞争的加剧;宾馆之间客源的争夺越来越激烈;宾馆需要使用更有效的信息化手段;拓展经营空间;降低运营成本;提高管理和决策效率..传统的宾馆计算机管理系统主要包括前台管理系统和后台管理系统两大部分;基本包含了宾馆主要业务部门;初步实现了对顾客服务和进行财务核算所需要的各个功能..但传统的宾馆管理基于财务管理为主线的设计理念;无法满足宾馆全面信息化管理的需要..现代宾馆酒店业迅速发展;新的管理观念与模式层出不穷..宾馆客房管理系统亦随着宾馆管理理念的发展而发展..宾馆客房管理系统依旧采用了先进的数据库理论;多媒体技术;软件工程理念等;从基层;中层;高层三个管理者层次为切入点;以成本分析;预测;控制为一线;形成一套上下贯通;操作便捷的酒店系统解决方案;科学地将宾馆各种日常业务完美的结合在一起;为管理及决策提供了强有力的支持..其对客人个性化服务及全面彻底的信息化;使企业电算化水平提升到一个新的更高层次;提供大量丰富的基于企业管理经营过程中实际的数据..1.2功能要求1客人基本信息的录入;2客人基本信息的查询、修改、增加、删除等;3客房相关信息的录入;包括房间号、收费标准、床位、类别等;4客房类别标准的制定、类别信息的输入;5客房基本信息的查询、修改、删除等;6住房信息的录入;包括房间号、客人姓名等;7退房信息的更新;2.需求分析2.1需求分析1. 处理对象系统要处理的对象包括信息管理、客户信息管理、客房信息管理、入住和退房管理、客房类型管理、费用管理、价目信息管理等7个方面;各个对象包含的信息如下所示:1信息管理:可以对于各种信息的查询;个人信息可以查看自己的私人信息;还可以对自己的私人信息进行修改..用户信息查看用户的个人信息;对用户的信息进行增、删、查、改..2客户信息管理:可以新建客户;输入客户的身份证号码、姓名、性别、出生日期和地址等信息;可以对于客户的信息进行相应的修改;还可以对客户的消费信息进行统计..3客房信息管理:可以在相应的房间类型下面进行添加相应的房间;对相应的房间进行删除;查看空房以及客房的情况..4入住和退房管理:客户可以入住相应的类型房型下的空房;然后可以退房;系统自动将相应的订单状态置为失效;入住状态置为已退房;将相应房间的状态置为空房..5客房类型管理:管理员可以对相应的房型进行各种属性的修改;可以按照需求添加相应的房型;管理员、工作人员都可以查看相应的房型信息;管理员有需要时可以删除相应的房型;系统自动将该房型下的房间删除..6费用管理:管理员、工作人员都可以查看相应的费用信息;管理员有需要时可以对宾馆的收入与支出进行查询或修改..7价目信息管理:可以查看客房的收费标准;管理员可以对客房价格进行查询与修改;工作人员可以查看可风的价目信息..2. 系统功能分析某宾馆需要建立一个住房管理系统;需求分析结果如下:1宾馆要求该系统能实现住房信息管理、客户信息管理等功能;2一个房间有多个床位;同一房间内的床位具有相同的收费标准..不同类型的房间的床位收费标准可能不同;3每个房间有房间号、收费标准、床位数目等信息;4每位客人有身份证号码、姓名、性别、出生日期和地址等信息;5对每位客人的每次住宿;应该记录其入住日期、退房日期和预付款额信息;6管理系统可查询出客人住宿相关信息、房间信息..3.安全性和完整性要求安全性先通过试图机制;不同的用户只能访问系统授权的视图;这样可以满足系统数据一定程度上的安全性;在通过用户授权机制;用户登录来识别用户级别;根据这个级别来分配用户权限;达到数据更高层次的安全保密功能..系统完整性要求系统中数据的正确性以及相容性..可以通过建立主、外键;使用check约束;或者通过使用触发器和级联更新..2.2系统功能模块图系统功能模块图;如图2.2所示..图2.2 系统的功能模块图2.3数据流图1.业务流程图;如图2.3.1所示..图2.3.1 客房管理业务流程图1顶层数据流程图;如图2.3.2所示..客人入住、图2.3.2 顶层数据流程图2第二层数据流图;如图2.3.3所示..图2.3.3 第二层数据流图3宾馆开房数据流程图;如图2.3.4所示..缴费单图2.3.4 宾馆开房数据流程图4客户续房数据流程图;如图2.3.5所示..补交费用图2.3.5 客户续房数据流程图5客人退房数据流程图;如图2.3.6所示..图2.3.6 客人退房数据流程图2.4数据字典表2-5. 客户住宿Living信息:表2-6. 客房物品Roomitem信息:3.概念结构设计3.1 E-R图各实体之间的E-R图;如图3-1所示..图3-1 实体之间的E-R图3.2实体及属性的定义3.2.1类别实体E-R图:客户信息实体的E-R图;如图3-2所示..图3—2 客户信息实体的E—R图客房信息实体的E-R图;如图3-3所示..图3—3 客房信息实体的E—R图客户住宿实体的E-R图;如图3-4所示..图3—4 客户住宿实体的E—R图客房物品信息实体的E-R图;如图3-5所示..图3—5 客房物品实体的E—R图4.逻辑结构设计具体的基本E-R图向关系模型的转化结果如下:客户Travellers Tno;Tname;Tsex;Tid客房Rooms Rno;Rstyle;Rprice;Rstate;Rtel客户住宿Living Tno;Rno;Tcomedate;Tleftdate;Ttime;Tamount客房物品RoomitemRno;Ritemno;Ritemname;Ritemprice;Ritemstate;Ritemnum数据库模式定义表4-2 客房基本信息表Rooms表4-3 客房物品信息表Roomitem表4-4 客户住宿信息Living5.物理结构设计数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程;在这个阶段要完成两大任务..(1)确定数据库的物理结构;在关系数据库中主要是存储方法和存储结构..(2)对物理结构进行评价;评价的重点是时间和空间效率..CREATE UNIQUE INDEX Travno ON TravellersTnoCREATE UNIQUE INDEX Roomno ON RoomsRnoCREATE UNIQUE INDEX Ritemno ON RoomitemRitemnoCREATE UNIQUE INDEX Livno ON LivingTno6.触发器设计触发器C1的功能为当有一条信息插入Living表中时;触发Rooms表中的Rstate='满'.. 代码如下:create trigger c1on tb_Living for insertasif existsselect from tb_Living;tb_Rooms where tb_Living.Rno=tb_Rooms.Rnobeginupdate tb_Roomsset Rstate='满'where Rno=select Rnofrom insertedEnd触发器C2的功能为当从Living表中删除一条信息时;触发Rooms表中的Rstate='空'.. 代码如下:create trigger c2on tb_Living for deleteasif existsselect from tb_Living;tb_Rooms where tb_Living.Rno=tb_Rooms.Rno beginupdate tb_Roomsset Rstate='空'where Rno=select Rnofrom deletedEnd7.数据库的实施和维护7.1 建立数据库、数据表、索引1.建立数据库Create database db_hotel;2.建立数据表1客户基本信息表Travellers的建立..Create table tb_TravellersTno int CheckTno>=0 and Tno<=9999;Tname char10 not null;Tsex char2 CheckTsex in ‘男’;’女’;Tid char20 not null;Primary key Tno;2 客房基本信息表Rooms的建立..Create table tb_RoomsRno int not null;Rstyle char10 not null;Rprice intRstate char 10Rtel char15PRIMARY KEY Rno;3客房物品信息表Roomitem的建立..Create table tb_RoomitemRitemno int not null;Rno int not null;Ritemname char20 not null;Ritemprice intRitemstate char10Ritemnum intPrimary key RitemnoForeign key Rno references tb_RoomsRno;4 客户住宿信息Living的建立..Create table tb_LivingTno int not null;Rno int not null;Tcomedate datetime not null;Tleftdate datetime not null;Ttime intTamount intPrimary key Tno;Rno;Foreign key Tno references tb_TravellersTno; Foreign key Rno references tb_RoomsRno;3.建立视图1查询客户Travellers信息的视图定义如下..Create view view_Travellers 客户编号;客户姓名;客户性别;客户身份证号As select Tno;Tname;Tsex;TidFrom tb_Travellers2查询客房Rooms信息的视图定义如下..Create view view_Rooms 客房号;客房类型;客房单价;客房状态;客房As select Rno; Rstyle; Rprice; Rstate; RtelFrom tb_Rooms3查询客户住宿Living信息的视图如下..Create view view_Living 客房编号;客房号;入住日期;结算日期;住宿时间;房费As select Tno;Rno;Tcomedate;Tleftdate;Ttime;TamountFrom tb_Living4查询客房物品Roomitem信息的视图定义如下..Create view view_Roomitem客房号;客房物品编号;客房物品名称;物品状态;客房物品单价;物品数量As select Rno;;Ritemno;Ritemname;Ritemstate;Ritemprice;RitemnumFrom tb_Roomitem4.建立索引CREATE UNIQUE INDEX Travno ON tb_TravellersTnoCREATE UNIQUE INDEX Roomno ON tb_RoomsRnoCREATE UNIQUE INDEX Ritemno ON tb_RoomitemRitemnoCREATE UNIQUE INDEX Livno ON tb_LivingTno8.结束语通过此次数据库的课程设计;真正达到了学与用的结合;增强了对数据库方面应用的理解;对自己今后参与开发数据库系统积累了不少经验;在实验过程中;从建立数据开始;对数据库设计理念及思想上有更高的认识;从需求分析;到概念设计和逻辑设计;E-R图的表示;数据字典的创建;懂得了不少有关数据库开发过程中的知识;增强了自己在数据库中应用SQL语言的灵活性;其中包括;插入、删除、修改、查询;牵涉表和表之间的联系;主建与外主键的定义;约束项的设置;使逻辑更严密;在学习过程中;我也能过上网查了不少资料;也看了一些别人设计的旅馆管理信息系统的设计报告;学以致用;自我创新;独立完成了这份自己的报告;从中在学到用;从用又到学;不断修改;系统更新..虽然不能达到完善系统;但也做到了尽善尽美;加强理论学习对完善系统会有很多帮助;不管怎么说;对这次做的课程设计自己觉得还算满意..9.答辩与成绩考核。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
任务书一、数据库原理课程设计的任务1)通过本课程设计的训练,使学生掌握数据库技术的实际应用以及数据库信息管理系统的设计方法与开发过程;初步掌握数据库需求分析方法,掌握概要设计、逻辑设计和物理设计的步骤和技巧,理解并掌握数据库系统的整个开发过程。
2)通过课程设计,掌握数据库开发工具的使用以及综合编程调试的能力,结合数据库原理的基本理论,选用一种现代关系数据库系统,设计一个具体的信息管理系统,具备基本的数据库编程能力,为以后能进行数据库系统设计、开发与维护打下良好的基础。
3)提升工程实践能力、团队协作精神、交流与沟通能力;4)通过规范化的实验报告,培养学生良好的文档习惯以及撰写规范文档的能力。
二、课程设计的基本内容目录1.数据库需求分析 (4)1.1设计目的 (4)1.2系统功能分析 (4)1.3功能模块设计 (5)2.数据库概念结构设计 (6)2.1概念模型 (6)2.2 E-R 模型 (6)3.数据库逻辑结构设计 (8)3.1关系模型设计 (9)3.2数据模型的优化 (9)3.3子模式设计 (9)4.数据库物理结构设计 (9)4.1 存取方式设计 (9)4.2存储结构设计 (10)5.数据库安全性、完整性设计 (10)5.1主要视图设计 (10)5.2用户权限 (10)6.数据库实现 (11)6.1编码实现 (11)6.1.1主要数据表的创建 (11)6.1.2主要视图的创建 (14)6.1.3索引的创建 (14)6.1.4创建用户权限 (14)6.1.5创建存储结构 (15)7.数据录入调试及运行 (16)8.课程设计总结体会 (18)9.参考文献 (19)1•数据库需求分析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.酒店信息在酒店信息关系模式中,因仅有两个属性且属性间不存在部分依赖,传递依赖所以该模式设计合理符合第三范式。
物品信息在物品信息关系模式中,主属性可推出关系中的所有非主属性,关系中不存在传递依赖和部分依赖,且每一个决定因素都包含码,该关系模式满足BCN F范式。
入住信息3.3子模式设计为方便系统的使用,以及开发人员对程序的设计和顾客身份信息的安全性,本数据库系统采用子模式的设计方法来提高数据的使用效率和安全保障。
在酒店查询客房信息的时候设计一个子模式仅供系统用户查询到客房名称,客房类型,床位数量,住房单价等一些主要信息,而客房编号和酒店编号是为了系统的灵活性和数据库后台的方便操作而设计的用户可忽略。
在系统人员查询顾客身份信息时,系统可添加子模式使系统用户只能顾客身份证信息的前六位和后四位,以防止顾客信息的泄露。
在用户查询入住信息,评价信息,消费信息以及维修信息时,流水单号都可忽略,减少用户的信息阅读量。
4.数据库物理结构设计4.1存取方式设计由于本系统的数据信息的查询操作频繁,所以在部分表中建立索引以提高查询效率。
客房信息表修改删除插入操作较少,查询操作较为频繁,所以在该表中以客房编号上建立聚簇索引以提高查询效率。
顾客信息表由于插入操作较为频繁,所以不适合建立聚簇索引,采用在用户身份证号码属性上建立非聚簇索引的方法提高数据的查询效率。
入住信息表和预定信息表要频繁的进行插入和查询操作,入住信息表和预定信息表中的流水单号具有有序的特性且插入的操作仅发生在表的末尾,所以适合在该模式的流水单号属性上建立聚簇索引便于数据的查询。
由于职工表的在本系统使用频率较少且数据量较少,添加索引反而使系统在索引的维护上耗费大量时间,所以不建议添加索引。
评价表由于要经常的插入和查询数据,且该表的数据量随营业时间增加而增加,所以要添加索引以提高系统对数据的查询效率。
4.2存储结构设计本系统的数据的存储结构可根据数据的规模的进行设计,对于小型的酒店建议采用单个硬盘的存储方式,减少设计开销。
对于大型的酒店,数据量较大,建议使用多个磁盘或使用磁盘阵列的形式来存储数据。
具体的设计要根据实际情况进行详细的设计。
5.数据库安全性、完整性设计5.1主要视图设计顾客加密信息(顾客身份证号,顾客姓名)顾客身份证号码只显示前六位和后四位。
客房基本信息(客房名称,客房类型,床位数量,住房单价)入住基本信息(房间编号,顾客身份证号,入住时间,退房时间,住宿时长,住宿费用)身份证号码只显示前六位和后四位。
预定基本信息(顾客身份证号,房间类型,预定时间,预定入住时长,押金,预定状态)身份证号码只显示前六位和后四位。
顾客消费总金额(客房名称,客房类型,入住时间,退房时间,住宿时长,住宿费用,消费总金额)5.2用户权限酒店经理:对于客房信息表具有查看,修改,添加权限。
对于顾客信息表具有查看权限。
对于入住和预定信息表具有查看权限。
对于员工信息表具有查看,修改,插入和删除权限。
酒店会计:对于客房信息表具有查看结算信息表具有查看和插入权限。
对于员工表具有查看权限。
酒店前台:对于客房信息表具有查看权限,对其中的客房的入住状态具有修改权。
对于顾客信息表具有插入权。
对于入住表和预定表具有插入权。
顾客:对客房信息某些记录具有查询权。
6.数据库实现6.1编码实现6.1.1主要数据表的创建CREATE DATABAS酒店客房信息管理系统]ON PRIMARY(NAME = N'酒店客房信息管理系统',FILENAME=N'C:\ProgramFiles\MicrosoftSQLServer\MSSQL10_50.MSSQLSERVER\MSSQL\DA 酒店客房信息管理系统.mdf ,SIZE = 3072KB ,FILEGROWTH = 1024KB)LOG ON(NAME = N'酒店客房信息管理系统_log',FILENAME=N'C:\ProgramFiles\MicrosoftSQLServer\MSSQL10_50.MSSQLSERVER\MSSQL\DA 酒店客房信息管理系统」o g.ldf ,SIZE = 1024KB ,FILEGROWTH = 10%)create table 物品(物品编号char(5) primary key,物品名称char(30) not null,物品单价mo ney,物品类型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⑷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⑷foreign key references客房(客房编号), 顾客身份证号char(18) foreign key references顾客(身份证号), 员工工号char(6) foreign key references 员工(员工工号),预定时间date,预订时长int,预定状态char(10),退订时间date,扌甲金money);create table 入住(流水单号in t primary key IDENTITY (1, 1),入住客房编号char⑷foreign key references客房(客房编号), 顾客身份证号char(18) foreign key references顾客(身份证号), 入住时间date,退房时间date,住宿费用mo ney,);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索引的创建因其他表在建立主键时以默认添加,此处不再添加额外索引。