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

上传人:b****3 文档编号:5088879 上传时间:2022-12-13 格式:DOCX 页数:51 大小:398.98KB
下载 相关 举报
数据库课程设计酒店管理系统.docx_第1页
第1页 / 共51页
数据库课程设计酒店管理系统.docx_第2页
第2页 / 共51页
数据库课程设计酒店管理系统.docx_第3页
第3页 / 共51页
数据库课程设计酒店管理系统.docx_第4页
第4页 / 共51页
数据库课程设计酒店管理系统.docx_第5页
第5页 / 共51页
点击查看更多>>
下载资源
资源描述

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

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

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

数据库课程设计酒店管理系统

 

数据库系统课程设计报告

 

题目:

酒店管理系统

 

课程代号:

0680036

课程名称:

数据库系统课程设计

学号:

姓名:

班级:

指导教师

完成日期:

2011年4月

 

第一章引言

第二章系统分析与设计

2.1需求分析

2.2结构设计

2.3数据库设计

第三章系统开发及实现

3.1创建主窗体

3.2创建子窗体

3.3建立公共模块

第四章总结

参考文献

附录(附部分源代码)

 

第一章引言

酒店管理系统是现代服务行业不可缺少的一个组成环节。

酒店管理信息系统是一个由人、计算机和数据库组成的进行酒店经营管理的系统,通过对信息的收集、传递、整理、加工、维护和使用,提高管理水平和效率,从而实现酒店管理的自动化、规范化和人性化。

本文简要介绍了基于Microsoft和VB程序语言开发实现的酒店管理系统,着重阐述了该系统开发实现过程,从系统的需求分析、方案论证、模块设计、数据设计、详细设计到系统测试等各个环节都进行了较为详尽的分析和描述。

关键词:

酒店管理系统、Access、数据库、VB

 

第二章系统分析与设计

2.1需求分析

在进行一个项目的设计之前,首先要进行必要的需求分析。

酒店需要管理各种人员和入住信息,希望实现酒店的信息化管理,通过建立一个酒店管理系统来管理酒店的日常业务。

其完成功能如下:

1、能够实现对客人的登记信息查询,包括逐个浏览,以及对客人资料的增加、删除和编辑操作。

2、能够的酒店人员值班情况进行管理。

3、管理人员也可以直接增加和删除用户信息。

系统功能模块图如图1所示。

图1系统的功能模块图

根据功能模块图设计划出的实体有散客入住实体、团队入住实体、投诉管理实体、值班管理实体。

散客入住实体E-R如图2所示。

团队入住实体E-R如图3所示

投诉管理实体E-R图如图4所示

值班管理实体E-R图如图5所示

 

图2散客入住实体E-R图

 

图3团队入住实体E-R图

 

图4投诉管理实体E-R图

 

图5值班管理实体E-R图

2.2结构设计

使用windows操作系统、开发维护系统即visualbasic软件系统、一套数据库系统Access即可。

他们之间的关系如图6所示。

图6结构关系图

根据上面的需求分析,设计好数据库系统,然后开发应用程序可以考虑窗体的系统,每一个窗体实现不同的功能,可以设计以下几个模块。

·客人入住模块:

用来实现登记入住的增加、删除和修改等操作。

·客人信息查询模块:

用来实现对客人信息的浏览和查询。

·值班管理模块:

用来实现对工作人员值班情况的增加、删除和修改等操作。

·系统管理模块:

用来实现用户的增加、删除和修改等操作。

2.3数据库设计

这里数据库采用access,用ADO作为连接数据对象。

2.3.1建立access数据库

启动access,建立一个空的数据库jiudian.mbd,如图7所示。

图7jiudian.mdb

使用程序设计器建立系统需要的表格如下:

散客资料表,如图8所示。

团队资料表,如图9所示。

值班管理表,如图10所示。

系统管理表,如图11所示。

投诉管理表,如图12所示。

图8散客资料表图9团队资料表

图10值班管理表图11系统管理表

图12投诉管理表

2.3.2连接数据库

在程序设计的公共模块中,先定义ADO链接对象。

语句如下:

PublicconnAsNewADODB.Connection'标记连接对象

然后在子程序中,用如下的语句即可打开数据库:

DimconnectionstringAsString

connectionstring="provider=Microsoft.Jet.oledb.4.0;"&_

"datasource=jiudian.mdb"

conn.Openconnectionstring

图12引用ADO连接数据库

 

第三章系统开发与实现

这是一个多文档界面(MDI)应用程序,如图13所示,可以同时显示多个文档,每个文档显示在各个窗体中。

MDI应用程序中常有包含子菜单“窗体”选项,用于在窗体或文档间进行切换。

菜单应用程序中,有5个菜单选项,每个选项对应着E-R图中的一个子项目。

图13多文档界面

3.1创建主窗体

首先创建一个工程,命名为酒店管理系统。

该窗体属性如表1所示。

属性

Caption

酒店管理系统

WindowState

Maxsize

表1主窗体的属性

图14菜单编辑器

在主窗体的工具栏中,选菜单编辑器,创建如图14所示的菜单结构。

创建一些菜单项,如表2所示。

表2菜单项表

菜单名称

Text属性

功能描述

MenuItem1

系统管理

顶级菜单,包含子菜单

MenuItem2

新增用户

调出用户窗体

MenuItem3

修改密码

调出密码窗体

MenuItem4

退出系统

推出

MenuItem5

客人入住

顶级菜单,包含子菜单

MenuItem6

散客入住

调出散客入住信息窗体

MenuItem7

团队入住

调出团队入住信息窗体

MenuItem8

客人信息查询

调出查询窗体

MenuItem9

人事管理

顶级菜单,包含子菜单

MenuItem10

客户投诉管理

调出客户投诉信息窗体

MenuItem11

值班管理

调出值班信息窗体

MenuItem12

关于

调出对系统的要求

主窗体如图15所示。

图15主窗体

3.2创建各个子窗体

“工程”—“添加窗体”命令,添加子窗体。

把窗体的属性MIDChild改成Ture,这个窗体则成为MID子窗体。

这个项目中,要创建的子窗体如表3所示。

下面分别是各个子窗体,以及他们所使用的控件,如表3所示。

表3所有子窗体

子窗体名

Text

散客入住

frmonly_client

团队入住

Frmdouble_client

增加用户

frmadduser

修改密码

frmchangepwd

客人资料

frmdatamanage

查询输出

frmfind

关于

frmAbout

用户登录

frmlogin

客人投诉管理

frmkhts

值班管理

frmzhiban

3.2.1散客入住子窗体

散客入住子窗体如图16所示,其控件如表4所示。

图16散客入住子窗体

表4散客入住子窗口控件

控件类型

控件Name

控件Text

Frame1

散客入住

Frame

Frame2

(空)

DateGrid

DateGrid1

(空)

Commend1

新增记录

Commend2

修改记录

Commend

Commend3

删除记录

Commend4

取消

Commend5

退出

3.2.2增加用户子窗体

增加用户子窗体如图17所示,其控件如表5所示。

图17增加用户子窗体

表5增加用户控件表

控件类别

控件Name

控件Text

Label1

输入用户名

Label

Label2

输入密码

Label3

确认密码

Label4

选择权限

Text1

(空)

TextBox

Text2

(空)

Text3

(空)

ComboBox

Comb1

(空)

CommandButton

Command1

确认

Command2

取消

3.2.3修改密码子窗体

修改密码子窗体如图18所示,其控件如表6所示。

图18修改密码子窗体

表6修改密码窗体

控件类别

控件Name

控件Text

Label

Label1

新密码

Label2

确认密码

TextBox

Text1

(空)

Text2

(空)

CommandButton

Command1

确定

Command2

取消

3.2.4团队入住子窗体

团队入住子窗体如图19所示,其控件如表7所示

图19团队入住子窗体

表7团队入住子窗口控件

控件类型

控件Name

控件Text

Frame

Frame1

团队入住

Frame2

(空)

DataGrid

DataGrid1

(空)

CommandButton

Command1

新增记录

Command2

修改记录

Command3

删除记录

Command4

取消

Command5

退出

3.2.5查询子窗体

查询子窗体如图20所示,其控件如表8所示

图20查询子窗体

表8查询子控件

控件类别

控件Name

控件Text

OptionButton

Option1

按房号

Option2

按抵达日

Lable1

Lable

Lable2

Lable3

Lable4

Lable5

Lable6

Lable7

Lable

Lable8

Lable9

Lable10

Combo(0)CoboBox

Combol

(空)

Combo

(1)CoboBox

Combol

(空)

Combo(0)CoboBox

Comboy

(空)

Combo

(1)CoboBox

Comboy

(空)

Combo(0)CoboBox

Combom

(空)

Combo

(1)CoboBox

Combom

(空)

Combo(0)CoboBox

Combod

(空)

Combo

(1)CoboBox

Combod

(空)

CommandButton

Command1

查询

Command2

取消

3.2.6用户登录子窗体

用户登录子窗体如图21所示,其控件如表9所示

图21用户登录子窗体

表9用户登录子窗口控件

控件类别

控件Name

控件Text

Label

Label1

用户名

Label2

密码

TextBox

Text1

(空)

Text2

(空)

CommandButton

Command1

确定

Command2

取消

3.2.7值班管理子窗体

值班管理子窗体如图22所示,其控件如表10所示

图22值班管理子窗体

表10值班管理子窗口控件

控件类别

控件Name

控件Text

Frame

Frame1

值班管理

Datagrid

DataGrid1

(空)

CmdAdd

增加记录

CommandButton

CmdDcl

删除记录

CmdCanccl

取消

3.2.8投诉管理子窗体

投诉管理子窗体如图23所示,其控件如表11所示

图23投诉管理子窗体

表11投诉管理子窗体控件

控件类别

控件Name

控件属性

控件属性值

Frame

Frame1

Caption

投诉信息

Frame2

Caption

(空)

控件类别

控件Name

控件属性

控件属性值

Label1

Caption

投诉编号

Label2

Caption

投诉日期

Label3

Caption

投诉对象

Label

Label4

Caption

投诉内容

Label5

Caption

受诉部门

Label6

Caption

受诉日期

Label7

Caption

处理意见

 

DataGrid1

DataSource

Adodc1

AllowAddNew

Ture

DataGrid

AllowDelete

Ture

AllowUpdata

Ture

AllowArrows

Ture

Command1

上一条

(空)

Command2

下一条

(空)

Command3

第一条

(空)

CommandButton

Command4

末一条

(空)

Command5

增加记录

(空)

Command6

删除记录

(空)

Command7

取消

(空)

Adodc

Adodc1

CommunationString

Jiudian.mdb

RecordSource

投诉管理

 

Text

Text1

Text

(空)

DataField

投诉编号

DataSource

Adodc1

Text2

Text

(空)

DataField

投诉日期

DataSource

Adodc1

Text3

Text

(空)

DataField

投诉对象

DataSource

Adodc1

Text4

Text

(空)

 

Text

DataField

投诉内容

DataSource

Adodc1

Text5

Text

(空)

DataField

受诉部门

DataSource

Adodc1

Text6

Text

(空)

DataField

受诉日期

DataSource

Adodc1

Text7

Text

(空)

DataField

处理意见

DataSource

Adodc1

3.3建立公共模块

建立公共模块可以提高代码效率,同时使得修改和维护代码都很方便。

创建公共模块的步骤如下:

(1)“工程”—“添加模块”

(2)选择模块图标后,打开,着这个模块已经添加到项目中了。

默认情况下名为modulel。

(3)在模块中定义整个项目的公共变量。

PublicconnAsNewADODB.Connection'标记连接对象

PublicuserIDAsString'标记当前用户ID

PublicuserpowAsString'标记用户权限

PublicfindAsBoolean'标记查询

PublicsqlfindAsString'查询语句

Publicrs_data1AsNewADODB.Recordset

PublicfindokAsBoolean

PublicfrmdataAsBoolean

 

第四章总结

通过本次设计,设计的基本思想方法,能够独立编写小型的数据库程序,通过数据库系统应用课题的实践,进一步提高分析问题解决问题的能力及软件开发过程的能力。

遗憾的是对数据库设计工作的认识仅仅停留在表面,只是在参考着书做,借被人的思想,亲自操作却尽力很多困难,所以未能领会其精髓。

但时通过这次数据库设计,加深了我对数据库设计基本知识的理解,丰富了我做数据库设计的实际技术,虽然学的不精,但让我对数据库产生了浓厚的兴趣,也使我对数据库有了深层次的感性和理性认识。

认识到要做好一项工作,既要注重理论知识的学习,更重要的是要把实践与理论两者紧密相结合。

 

参考文献

[1]王珊,萨师煊编译.数据库系统概论.北京:

高等教育出版社,1983

[2]张跃延,王小科,许文武.数据库开发案例精选.人民邮电出版社,2007,

[3]Connolly.T.数据库设计/设计师实现与管理.电子工业出版社,2006

[4]钱雪忠,甸海驰,陈国俊编著.数据库原理及技术课程设计.北京:

清华大学出版社,2009

[5]谭浩强编译.Visualbasic程序设计.北京:

清华大学出版社,2006

 

附录:

代码设计

.

1主窗体代设计

本项目中,子菜单事件都是click事件,主窗体代码。

下面是响应“新增用户”子菜单click事件,调出新增用窗体代码。

下面是响应“新增用户”子菜单click事件,调出新增用窗体代码。

下面是响应“新增用户”子菜单click事件,调出新增用窗体代码。

下面是响应“新增用户”子菜单click事件,调出新增用窗体代码。

PrivateSubabout_Click()

frmAbout.Show

EndSub

PrivateSubadd_user_Click()

frmadduser.Show

EndSub

PrivateSubdouble_check_Click()

frmfind_double.Show

EndSub

PrivateSubcheck_Click()

frmfind.Show

EndSub

PrivateSubdouble_client_Click()

frmdouble_client.Show

EndSub

PrivateSubexit_Click()

UnloadMe

EndSub

PrivateSubkhts_Click()

frmkhts.Show

EndSub

PrivateSubMDIForm_Load()

frmdata=False

find=False

EndSub

PrivateSubmodify_pw_Click()

frmchangepwd.Show

EndSub

PrivateSubonly_check_Click()

frmfind.Show

EndSub

PrivateSubonly_client_Click()

frmonly_client.Show

EndSub

PrivateSubzbgl_Click()

frmzhiban.Show

EndSub

2子窗体的代码

在各个子窗体建立好后,就可以根据各个子窗体的功能给他们添加相应代码了。

(1)散客入住子窗体代码

本窗口用来录入散客入住信息,用ADO来连接数据库,是本窗体的重点。

采用MDI的子程序,所以运行后,它出现在主程序界面下,

下面的代码是定义变量的。

OptionExplicit

Dimrs_clientAsNewADODB.Recordset

新增用户按钮代码

OptionExplicit

Dimrs_clientAsNewADODB.Recordset

PrivateSubCommand1_Click()

OnErrorGoToadderror

IfCommand1.Caption="新增记录"Then'当此按钮的状态为为“增加记录”时

Command1.Caption="确定"'按钮名称改为“确定”

Command2.Enabled=False'删除与修改按钮不可用

Command3.Enabled=False

Command4.Enabled=True'取消按钮可用

DataGrid1.AllowAddNew=True

DataGrid1.AllowUpdate=True'设定datagrid可以增加记录

Else

IfNotIsNull(DataGrid1.Bookmark)Then

IfTrim(DataGrid1.Columns("房号").CellText(DataGrid1.Bookmark))=""Then

MsgBox"房号不能为空!

",vbOKOnly+vbExclamation,""

ExitSub

EndIf

IfTrim(DataGrid1.Columns("房价").CellText(DataGrid1.Bookmark))=""Then

MsgBox"房价不能为空!

",vbOKOnly+vbExclamation,""

ExitSub

EndIf

IfTrim(DataGrid1.Columns("姓名").CellText(DataGrid1.Bookmark))=""Then

MsgBox"姓名不能为空!

",vbOKOnly+vbExclamation,""

ExitSub

EndIf

IfTrim(DataGrid1.Columns("性别").CellText(DataGrid1.Bookmark))=""Then

MsgBox"性别不能为空!

",vbOKOnly+vbExclamation,""

ExitSub

EndIf

IfNotIsDate(Trim(DataGrid1.Columns("抵达日").CellText(DataGrid1.Bookmark)))Then

MsgBox"请按照格式hh-mm输入抵达日",vbOKOnly+vbExclamation,""

ExitSub

EndIf

IfNotIsDate(Trim(DataGrid1.Columns("离店日").CellText(DataGrid1.Bookmark)))Then

MsgBox"请按照格式hh-mm输入离店日",vbOKOnly+vbExclamation,""

ExitSub

EndIf

rs_client.Update

MsgBox"添加信息成功!

",vbOKOnly+vbExclamation,""

DataGrid1.AllowAddNew=False

DataGrid1.AllowUpdate=False

Else

MsgBox"没有添加信息!

",vbOKOnly+vbExclamation,""

EndIf

Command1.Caption="新增记录"

Command2.Enabled=True

Command3.Enabled=True

Command4.Enabled=False

EndIf

adderror:

IfErr.Number<>0Then

MsgBoxErr.Description

EndIf

EndSub

PrivateSubCommand2_Click()

DimanswerAsString

OnErrorGoTocmdmodify

IfCommand2.Caption="修改记录"Then

answer=MsgBox("确定要修改吗?

",vbYesNo,"")

Ifanswer=vbYesThen

Command2.Caption="确定"

Command1.Enabled=False

Command3.Enabled=False

Command4.Enabled=True

DataGrid1.AllowUpdate=True

Else

ExitSub

EndIf

Else

IfNotIsNu

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

当前位置:首页 > 法律文书 > 调解书

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

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