《2022年某宾馆客房管理系统——数据库课程设计 .pdf》由会员分享,可在线阅读,更多相关《2022年某宾馆客房管理系统——数据库课程设计 .pdf(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据库原理课程设计报告设计题目某宾馆客房管理系统专业班级学号学生姓名同组人起止日期年月日至月 1 日精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 16 页摘要宾馆管理系统是对宾馆管理系统的现代化、网络化, 逐步摆脱当前宾馆管理的人工管理方式,拓展经营空间, 降低运营成本, 提高管理和决策效率而开发的。传统的宾馆计算机管理系统主要包括前台管理系统和后台管理系统两大部分,基本包含了宾馆主要业务部门,初步实现了对顾客服务和进行财务核算所需要的各个功能。它包括客户信息管理、客房信息管理、入住和退房管理、客房类型管理、费用管理、价目信息管理等6
2、 大功能模块, 并提供了对各功能模块的查询和更新功能。其中客户信息管理、入住和退房管理是系统开发的重点。本文讲述的是基于客户/ 服务器的宾馆管理系统,实现了宾馆管理的信息化。本系统涉及数据库方面的技术,采用SQL语言来实现。本系统由系统需求分析、概念设计、逻辑设计、物理结构设计、触发器设计、数据库实施和维护组成。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 16 页目录1.问题描述 . 11.1 背景 . 11.2 功能要求 . 1 .需求分析 . 12.1 需求分析 . 12.2 系统功能模块图 . 32.3 数据流图 . 32.4
3、 数据字典 . 63.概念结构设计 . 73.1 E-R图 . 73.2 实体及属性的定义 . 74.逻辑结构设计 . 85.物理结构设计 . 96.触发器设计 . 107.数据库的实施和维护 . 108.结束语 . 128答辩与成绩考核. 13精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 16 页1 1. 问题描述1.1 背景随着宾馆业竞争的加剧,宾馆之间客源的争夺越来越激烈,宾馆需要使用更有效的信息化手段,拓展经营空间, 降低运营成本, 提高管理和决策效率。传统的宾馆计算机管理系统主要包括前台管理系统和后台管理系统两大部分,基本包
4、含了宾馆主要业务部门,初步实现了对顾客服务和进行财务核算所需要的各个功能。 但传统的宾馆管理基于财务管理为主线的设计理念,无法满足宾馆全面信息化管理的需要。现代宾馆酒店业迅速发展,新的管理观念与模式层出不穷。宾馆客房管理系统亦随着宾馆管理理念的发展而发展。 宾馆客房管理系统依旧采用了先进的数据库理论,多媒体技术,软件工程理念等,从基层,中层,高层三个管理者层次为切入点,以成本分析,预测,控制为一线,形成一套上下贯通,操作便捷的酒店系统解决方案,科学地将宾馆各种日常业务完美的结合在一起,为管理及决策提供了强有力的支持。 其对客人个性化服务及全面彻底的信息化,使企业电算化水平提升到一个新的更高层次
5、,提供大量丰富的基于企业管理经营过程中实际的数据。1.2 功能要求( 1)客人基本信息的录入;( 2)客人基本信息的查询、修改、增加、删除等;( 3)客房相关信息的录入,包括房间号、收费标准、床位、类别等;( 4)客房类别标准的制定、类别信息的输入;( 5)客房基本信息的查询、修改、删除等;( 6)住房信息的录入,包括房间号、客人姓名等;( 7)退房信息的更新;. 需求分析2.1 需求分析1). 处理对象精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 16 页2 系统要处理的对象包括信息管理、客户信息管理、客房信息管理、入住和退房管理、
6、客房类型管理、费用管理、价目信息管理等7个方面,各个对象包含的信息如下所示:( 1)信息管理:可以对于各种信息的查询,个人信息可以查看自己的私人信息,还可以对自己的私人信息进行修改。用户信息查看用户的个人信息,对用户的信息进行增、删、查、改。(2)客户信息管理:可以新建客户,输入客户的身份证号码、姓名、性别、出生日期和地址等信息,可以对于客户的信息进行相应的修改,还可以对客户的消费信息进行统计。(3)客房信息管理:可以在相应的房间类型下面进行添加相应的房间,对相应的房间进行删除,查看空房以及客房的情况。(4)入住和退房管理:客户可以入住相应的类型房型下的空房,然后可以退房,系统自动将相应的订单
7、状态置为失效,入住状态置为已退房,将相应房间的状态置为空房。(5)客房类型管理:管理员可以对相应的房型进行各种属性的修改,可以按照需求添加相应的房型,管理员、工作人员都可以查看相应的房型信息,管理员有需要时可以删除相应的房型,系统自动将该房型下的房间删除。(6)费用管理:管理员、工作人员都可以查看相应的费用信息,管理员有需要时可以对宾馆的收入与支出进行查询或修改。(7)价目信息管理:可以查看客房的收费标准,管理员可以对客房价格进行查询与修改,工作人员可以查看可风的价目信息。2). 系统功能分析某宾馆需要建立一个住房管理系统,需求分析结果如下:(1)宾馆要求该系统能实现住房信息管理、客户信息管理
8、等功能;(2)一个房间有多个床位,同一房间内的床位具有相同的收费标准。不同类型的房间的床位收费标准可能不同;(3)每个房间有房间号、收费标准、床位数目等信息;(4)每位客人有身份证号码、姓名、性别、出生日期和地址等信息;(5)对每位客人的每次住宿,应该记录其入住日期、退房日期和预付款额信息;( 6)管理系统可查询出客人住宿相关信息、房间信息。3). 安全性和完整性要求安全性先通过试图机制,不同的用户只能访问系统授权的视图,这样可以满足系统数据一定程度上的安全性, 在通过用户授权机制,用户登录来识别用户级别,根据这个级别来分配用户权限,达到数据更高层次的安全保密功能。系统完整性要求系统中数据的正
9、确性以及相容性。可以通过建立主、外键,使用 check 约束, 或者通过使用触发器和级联更新。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 16 页3 2.2 系统功能模块图系统功能模块图,如图2.2 所示。某宾馆客房管理系统客户信息管理价目信息管理客房类型管理客房信息管理费用管理入住和退房管理客户信息查询客户信息修改入住登记退房登记客户信息删除客户信息添加价目查询价目添加查看类型添加类型修改类型删除类型客房信息添加客房信息查询客房信息删除客房信息修改查询费用信息修改费用信息添加费用信息删除费用信息图 2.2 系统的功能模块图2.3
10、数据流图1业务流程图,如图2.3.1所示。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 16 页4 客 户要求入住要求续住要求退房前台查询空房确认客户房号入住登记物品损坏赔偿单物品完好证明单退房登记续房登记查询入住时间结算图 2.3.1 客房管理业务流程图(1)顶层数据流程图,如图2.3.2所示。客户宾馆管理者客人入住、续房、退房办理客人业务宾馆客房管理系统更新信息查询信息图 2.3.2 顶层数据流程图(2)第二层数据流图,如图2.3.3所示。客户入住续住退房客房信息表住宿信息表客户信息表客房物品信息表更新信息宾馆管理者空房信息客户信
11、息房号信息补交费用单房号信息结账信息图 2.3.3 第二层数据流图(3)宾馆开房数据流程图,如图2.3.4所示。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 7 页,共 16 页5 客户P1.1查询客房条件P1.2客户登记客房信息表客户信息表住宿信息表选定房间信息客户信息要求空房信息缴费单图 2.3.4 宾馆开房数据流程图(4)客户续房数据流程图,如图2.3.5所示。客户P2.1查询住宿信息P2.2修改登记表住宿信息表补交费用房号信息续住信息图 2.3.5 客户续房数据流程图(5)客人退房数据流程图,如图2.3.6所示。精选学习资料 - - -
12、- - - - - - 名师归纳总结 - - - - - - -第 8 页,共 16 页6 客户P3.1检查客房物品P3.2整理检查结果P3.3物品赔偿P3.4查询住房时间P3.6扣除费用P3.5退款P3.8注销注册P3.7 退押金住宿信息表客户信息表客房信息表物品赔偿证明单检查结果房号信息物品完好信息时间信息提前退房延迟退房正常退房结算信息图 2.3.6 客人退房数据流程图2.4 数据字典表 2-3. 客户( Travellers)信息:表中列名数据类型可否为空说明Tno Int Not null(主键)客户编号Tname Char(10) Not null 客户姓名Tsex Char(2)
13、 Not null 客户性别Tid Char(20) Not null 客户身份证号表 2-4. 客房( Rooms )信息:表中列名数据类型可否为空说明Rno Int Not null(主键 ) 客房号Rstyle Char(10) Not null 客房类型Rprice Int 客房单价Rstate Char(10) 客房状态Rtel Char(15) 客房电话表 2-5. 客户住宿( Living )信息:表中列名数据类型可否为空说明Tno Int Not null(主键 ) 客户编号Rno Int Not null(主键)客房号Tcomedate Datetime Not null 入
14、住日期精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 9 页,共 16 页7 Tleftdate Datetime Not null 结算日期Ttime Int 住宿时间Tamount Int 房费表 2-6. 客房物品 (Roomitem) 信息:表中列名数据类型可否为空说明Rno Int Not null 客房号Ritemno Char(10) Not null(主键)客房物品编号Ritemname Char(20) Not null 客房物品名称Ritemstate Char(10) 物品状态Ritemprice Int 客房物品单价Rite
15、mnum Int 物品数量3. 概念结构设计3.1 E-R 图各实体之间的E-R 图,如图3-1 所示。客户客房物品住宿提供使用N11N1M图 3-1 实体之间的E-R 图3.2 实体及属性的定义3.2.1类别实体E-R 图:客户信息实体的E-R 图, 如图 3-2 所示。客户客户编号客户姓名客户性别客户身份证号精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 10 页,共 16 页8 图 32 客户信息实体的ER图客房信息实体的E-R 图,如图3-3 所示。客房客房号客房类型客房单价客房状态客房电话图 3 3 客房信息实体的ER图客户住宿实体的E-
16、R 图,如图3-4 所示。客户住宿客房号客户编号入住日期结算日期住宿时间房费图 34 客户住宿实体的ER图客房物品信息实体的E-R 图,如图3-5 所示。客房物品客房号客房物品编号客房物品名称客房物品单价物品数量物品状态图 35 客房物品实体的ER图4. 逻辑结构设计具体的基本E-R 图向关系模型的转化结果如下:客户 Travellers( Tno,Tname,Tsex,Tid) 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 11 页,共 16 页9 客房 Rooms( Rno,Rstyle,Rprice,Rstate,Rtel) 客户住宿Liv
17、ing( Tno,Rno,Tcomedate,Tleftdate,Ttime,Tamount) 客房物品Roomitem(Rno,Ritemno,Ritemname,Ritemprice,Ritemstate,Ritemnum) 数据库模式定义表 4-1.客户基本信息表表中列名数据类型可否为空说明Tno Int Not null(主键)客户编号Tname Char(10) Not null 客户姓名TsexChar(2) Not null 客户性别Tid Char(20)Not null 客户身份证号表 4-2 客房基本信息表Rooms 属性名数据类型是否是主属性是否为外键完整性属性描述Rno
18、 Int 是否not null 客房编号Rstyle char(10) 否否not null 客房档次Rprice Int 否否客房单价Rstate char(10) 否否客房状态Rtel char(15) 否否客房电话表 4-3 客房物品信息表Roomitem 属性名数据类型是 否 是 主 属性是否为外键完整性属性描述Ritemno Int 是否not null 客房物品编号Rno Int 否是not null 物品的客房号Ritemname char(20) 否否not null 客房物品名称Ritemprice Int 否否客房物品单价Ritemstate char(10) 否否客房物品
19、状态Ritemnum Int 否否客房物品数目表 4-4 客户住宿信息Living 属性名数据类型是否为主属性是否为外键完整性属性描述Tno Int 是是not null 客户编号Rno Int 是是not null 客房编号Tcomedate Datetime 否否not null 入住日期Tleftdate Datetime 否否not null 结算日期Ttime Int 否否入住时间Tamount Int 否否房费金额5. 物理结构设计数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段精选学习资料 - - - - - - - - - 名师归纳总结 -
20、- - - - - -第 12 页,共 16 页10 要完成两大任务。(1)确定数据库的物理结构,在关系数据库中主要是存储方法和存储结构。(2)对物理结构进行评价,评价的重点是时间和空间效率。CREATE UNIQUE INDEX Travno ON Travellers(Tno) CREATE UNIQUE INDEX Roomno ON Rooms(Rno) CREATE UNIQUE INDEX Ritemno ON Roomitem(Ritemno) CREATE UNIQUE INDEX Livno ON Living(Tno) 6. 触发器设计触发器 C1的功能为当有一条信息插入L
21、iving表中时,触发Rooms表中的 Rstate=满 。代码如下:create trigger c1 on tb_Living for insert as if exists(select * from tb_Living,tb_Rooms where tb_Living.Rno=tb_Rooms.Rno) begin update tb_Rooms set Rstate=满 where Rno=(select Rno from inserted) End 触发器 C2的功能为当从Living表中删除一条信息时,触发Rooms表中的 Rstate=空 。代码如下:create trigge
22、r c2 on tb_Living for delete as if exists(select * from tb_Living,tb_Rooms where tb_Living.Rno=tb_Rooms.Rno) begin update tb_Rooms set Rstate=空 where Rno=(select Rno from deleted) End 7. 数据库的实施和维护7.1 建立数据库、数据表、索引1. 建立数据库精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 13 页,共 16 页11 Create database db_
23、hotel; 2. 建立数据表(1 )客户基本信息表Travellers的建立。Create table tb_Travellers( Tno int Check(Tno=0 and Tno=9999), Tname char(10) not null,Tsex char(2) Check(Tsex in (男 , 女 ), Tid char(20) not null, Primary key (Tno) ); (2) 客房基本信息表Rooms的建立。Create table tb_Rooms( Rno int not null, Rstyle char(10) not null, Rpric
24、e int Rstate char (10) Rtel char(15) PRIMARY KEY (Rno) ); (3) 客房物品信息表Roomitem 的建立。Create table tb_Roomitem( Ritemno int not null, Rno int not null, Ritemname char(20) not null, Ritemprice int Ritemstate char(10) Ritemnum int Primary key (Ritemno) Foreign key (Rno) references tb_Rooms(Rno) ); (4) 客户住
25、宿信息Living的建立。Create table tb_Living( Tno int not null, Rno int not null, Tcomedate datetime not null, Tleftdate datetime not null, Ttime int Tamount int Primary key (Tno,Rno), Foreign key (Tno) references tb_Travellers(Tno), Foreign key (Rno) references tb_Rooms(Rno) ); 3. 建立视图(1) 查询客户( Travellers)信
26、息的视图定义如下。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 14 页,共 16 页12 Create view view_Travellers (客户编号 , 客户姓名 , 客户性别 , 客户身份证号 ) As select Tno,Tname,Tsex,Tid From tb_Travellers (2) 查询客房( Rooms )信息的视图定义如下。Create view view_Rooms (客房号 , 客房类型 , 客房单价 , 客房状态 , 客房电话 ) As select Rno, Rstyle, Rprice, Rstate,
27、 Rtel From tb_Rooms (3) 查询客户住宿(Living )信息的视图如下。Create view view_Living (客房编号 , 客房号 , 入住日期 , 结算日期 , 住宿时间 ,房费 ) As select Tno,Rno,Tcomedate,Tleftdate,Ttime,Tamount From tb_Living (4) 查询客房物品 (Roomitem) 信息的视图定义如下。Create view view_Roomitem(客房号 , 客房物品编号, 客房物品名称 , 物品状态 , 客房物品单价, 物品数量) As select Rno,Ritemno
28、,Ritemname,Ritemstate,Ritemprice,Ritemnum From tb_Roomitem 4. 建立索引CREATE UNIQUE INDEX Travno ON tb_Travellers(Tno) CREATE UNIQUE INDEX Roomno ON tb_Rooms(Rno) CREATE UNIQUE INDEX Ritemno ON tb_Roomitem(Ritemno) CREATE UNIQUE INDEX Livno ON tb_Living(Tno) 8. 结束语通过此次数据库的课程设计,真正达到了学与用的结合,增强了对数据库方面应用的理解
29、,对自己今后参与开发数据库系统积累了不少经验,在实验过程中, 从建立数据开始,对数据库设计理念及思想上有更高的认识,从需求分析,到概念设计和逻辑设计,E-R 图的表示,数据字典的创建,懂得了不少有关数据库开发过程中的知识,增强了自己在数据库中应用SQL语言的灵活性, 其中包括, 插入、删除、修改、查询 , 牵涉表和表之间的联系,主建与外主键的定义,约束项的设置,使逻辑更严密,在学习过程中,我也能过上网查了不少资料,也看了一些别人设计的旅馆管理信息系统的设计报告,学以致用,自我创新,独立完成了这份自己的报告,从中在学到用,从用又到学,不断修改,系统更新。虽然不能达到完善系统, 但也做到了尽善尽美,加强理论学习对完善系统会有很多帮助,不管怎么说,对这次做的课程设计自己觉得还算满意。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 15 页,共 16 页9答辩与成绩考核答辩问答成绩评定项目权重成绩1、设计过程中勤、 能力、水平、态度等方面0.2 2、说明书书写规范性0.3 3、内容的质量0.3 4、答辩0.2 总成绩精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 16 页,共 16 页
限制150内