酒店管理数据库课程设计.docx

上传人:b****6 文档编号:6522465 上传时间:2023-01-07 格式:DOCX 页数:24 大小:277.41KB
下载 相关 举报
酒店管理数据库课程设计.docx_第1页
第1页 / 共24页
酒店管理数据库课程设计.docx_第2页
第2页 / 共24页
酒店管理数据库课程设计.docx_第3页
第3页 / 共24页
酒店管理数据库课程设计.docx_第4页
第4页 / 共24页
酒店管理数据库课程设计.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

酒店管理数据库课程设计.docx

《酒店管理数据库课程设计.docx》由会员分享,可在线阅读,更多相关《酒店管理数据库课程设计.docx(24页珍藏版)》请在冰豆网上搜索。

酒店管理数据库课程设计.docx

酒店管理数据库课程设计

课程设计评分细则

序号

评分内容

分值

得分

1

选题新颖、结构完整、原创性强,语言规范、排版美观、装订规范。

20%

2

需求分析工作深入详细,业务流程图、数据流程图、数据字典等需求文档完整,正确性高

40%

3

概念结构设计合理,CDM的属性及其数据类型与数据字典一致,且正确性高

20%

4

转换的PDM正确性高,相应的SQL教本正确,参考文献完整

10%

5

提交了数据库文件,且电子文档与打印稿一致

10%

6

迟到、早退、打游戏或做无关之事,发现一次扣10分;旷课一次扣20分

负分

最终成绩

答辩教师签名

《数据库原理及应用》课程设计报告

题目:

××××××系统的数据库设计

(独立完成

与他人合作)

学号:

11003070229

姓名:

杨好

指导教师:

冯欣

2012年12月

 

目录

1.项目背景2

1.1选题背景2

1.2系统目标和实现技术3

2需求分析3

2.1业务流程分析3

2.2数据流程分析5

2.3数据字典8

3概念结构设计12

4逻辑结构设计13

5物理结构设计14

6总结19

7参考文献19

 

1.项目背景

1.1选题背景

随着人们生活水平的提高,人们外出旅游已经成为一种必不可少的生活习惯。

出门在外,找一个舒适的住的地方至关重要,人们对住宿的质量和服务要求不断提高。

当前的对酒店客房的管理大都采用人工管理的方式,这种管理方式显然存在着弊端,比如不能提前预定客房,住宿混乱,容易造成不必要的浪费,从而造成对酒店客房管理的严重负担。

因此,必须设计一种合理、高校、有利于酒店客房管理的系统。

随着计算机技术的普及,计算机技术特别是数据库管理技术的广为运用,使得管理不再是难题,所以,我设计了一种酒店客房数据库管理系统来进行酒店客房的管理,这种方法有效的节约了人力、物力,避免了不必要的浪费!

某城市有一大型酒店,该酒店有很多员工,每个员工都有唯一的工号,姓名,性别,年龄,政治面貌等属性,酒店客房管理的日常工作主要包括:

订房、退房、结账。

订房:

客人通过电话或网上订房,前台服务员查询符合客人的客房,若有满足客人请求的,则进行客人相关信息进行登记;如果暂时没有满足客人请求的,则可进行预订登记,如果有符合客人需要的,则及时通知客人,并进行相关信息登记。

退房:

客人要求退房后,服务员按照规定对客房进行检查,若客房无损坏异常情况,则退房成功,并进行相关信息的修改;若客房有损坏,严重者,可根据细则要求客人赔偿,并进行登记。

结账:

客人要求退房后,收银员进行结算,并登记,并开具发票。

1.2系统目标和实现技术

酒店客房管理系统需要完成的功能如下:

1、订房功能:

客人通过电话或网上订房,前台服务员查询符合客人的客房,若有满足客人请求的,则进行客人相关信息进行登记;如果暂时没有满足客人请求的,则可进行预订登记,如果有符合客人需要的,则及时通知客人,并进行相关信息登记。

2、退房功能:

客人要求退房后,服务员按照规定对客房进行检查,若客房无损坏异常情况,则退房成功,并进行相关信息的修改;若客房有损坏,严重者,可根据细则要求客人赔偿,并进行登记。

3、结账功能:

客人要求退房后,收银员进行结算,并登记,并开具发票。

酒店客房管理系统的功能目标图:

 

软件体系结构:

主要在powerdesigner12和Microsoftvisio2003种完成;所用的DBMS是MicrosoftSQL2000。

2需求分析

2.1业务流程分析

各种功能的业务流程图:

订房功能:

客人通过电话或网上订房,前台工作员根据客人需求信息查询符合客人的客房,若有满足客人请求的客房,则进行客人相关信息进行登记;如果暂时没有满足客人请求的客房,则可进行预订登记,等到有符合要求的客房,及时通知客人,并进行相关信息登记。

 

订房-业务流程图

退房功能:

客人欲退房,客房工作人员按照规定对客房进行检查,若客房无损坏异常情况,则退房成功,并进行相关信息的修改;若客房有损坏,可根据细则要求客人赔偿,并进行登记。

退房-业务流程图

 

结账功能:

客人欲退房,前台工作人员进行结算,并登记,并开具发票。

结账-业务流程图

2.2数据流程分析

数据流程图的符号表示如下所示:

各层数据流程图所示如下:

顶层数据流图:

顶层-数据流图

二层数据流图:

员工登录-二层数据流图

 

订房-二层数据流图

退房-二层数据流图

结账-二层数据流图

2.3数据字典

按照数据流程图分层和每层数据流程图对数据字典,数据字典应包含数据流、数据存储、数据处理、外部实体和数据项等五个部分进行描述。

数据流的描述:

数据流编号:

F1

数据流名称:

员工输入信息

简述:

记录员工用户信息

数据流来源:

注册

数据流去向:

登录

数据项组成:

员工编号+员工姓名+员工职务+员工家庭住址+员工联系电话+员工性别+员工年龄

数据流量:

10条/月

高峰流量:

50条/月

数据流编号:

F2

数据流名称:

订房信息

简述:

记录客人订房信息

数据流来源:

订房、预定

数据流去向:

客房管理

数据项组成:

定单编号+房号+客人身份证号+客人姓名+预收费用+订房时间+应退房时间+联系电话

数据流量:

10条/月

高峰流量:

50条/月

数据流编号:

F3

数据流名称:

住房信息

简述:

记录客人住房信息

数据流来源:

住房

数据流去向:

退房

数据项组成:

房号+客人身份证号+入住时间+退房时间

数据流量:

10条/月

高峰流量:

50条/月

数据流编号:

F4

数据流名称:

消费登记单

简述:

记录客人消费信息

数据流来源:

消费

数据流去向:

结账

数据项组成:

登记单编号+客人姓名+房号+消费金额+联系电话

数据流量:

10条/月

高峰流量:

50条/月

数据存储描述:

数据存储编号:

D1

数据存储名称:

员工信息表

简述:

记录所有员工的基本信息

数据存储组成:

员工编号+员工姓名+员工职务+员工家庭住址+员工联系电话+员工性别+员工年龄

关键字:

员工编号

相关联的处理:

P1

数据存储编号:

D2

数据存储名称:

客房信息

简述:

记录客房基本信息

数据存储组成:

房号+价格+数量

关键字:

房号

相关联的处理:

P2

数据存储编号:

D3

数据存储名称:

客人住宿信息表

简述:

记录客人住房信息

数据存储组成:

客人姓名+客房号+身份证号+入住时间+退房时间+联系电话

关键字:

客房号+身份证号

相关联的处理:

P3

数据存储编号:

D4

数据存储名称:

消费结账单

简述:

记录消费结账信息

数据存储组成:

消费结账单号+客人姓名+客人身份证号+房号+消费金额

关键字:

消费结账单号

相关联的处理:

P4

数据存储编号:

D5

数据存储名称:

客人信息表

简述:

记录客人信息

数据存储组成:

客人身份证号+客人姓名+性别+联系电话

关键字:

客人身份证号

相关联的处理:

P2

数据处理描述:

处理逻辑编号:

P1

处理逻辑名称:

员工注册登录

输入的数据流:

F1,F3

处理:

信息登记

输出的数据流:

F2

处理频率:

100条/次

处理逻辑编号:

P2

处理逻辑名称:

订房

输入的数据流:

F2

处理:

信息登记

输出的数据流:

处理频率:

100条/次

处理逻辑编号:

P3

处理逻辑名称:

退房

输入的数据流:

F4

处理:

信息登记

输出的数据流:

F3

处理频率:

100条/次

处理逻辑编号:

P4

处理逻辑名称:

结账

输入的数据流:

处理:

信息登记。

输出的数据流:

F4

处理频率:

100条/次

外部实体描述:

外部实体编号:

S1

外部实体名称:

员工

简述:

前台、客房服务工作人员

输入的数据流:

输出的数据流:

F1、F2、F3/F4

外部实体编号:

S2

外部实体名称:

客人

简述:

住宿客人

输入的数据流:

输出的数据流:

F2、F3

数据项描述:

数据项编号:

I1

数据项名称:

订单编号

别名:

订房单编号

简述:

酒店订房单的编号

类型及宽度:

字符型,10位

取值范围:

“0000000000”-“9999999999”

数据项编号:

I2

数据项名称:

员工登陆单编号

别名:

员工登陆单编号

简述:

员工某天登陆单的编号

类型及宽度:

字符型,10位

取值范围:

“0000000000”-“9999999999”

数据项编号:

I3

数据项名称:

住宿单编号

别名:

住宿单编号

简述:

客人住宿单的编号

类型及宽度:

字符型,10位

取值范围:

“0000000000”-“9999999999”

数据项编号:

I4

数据项名称:

退单编号

别名:

退单编号

简述:

客人退房单的编号

类型及宽度:

字符型,10位

取值范围:

“0000000000”-“9999999999”

数据项编号:

I5

数据项名称:

客人信息登记单编号

别名:

客人信息登记单编号

简述:

客人信息登记单的编号

类型及宽度:

字符型,10位

取值范围:

“0000000000”-“9999999999”

数据项编号:

I6

数据项名称:

结账单编号

别名:

结账单编号

简述:

退房结帐单的代码

类型及宽度:

字符型,10位

取值范围:

“0000000000”-“9999999999”

 

3概念结构设计

概念结构设计的E-R图如下所示:

E-R图

 

概念结构设计的CDM图如下所示:

 

CDM图

4逻辑结构设计

由CDM转换而来的PDM图如下所示:

PDM图

5物理结构设计

PDM转换而来的脚本文件:

/*==============================================================*/

/*Databasename:

酒店客房管理系统*/

/*DBMSname:

MicrosoftSQLServer2000*/

/*Createdon:

2012-12-2215:

12:

31*/

/*==============================================================*/

 

use酒店客房管理系统

go

usemaster

go

dropdatabase酒店客房管理系统

go

usemaster

go

/*==============================================================*/

/*Database:

酒店客房管理系统*/

/*==============================================================*/

createdatabase酒店客房管理系统

go

use酒店客房管理系统

go

/*==============================================================*/

/*Table:

book*/

/*==============================================================*/

createtablebook(

S_idchar(20)notnull,

C_IDchar(10)notnull,

room_idchar(10)notnull,

B_idchar(10)notnull,

constraintPK_BOOKprimarykey(S_id,C_ID,room_id)

go

/*==============================================================*/

/*Index:

book_FK*/

/*==============================================================*/

createindexbook_FKonbook(

S_idASC

go

/*==============================================================*/

/*Index:

book2_FK*/

/*==============================================================*/

createindexbook2_FKonbook(

C_IDASC

go

/*==============================================================*/

/*Index:

book3_FK*/

/*==============================================================*/

createindexbook3_FKonbook(

room_idASC

go

/*==============================================================*/

/*Table:

cancel*/

/*==============================================================*/

createtablecancel(

S_idchar(20)notnull,

C_IDchar(10)notnull,

room_idchar(10)notnull,

cancel_idchar(10)notnull,

constraintPK_CANCELprimarykey(S_id,C_ID,room_id)

go

/*==============================================================*/

/*Index:

cancel_FK*/

/*==============================================================*/

createindexcancel_FKoncancel(

S_idASC

go

/*==============================================================*/

/*Index:

cancel2_FK*/

/*==============================================================*/

createindexcancel2_FKoncancel(

C_IDASC

go

/*==============================================================*/

/*Index:

cancel3_FK*/

/*==============================================================*/

createindexcancel3_FKoncancel(

room_idASC

go

/*==============================================================*/

/*Table:

client*/

/*==============================================================*/

createtableclient(

C_IDchar(10)notnull,

room_idchar(10)null,

C_namechar(10)null,

C_sexchar(3)null,

C_telchar(10)null,

constraintPK_CLIENTprimarykeynonclustered(C_ID)

go

/*==============================================================*/

/*Index:

客人住宿_FK*/

/*==============================================================*/

createindex客人住宿_FKonclient(

room_idASC

go

/*==============================================================*/

/*Table:

room*/

/*==============================================================*/

createtableroom(

room_idchar(10)notnull,

pricefloat(10)null,

sumintnull,

constraintPK_ROOMprimarykeynonclustered(room_id)

go

/*==============================================================*/

/*Table:

staff*/

/*==============================================================*/

createtablestaff(

S_idchar(20)notnull,

S_namechar(10)null,

S_sexchar(3)null,

S_addrchar(20)null,

S_locchar(10)null,

constraintPK_STAFFprimarykeynonclustered(S_id)

go

/*==============================================================*/

/*Table:

处理结账*/

/*==============================================================*/

createtable处理结账(

S_idchar(20)notnull,

C_IDchar(10)notnull,

constraintPK_处理结账primarykey(S_id,C_ID)

go

/*==============================================================*/

/*Index:

处理结账_FK*/

/*==============================================================*/

createindex处理结账_FKon处理结账(

S_idASC

go

/*==============================================================*/

/*Index:

处理结账2_FK*/

/*==============================================================*/

createindex处理结账2_FKon处理结账(

C_IDASC

go

altertablebook

addconstraintFK_BOOK_BOOK_STAFFforeignkey(S_id)

referencesstaff(S_id)

go

altertablebook

addconstraintFK_BOOK_BOOK2_CLIENTforeignkey(C_ID)

referencesclient(C_ID)

go

altertablebook

addconstraintFK_BOOK_BOOK3_ROOMforeignkey(room_id)

referencesroom(room_id)

go

altertablecancel

addconstraintFK_CANCEL_CANCEL_STAFFforeignkey(S_id)

referencesstaff(S_id)

go

altertablecancel

addconstraintFK_CANCEL_CANCEL2_CLIENTforeignkey(C_ID)

referencesclient(C_ID)

go

altertablecancel

addconstraintFK_CANCEL_CANCEL3_ROOMforeignkey(room_id)

referencesroom(room_id)

go

altertableclient

addconstraintFK_CLIENT_客人住宿_ROOMforeignkey(room_id)

referencesroom(room_id)

go

altertable处理结账

addconstraintFK_处理结账_处理结账_STAFFforeignkey(S_id)

referencesstaff(S_id)

go

altertable处理结账

addconstraintFK_处理结账_处理结账2_CLIENTforeignkey(C_ID)

referencesclient(C_ID)

go

6总结

经过几天的课程设计,我想对于我来说还是有收获的,让我对数据库的设计过程有了一个全面的认识和更深的了解。

从需求分析到概念结构设计,是一个转折,只要在需求分析阶段将整个流程分析透彻,将需求分析要完成的各种功能做一个全面的掌握。

需求分析阶段,对系统目标的要求是一个重点,业务流程图更加重要,而数据流程图和数据字典则是该阶段最为重要也是最为麻烦的部分。

然而,我个人感觉,只要静下心来,认真思考,所有的问题也都不是问题。

这次的课程设计只是一个练兵的过程,与实战相比自然是略有不足,但是对于锻炼一个人的处理事情的能力、对数据库设计的整体把握都起到了至关重要的作用,感谢老师提供了这样一个机会!

7参考文献

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1