酒店客房管理系统数据库设计.docx
- 文档编号:26522891
- 上传时间:2023-06-20
- 格式:DOCX
- 页数:24
- 大小:161.40KB
酒店客房管理系统数据库设计.docx
《酒店客房管理系统数据库设计.docx》由会员分享,可在线阅读,更多相关《酒店客房管理系统数据库设计.docx(24页珍藏版)》请在冰豆网上搜索。
酒店客房管理系统数据库设计
任务书
一、数据库原理课程设计的任务
1)通过本课程设计的训练,使学生掌握数据库技术的实际应用以及数据库信息管理系统的设计方法与开发过程;初步掌握数据库需求分析方法,掌握概要设计、逻辑设计和物理设计的步骤和技巧,理解并掌握数据库系统的整个开发过程。
2)通过课程设计,掌握数据库开发工具的使用以及综合编程调试的能力,结合数据库原理的基本理论,选用一种现代关系数据库系统,设计一个具体的信息管理系统,具备基本的数据库编程能力,为以后能进行数据库系统设计、开发与维护打下良好的基础。
3)提升工程实践能力、团队协作精神、交流与沟通能力;
4)通过规化的实验报告,培养学生良好的文档习惯以及撰写规文档的能力。
二、课程设计的基本容
课设容
结合一个具体任务(课程设计题目),完成一个基于C/S或
B/S模式的数据库系统的设计,主要应包括如下容:
1•完成课题任务的需求分析、完成系统总体结构设计方案
(主控功能模块、数据处理模块、统计报表模块等);
2•数据库结构的设计与实现;
3•数据库安全的设计;
4.数据修改的设计、数据查询的设计;
5.统计与报表输出的设计;
目的与要求
目的:
结合数据库原理的基本理论,选用一种现代关系数据库系统,设计一个具体的信息管理系统。
要求:
受学生对于所学基础和专业知识的综合应用能力及程序设计与调试能力的不同,一周时间大体分为三个阶段:
需求分析;数据库设计;应用程序设计。
要求提交相关软件和规的设计说明书电子文档。
要求在设计过程中树立科学的设计思想,有全局观念,培养咼度的协作精神。
课设形式
1、2-3人一组
2、课10学时,课检查,其余为课外学时。
课设考核
1、现场验收并对实验容进行提问。
2、根据设计方案、实验结果、附加功能、操作熟练程度、现场检查和回答情况及课程设计报告质量综合评定成绩。
1.数据库需求分析•
1.1设计目的-4
1.2系统功能分析-4
1.3功能模块设计•5
2.数据库概念结构设计6
2.1概念模型-6
2.2E-R模型-6
3.数据库逻辑结构设计8
3.1关系模型设计•9
3.2数据模型的优化•・9
3.3子模式设计
4.数据库物理结构设计9
4.1存取方式设计-9
4.2存储结构设计--10
5.数据库安全性、完整性设计-10
5.1主要视图设计-10
5.2用户权限-10
6.数据库实现1
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.2E-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主要数据表的创建
CREATEDATABASE酒店客房信息管理系统]ONPRIMARY
(
NAME=N'酒店客房信息管理系统',
酒店客房信息管理系统.mdf,
SIZE=3072KB,
FILEGROWTH=1024KB)
LOGON(
NAME=N'酒店客房信息管理系统」og'.
酒店客房信息管理系统」og.ldf,
SIZE=1024KB,
FILEGROWTH=10%
)
createtable物品
(
物品编号char(5)primarykey,
物品名称char(30)notnull,
物品单价money,
物品类型char(10)
);
createtable顾客
(
号char(18)primarykey,char(20)notnull,
手机号char(11)
);
createtable酒店
(
酒店编号char(4)primarykey,
酒店名称char(20)
);
createtable客房
(
客房编号char(4)primarykey,
客房名称char(4)notnull,
客房类型char(8)check(客房类型in('标准间','豪华间')),
客房状态char(4)check(客房状态in('入住','空闲')),
床位数int,
客房单价money
);
createtable员工
(
员工工号char(6)primarykey,
员工char(20)notnull,
员工性别char
(2)check(员工性别in('男','女')),
员工年龄intcheck(员工年龄>18and员工年龄<60),
员工职务char(20)notnull,
手机号char(11)
);
createtable维修
(
维修流水单号intprimarykeyIDENTITY(1,1),
维修房间编号char⑷foreignkeyreferences客房(客房编号),
维修员工工号char(6)foreignkeyreferences员工(员工工号),
维修物品名称char(20),
维修时间date,
维修费用money
);
createtable评论
(
酒店编号char(4),顾客号char(18),
评论时间date,
评论星级int,
评论容char(500)notnull
);createtable预定
(
流水号char(8)primarykey,
客房(客房编号),
预定客房编号char(4)foreignkeyreferences
顾客号char(18)foreignkeyreferences顾客(号),
员工工号char(6)foreignkeyreferences员工(员工工号),
预定时间date,
预订时长int,
预定状态char(10),
退订时间date,
扌甲金money
);
createtable入住
(
流水单号intprimarykeyIDENTITY(1,1),
入住客房编号char⑷foreignkeyreferences客房(客房编号),
顾客号char(18)foreignkeyreferences顾客(号),
入住时间date,
退房时间date,
住宿费用money,);
createtable消费单
(
消费流水单号intprimarykeyIDENTITY(1,1),
入住流水单号intforeignkeyreferences入住(流水单号),
物品编号char(5)foreignkeyreferences物品(物品编号),
消费量int,
消费金额money
);
6.1.2主要视图的创建
--创建客房基本信息视图--
createview客房基本信息
as
select客房名称,客房类型,床位数,客房单价
from客房
--统计顾客住宿的消费费用--
createview消费统计
as
select流水单号,客房名称,客房类型,入住时间,退房时间,DATEDIFF(day,入住时间,
退房时间)as住宿时长,住宿费用
from入住join客房on客房.客房编号=入住.入住客房编号
--创建顾客加密信息视图--
createview顾客加密信息
as
select=replace(号,substring(号,7,8),'********'),,手机号
from顾客.
--创建预订概要信息便于查询-
createview预定概要信息
as
select预定客房编号,顾客号,预定时间,客房类型,押金,预定状态
from预定
6.1.3索引的创建
因其他表在建立主键时以默认添加,此处不再添加额外索引。
--在顾客上创建非聚簇索引--
create
indexo_index
on顾客(号)
6.1.4创建用户权限
创建用户。
如下图所示、
日_J去全性
曰Qi轄毛
£#irMS_PolicyEvenrtProcessingLogin:
t5i^M^PolicyTsqlGacecutiorLogin#^闻BUlLnN\Users
各Lenqvq-PC\Wi11iatn
%WiAUTH0E 肉bJTSERV1CEWSSQLSERVER Aw 曳氐容 &甜 A卿 &前台 国U漲尧器角色 员工to经理 匡匚(送据 grantselect,update,inserton 客房to经理 grantselecton 预定to 经理 grantselecton 入住to 经理 grantselecton 顾客加密信息to经理 用户权限的设置 grantselect,delete,insert,updateon grantupdate,selecton入住to会计 grantupdate,selecton预定to会计 grantselecton客房to会计 grantselectupdateinserton入住to前台 grantselecton 客房to 前台 grantinserton 顾客to 前台 grantselecton 顾客加密信息to前台 6.1.5存储过程的设计 -----创建存储过程 --添加信息 createprocedureadd_roomr_nochar(4),--客房编号 r_namechar(4),--客房名称r_stylechar(8),--客房类型 r_bednumint,--床位数 r_pricemoney--房间价格 as begin insertinto客房 values(r_no,r_name,r_style,r_bednum,r_price)end go --预定房间 createprocedureorder_roomc_idchar(18),--顾客号r_stylechar(8),--房间类型o_timeint,--预定时长 已预订',null,o_money) o_moneymoney--预定押金asbegininsertinto预定values(null,null,c_id,null,r_style,GETDATE(),o_time,'endgo --退定房间 createproceduredisorder_room o_idint--预定单号 as begin update预定 set预定状态='已退订’ where流水号=o_id,退订时间=getdate() end 7.数据录入调试及运行 —添加评论信息— execadd_comments'0145','412326199501014466',4,'酒店客房年久失修,天花板漏水, 但服务态度挺好,希望酒店改善一下住宿环境。 ’ ----添加预订信息----- execorder_room'411082199611152413','标准间',1,100 ----对已预定的订单进行退订----execdisorder_room1 ■K4-KU4 45原 UAMHCLEMfe 4QHrV# 1 峙 a-iVPPB¥Frt« ■Ife-KF* 11 W—if ■HrlF» KU *u ■jU. .1T.祜 1亡乩■W 弓-*a•? r穴tMl叮■ 系统登录界面 客房信息录入界面 房间预订界面 8•总结体会 本次数据库课程设计,我们做的是酒店客房信息管理系统。 容相对于前几次的练习题与 大作业来讲较为复杂,各个表之间的联系比较紧密,表的设计标准也相对要求较高。 在数据库实现之前,数据库的需求分析,功能模块划分,概念设计,关系模型设计,物理结构设计花费了我们很多时间与精力,有几次的设计结果在后来的分析上发现设计的系统存在许多的不足,导致我们前面的工作都要全部重新做一遍,用去了我们许多的时间。 在这个过程中,我们相互讨论,相互补充,将课堂上的理论知识运用于实际问题中,锻炼了我们的动手能力。 在课程设计中我们遇到的最大的问题就是需求分析与功能划分这两个部分,在系统确认时,我们经过了反复的讨论和修改才确定了一个相对较完善的数据库系统;在对功能设计时,我 们查阅了网上资料和一些现代酒店管理的知识,并结合自身的一些体会对系统的功能逐渐进 行完善,最终确定了本系统的功能模块。 在此期间我们讨论了很多设计方案,经过反复的讨 论最终确定了一个合理的设计方案。 通过本次课程设计,我们基本掌握了数据库分析和设计 的基本步骤与方法,它提高了我们解决实际问题的能力。 另外在系统设计过程中,我们又将 学过的知识重新复习了一遍,我们有了很大的收获! 9.参考文献 [1]数据库原理与设计海霞2013人民邮电 [2]现代酒店管理经典程旭东2011人民邮电 [3]数据库系统概论王珊萨师煊2016高等教育
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 酒店客房 管理 系统 数据库 设计