《酒店客房管理系统实习报告.doc》由会员分享,可在线阅读,更多相关《酒店客房管理系统实习报告.doc(37页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2022年-2023年建筑工程管理行业文档 齐鲁斌创作实 习 报 告题目 酒店客房管理系统姓名: 学号: 专业: 计算机科学与技术班级: 3班实 验 实 习 中 心 制 2015 年 月 日 填写说明 一、 字号说明:标题类请用四号字,宋体 ;正文用小四号字、宋体,行间距为1.5倍;二、 填写实习报告时,请先写明实习报告的题目,再填写正文;正文必须与实习过程相结合,提出自己的合理化建议,内容不得少于3000字;三、 实习报告评语、成绩(请指导老师结合学生实习日志撰写情况)由指导老师填写;四、 此模板是所有学生统一的格式,请同学们填写时,不要改变格式;五、 打印前,请同学们认真检查实习报告,不要
2、存在错别字;六、 实习报告由各指导老师的小组长负责统一打印,学生只要按照指导教师的要求,发电子版给老师即可。实习报告评语实习报告成绩: 优 良 中 及格 不及格 指导老师签字: 年 月 日目 录1. 设计内容52. 设计目的53. 设计过程63.1. 需求分析63.1.1. 用户需求63.1.2. 数据流图73.1.3. 数据字典143.1.4. 功能模块分析163.2. 概念设计阶段173.3. 逻辑设计阶段203.3.1. 关系模型203.3.2. 数据模型优化213.3.3. 数据库模式定义213.3.4. 数据库子模式定义233.4. 物理设计阶段243.4.1. 物理设计阶段的目标和
3、任务243.4.2. 数据存储方面243.5. 数据库实施243.5.1. 建立数据库253.5.2. 建立数据表253.5.3. 建立视图263.5.4. 建立索引273.5.5. 建立触发器273.5.6. 创建各个功能的存储过程284. 系统的实现285. 实习总结286. 参考文献297. 附件1:存储过程的定义29实习报告(基本情况、实习过程及内容、收获体会)1. 设计内容设计开发一个应用于酒店宾馆管理系统,该系统采用B/S模式,主要包括如下要求:(1) 使用该系统的用户分为酒店管理员和顾客;(2) 酒店管理员可进行全部操作,是一切操作的执行者,;(3) 酒店管理员能够登记顾客信息,
4、按顾客要求提供客房;(4) 酒店管理员能够对顾客提供预订服务,并进行相关操作;(5) 酒店管理者能够查询在住客人、历史客人、预定客人列表等信息;(6) 酒店管理员可以统计各种消费次数,消费金额,对顾客进行退房结账服务;(7) 酒店管理员可以对员工进行增加、删除、修改、查询等操作,是特殊的员工;(8) 客人可以查看个人信息;(9) 客人可以查看预订情况,进行预定;(10) 客人可以查看客房状态、客房类型以及各类客房消费;(11) 客人可以查看入住客房的消费情况,以便费用不足时及时缴费;(12) 客人可以申请退房结账。 2. 设计目的数据库课程设计是为数据库原理及应用课程而独立开设的实践性课程,对
5、于巩固数据库知识,加强学生的实际动手能力和提高学生综合素质十分必要。通过本实验达到以下目的:(1) 培养具有C/S和B/S模式的数据库应用软件系统的设计和开发能力。(2) 熟练掌握一种数据库系统(如SQL SERVER)的使用。(3) 熟练掌握一种数据库应用软件开发工具(如ASP、VB、VC和Java)的使用。(4) 通过设计实际的数据库系统应用课题,进一步熟悉数据库管理系统的操作技术,提高动手能力,提高分析问题和解决问题的能力。要求:要求掌握数据库的设计的每个步骤;掌握数据库设计各阶段的设计内容、设计方法和工具。3. 设计过程3.1. 需求分析3.1.1用户需求 使用该系统的用户是酒店管理员
6、和顾客。 酒店管理者对于系统的功能要求如下:(1) 客人管理n 对于入住的客人,进行开房信息的入住登记,收取押金;n 对于要离开的客人,进行退房信息记录并进行结账;n 客人信息进行修改;n 查看在住客人信息,在住客人、历史客人列表;(2) 预定管理n 增加房间预定,选择预定客房类型,填写预定客人的信息,预计入住的时间以及预计入住的天数;n 修改客人预定的信息;n 对于已预定却无法按时到达的客人,撤销预定信息;n 查看预定客人信息,预定客人列表。(3)客房管理n 增加客房信息,客人入住后的登记信息;n 修改客房状态,修改客人登记信息;n 删除不需要的客房信息,删除离开客人的个人信息;n 可以查看
7、客房的客人信息及房间类型房间状态。(4) 报表统计n 统计开房记录,各类型房间登记入住信息;n 统计退房结账,各类型房间入住天数及相关账目;n 统计预订房间,各类型房间预定入住时间及预定入住天数; (5)员工管理n 对员工基本信息数据的输入,修改,删除。3.1.2数据流图依据用户需求,绘制系统的顶层数据流图,如Error! Reference source not found.所示。 图3- 1顶层数据流图将顶层数据流图分层细化,下面是酒店客房管理的第一层数据流图(如Error! Reference source not found.所示)。图3- 2 酒店客房管理的第一层数据流图第二层数据流
8、图:1、管理员对客人管理,2、管理员对预定管理,3、管理员对客房管理,4、管理员对统计管理, 5、管理员对员工管理,7、客人登记入住管理,8、客人客房查询管理,9、客人退房结账管理图3- 3 管理员对客人信息的第二层数据流图图3- 4 管理员对预定信息管理的第二层数据流图图3- 5管理员对客房信息管理的第二层数据流图。图3- 6 管理员对统计的第二层数据流图图3- 7管理员对员工信息管理的第二层数据流图图3- 8 客人登记信息管理的第二层数据流图图3- 9 客人预定信息管理的第二层数据流图图3- 10 客人客房查询信息管理第二层数据流图图3- 11 客人退房结账信息管理第二层数据流图3.1.3
9、数据字典(a)数据项:系统涉及的数据项有33项,如表3- 1所示。表3- 1数据项列表数据项编号数据项名数据项含义与其它数据项的关系存储结构DI-1Client name客人姓名char(20)DI-2Client No客人证件号码char(20)DI-3RoomNo房号char(20)DI-4ComeT入住时期DateDI-5PreT预计离开时期DateDI-6LeaveT结账离开时期DateDI-7ShM应付金额floatDI-8Name姓名Char(10)DI-9Sex性别char(10)DI-10ZhS证件类别char (20)DI-11ZhSno证件号码char (30)DI-12T
10、el联系电话char(20)DI-13Roompri价格floatDI-14YaPr押金floatDI-15extra余额 floatDI-16InMe增加钱数floatDI-17RoomSize房间大小IntDI-18Day预住天数intDI-19MesP管理员密码char(5)DI-20MessName员工姓名char(10)DI-21MessNo员工号char(20)DI-22MessSex员工性别char(10)D1-23InD增加天数intD1-24Atno消费项目编号cha(20)D1-25Atname消费项目名称char(20)D1-26Atprices项目价格flaotD1-2
11、7Amoney消费花费floatD1-28Stime预订房态修改时间dateD1-29Amount消费个数intD1-30Stme2退订修改房态时间dateD1-31Stim3入住修改房态时间dateD1-32Stime4退房修改房态时间dateD1-33 Stime1预订修改房态时间date 表3- 2数据结构列表数据结构编号数据结构名数据结构含义组成D1Messager员工信息 MessP,MessName,MessNo,MessSex, MessPD2Client客户信息Client name, Client No, Client Sex, Client ZhS, Client Tel,
12、 D3Room客房信息RoomS, Roompri, RoomNo, ComeT, PreT, LeaveT,D4Order预订信息Client name, Client No, Client Sex, Client Tel,RoomSize, Roompri, RoomNo, ComeT,PreT, YaPri,dayD5 Check out退房结账RoomNo, Amount, Amoney, Atname, Atprices, Stime1, Stime2, Stime3, YaPri, extra, InMe, Roompri, ComeT, PreT, LeavT, Stime43.
13、1.4功能模块分析根据用户需求,以及数据流图分析,提取出系统应该实现的功能,如图3- 所示图3- 12系统功能结构图主要包括四大功能模块: (1)客人管理模块:开房登记,对顾客信息进行增、删、改、查等操作。 (2)预定管理:该模块针对顾客需求进行预定,可以对预定的房间进行增、删、改、查等操作。 (3)客房管理:对客房信息进行增、删、改、查的操作。(4) 报表统计:包括开房记录统计、退房结账和预订房间统计,n 统计开房的总记录n 统计消费的总金额,进行结账n 统计客人对房间预定的总记录 (5)员工管理:对员工进行增、删、改、查的操作。3.2概念设计阶段分析了数据流图及数据字典,列出模块中涉及到的
14、实体及基本E-R图。(1)实体属性图本系统的实体有:员工实体、顾客实体、客房实体。图3- 13 员工属性图图3- 14 客人属性图 图3- 15 客房属性图(2)分E-R图由Error! Reference source not found.,得到分E-R图,如图3-16所示: 图3- 16 管理员和客人的分E-R图由Error! Reference source not found.,得到分E-R图,如图3-17所示:图3- 17 管理员和客房的分E-R图由Error! Reference source not found.,得到分E-R图,如图3-18所示:图3- 18 管理员和员工的分E
15、-R图(3)基本E-R图合并各分图,消除属性冲突、命名冲突、结构冲突等三类冲突,得到初步E-R图,再消除不必要冗余,得到的基本E-R图如图3-19所示:图3- 19 客人、客房和员工三者的分E-R图3.3 逻辑设计阶段3.3.1关系模型实体型转换为关系模式。实体的属性就是关系的属性,实体的码就是关系的码。对于实体间的联系则有以下不同的情况:一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对
16、应的关系模式合并。三个或三个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合具有相同码的关系模式可合并。由于员工与客户、客房的联系方式是1:n(一对多),可以将其之间的联系与n端实体客户、客房合并,员工与客户之间的维护联系也是1:n(一对多),同样也将其之间的联系与n端实体合并,而客户与客房之间的入住和预订联系方式则是1:1(一对一),这样要把它们之间的联系转化为独立的关系模式,员工与各个报表之间联系是1:n(一对多),将其联系也转化成独立的关系模式,具体的基本E-R图向关系模型的转化如下:顾客基本信息
17、(Client):Client name, Client No, Client Sex, Client ZhS, Client Tel, 客房基本信息(Room):RoomS, Roompri, RoomNo, ComeT, PreT, LeaveT消费项目:Atariff(Atno,Atname,Atprice)预订:Reserve(Client No RoomNo,Stime1,Rtime, Rltime)退订:Back(ClientNo,RoomNo,Stime2)入住:Into(Client No RoomNo,Stime3,ComeT,LeaveT)退房:Return(Client
18、No RoomNo,Stime4)消费:Consumelist(Atno, RoomNo,Amount,Wtime) 3.3.2数据模型优化判断每个模式是否满足3NF(是否存在部分函数依赖、传递函数依赖)关系模式Client,Room,Atariff,order,Into,Change,Return,Consumelist,不存在非主属性对主属性的部分函数依赖,也不存在传递函数依赖,已经达到了3NF,但是关系模式order,Back,Into,Change,Return的主码都相同,如果用5个关系模式表示这几个关系,有很大的冗余,所以将5个关系模式优化为关系模式:房态基本表:RoomStame
19、(Client No RoomNo,Atime, ComeT, PreT, LeaveT ,Roompri,Days,Stime,flag),其中flag为标志位,表示客房的状态为预订,入住,空。3.4物理设计阶段3.4.1物理设计阶段的目标和任务数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段中要完成两大任务:(1) 确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;(2) 对物理结构进行评价,评价的重点是时间和空间效率。3.4.2数据库物理设计 表31 客户基本信息列名数据类型 可否为空说明Client namechar(20) not nu
20、ll客户姓名Client Sexchar(2) not null客户性别Client Nochar(1) not null客户编号Client Telchar(11)客户电话Client ZhSchar(20) 证件类型表32 客房基本信息列名数据类型 可否为空说明RoomNochar(20) not null房间编号RoomSchar(20) not null房间类型Roompri float not null房间价格RoomStimesmallint not null房间状态YaPri float not null押金 表33 房态信息列名数据类型 可否为空说明RoomNochar(20)
21、 not null房间号Client Nochar(20) not null顾客号ComeTDate实际入住时间LeaveTDate实际退房时间PreTDate预订入住时间ComeTDate预订退房时间Roompri Float入住价格DaysInt入住天数StimeDatetime修改记录时间flagchar(1)预订入住标志位表34消费项目信息列名数据类型 可否为空说明Atnochar(20) not null娱乐项目编号Atnamechar(20) not null娱乐项目名称AtpriceFloat not null娱乐项目单价(时间计费或个数计费)表35消费信息列名数据类型可否为空说
22、明Client Nochar(20)not null顾客号Atnochar(20)not null商品号AmountFloat消费数量Wtimedate not null消费开始时间表36 预定客人列表列名数据类型 可否为空说明ClienttNochar(20) not null顾客号RoomNochar(10) not null房间号RoomSchar(20) not null房间类型Roomprifloat not null入住价格Rtimedatetime not null入住时间Rltimedatetime not null打算退房时间Daysint not null居住天数表37入住
23、信息列名数据类型 可否为空说明ClientNochar(20) not null顾客号ClientNamechar(20) not null顾客姓名Rnochar(10) not null房间号Rtypechar(20) not null房间类型RoomPrifloat not null入住价格ComeTdate not null入住时间LeaveTdate not null退房时间Daysint not null入住天数YaJinfloat not null预付金额 表38员工信息信息列名数据类型 可否为空说明StafNochar(20) not null员工证件号StafNamechar(
24、20) not null员工姓名3.4.3数据库子模式定义物理设计表3- 3 用户子模式定义编号用户子模式(View)作用(共性:提供数据保密和安全保护机制)V1OrdertView便于查询预订的基本信息V2IntorView便于查询入住的基本信息V3StatusView便于查询房间状态的信息表3- 4 客人基本信息视图列名数据类型类型宽度小数位数可否为空说明ClientNoChar18not null顾客证件号ClientNameChar5notnull顾客姓名CleintSexChar2no null顾客性别ClientTtelChar11not null顾客电话号YaJinfloat2N
25、ot null顾客预交款extra float2Not null顾余额表3- 5 客房基本信息视图列名数据类型类型宽度小数位数可否为空说明RoomNoChar5not null房间编号RoomSChar3not null房间类型RoomstatusChar2not null房间状态Roompricefloat2not null房间价格YaJinfloat2not null预交款Rorderchar5not null房间预订3.5数据库实施3.5.1建立数据库create database HOTEL3.5.2建立数据表(1)客人基本信息表的建立:create table 客人 ( 姓名 var
26、char(5) null, 性别 varchar(2) null, 联系电话 varchar(11) null, 证件号码 varchar(18) not null, 员工号 varchar(6) not null, 员工_员工号 varchar(6) null, 房号 varchar(4) null, 证件类型 varchar(5) null, constraint PK_客人 primary key (证件号码);(2)员工基本信息表的建立:create table 员工 ( 员工号 varchar(6) not null, 员工登陆码 varchar(8) null, 姓名 varcha
27、r(5) null, 性别 varchar(2) null, 证件号码 varchar(18) null, constraint PK_员工 primary key (员工号)(3)客房基本信息表的建立:create table 客房 ( 价格 float(6) null, 房号 varchar(4) not null, 员工号 varchar(6) not null, 员工_员工号 varchar(6) null, 证件号码 varchar(18) null, 房状态 varchar(2) null, 房类型 varchar(5) null, 押金 float(3) null, 预订房间 v
28、archar(5) null, constraint PK_客房 primary key (房号);(4)预订客人基本信息表的建立:create table 预订客人列表 ( 入住时间5 date null, 姓名4 varchar(5) null, 性别4 varchar(2) null, 房类型5 varchar(5) null, 联系电话4 varchar(11) null, 解除预订3 char(20) not null, 员工号 varchar(6) null, 预订客_解除预订3 char(20) null, 预定修改3 char(20) null, 预计离开时间4 date nu
29、ll, 预订房间6 varchar(5) null, constraint PK_预订客人列表 primary key (解除预订3);(5)历史客人信息表的建立:create table 历史客人列表 ( 入住时间4 date null, 姓名3 varchar(5) null, 应付金额4 float null, 性别3 varchar(2) null, 房类型4 varchar(5) null, 房间号3 char(20) null, 押金5 float(3) null, 结账离开日期4 date null, 联系电话3 varchar(11) null, 证件类型3 varchar(5
30、) not null, 员工号 varchar(6) null, constraint PK_历史客人列表 primary key (证件类型3);(6)退房结账信息表的建立: create table 退房结账列表 ( 员工号 varchar(6) null, 价格4 float(6) null, 应付金额5 float null, 房类型6 varchar(5) null, 房间号4 char(20) null, 押金6 float(3) null, 消费项目编号 varchar(10) null, 消费项目名称 varchar(102) null, 消费项目单价 float null);
31、(7)入住列表create table 入住客人列表 ( 员工号 varchar(6) null, 入住时间3 date null, 应付金额3 float null, 押金4 float(3) null, 结账离开日期3 date null, 价格3 float(6) null, 房状态2 varchar(2) null, 房类型3 varchar(5) null, 房间号2 char(20) null, 结账离开日期2 date null, ,constraint PK_入住客人列表primary key (客户证件号),(房间号)3.5.3建立视图(1)用于查询预订房信息的视图定义如下:
32、create viewOrderView(客户证件号,客户姓名,房间号房间类型,房间价格,预定时间,预计离开时间,状态)asselect ClientNo,ClientName,RoomNo,RoomS,RoomPri,preT,PreL,Stimefrom Room,RoomStatus,Clienttwhere flag=1 and Room RoomNo =RoomStatus. RoomNo and RoomStatus. ClientNo =Client. ClientNo(2)用于查询已入住房的试图如下:create viewIntoView客户证件号,客户姓名,房间号,房间类型,
33、房间价格,入住时间,结账离开时间,消费金额)asselect t ClientNo,ClientName,RoomNo,RoomS,RoomPri,ComeT,LeaveL,Accountfrom Roo,RoomStatus,guestwhere flag=2 and Roominfo. RoomNo =RoomStatus. RoomNo and RoomStatus. ClientNo =Client. ClientNo3.5.4建立索引create clustered index Manmno on Manage(Mno);create clustered index Gueid on Guest(ID);create clustered index Roomno on Room(Rno);3.5.5建立触发器