宾馆管理系统 vb.docx
- 文档编号:3242112
- 上传时间:2023-05-05
- 格式:DOCX
- 页数:14
- 大小:318.96KB
宾馆管理系统 vb.docx
《宾馆管理系统 vb.docx》由会员分享,可在线阅读,更多相关《宾馆管理系统 vb.docx(14页珍藏版)》请在冰点文库上搜索。
宾馆管理系统vb
1.课程设计(实训)计划
实现VB与Access2000的连接,并用两者结合做出一个简单的宾馆管理系统。
具体如下:
.在数据库中建立一个名为“宾馆管理”的数据库,并在这个数据库下建立出相关表格,如:
客房标准信息、客房信息、顾客信息。
.实现VB与数据库的连接。
.在VB中设置出客房信息、订房信息、结算信息三个子系统。
三个子系统,分别都要具有简单的操作:
添加、删除、查询、修改等操作,使三者可以完成宾馆管理系统的所需的功能。
.用户进入登录界面登陆后,可以继续选择所要进的子系统,选择之后,如要添加则进入添加界面,如是查询则输入相应的数据进行查询,如是删除则选中记录后进行删除,完成后退出相应界面回到上一级。
.该系统还有系统备份、帮助、关于等子系统,使该系统更加完善。
2.系统需求分析与功能设计(根据课题的要求进行简单的需求分析,设计相应的数据流图,得出相应的系统功能需要,系统数据流图)
通过对宾馆管理工作过程的内容和数据流图分析,设计如下面的数据项和数据结构。
1、客房标准,包括的数据项有:
标准编号,标准名称,房间面积,床位数量,住房单价,是否有空调,是否有电话,是否有电视,是否有电脑,是否有卫生间。
2、客房信息,包括的数据项有:
客房编号,客房种类,客房位置,客房单价,是否满员,备注。
3、顾客信息,包括的数据项有:
顾客名称,身份证号码,入住时间,折扣,结账时间,备注。
其中管理员通过登陆界面可以对客房标准、客房信息、顾客信息进行添加、修改、查询、删除等操作。
而其他人不具备这个权利。
这个项目所用的环境是VB跟Access两个环境来做的这个系统,其中在Access是企业管理中建立相应的表格,如客房标准表、客房信息表、顾客信息表等,然后再VB中进行Access2000的编辑。
在VB中建立相应的内容,然后进行代码的编辑,使得管理员在点击登陆过后能够顺利的进行相应的添加、修改、查询操作。
操作图如图:
3.总体设计
(根据功能需求,设计系统的总体结构。
系统总体功能模块图,菜单的设计)
4.数据库设计(完成数据库的概念设计、逻辑设计,按数据库设计方法和规范化理论得出符合3NF的逻辑模型,ER图设计,ER图转化为相应的关系模式,设计数据库的逻辑模型(以表格),在机器上完成数据库的物理设计)
数据库概念设计结构:
图1客房标准图
图2客房信息图
图3顾客信息图
数据库逻辑结构设计:
客房标准表
字段名
数据类型
长度
说明
标准标号
char
4
非空、主键
标准名称
char
10
可为空
房间面积
int
4
可为空
床位数量
int
1
可为空
住房单价
int
4
可为空
是否有空调
char
2
可为空
是否有电话
char
2
可为空
是否有电视
char
2
可为空
是否有电脑
char
2
可为空
是否有卫生间
char
2
可为空
顾客信息表
字段名
数据类型
长度
说明
顾客名称
char
10
可为空
身份证号码
int
18
非空,主键
入住时间
datatime
8
可为空
折扣
int
3
可为空
结算时间
datatime
8
可为空
备注
char
30
可为空
客房信息表
字段名
数据类型
长度
说明
客房编号
char
4
可为空
客房种类
char
6
可为空
客房位置
char
5
可为空
客房单价
int
4
可为空
是否满员
char
2
可为空
备注
char
30
可为空
5.程序模块设计
(设计并编写输入\输出、查询\统计、数据维护等功能模块的应用程序,每个人设计2个以上的模块,一个组完成一个完整的系统,数据库访问,存储过程调用等作重点阐述)
1.用户登录
PrivateSubCommand1_Click()
IftxtUser.Text="lkk"AndtxtPwd.Text="123"Then
LoginForm.Hide
MDIMain.Show
Else
MsgBox"密码不正确",vbOKOnly+vbExclamation,"警告"
txtPwd.Text=""
txtPwd.SetFocus
CountNum=CountNum+1
'若次数年多于三次则自动退出
IfCountNum>3Then
MsgBox"输入次数过多",vbOKOnly+vbExclamation,"警告"
UnloadMe
EndIf
EndIf
EndSub
2.系统功能的选择,如:
进入客房标准的添加
PrivateSubMDIForm_Load()
StatusBar1.Panels
(1).Text="当前操作:
"&Me.Caption
EndSub
3.添加记录,如:
添加客房标准信息
PrivateSubCommand1_Click()
Adodc1.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&_""+App.Path+"\Hotel.mdb"
Adodc1.RecordSource="Select*fromRoomInfo"
Adodc1.Refresh
IfText1.Text=""Then
MsgBox"请输入客房编号",vbOKOnly+vbExclamation,"您好!
"
Else
Adodc1.Recordset.Find"[RoomNum]="+"'"+Text1.Text+"'"
IfNotAdodc1.Recordset.EOFThen
MsgBox"此编号已存在",vbOKOnly+vbExclamation,"您好"
Text1.Text=""
Text1.SetFocus
Else
IfCombo1.Text=""Then
MsgBox"客房类型",vbOKOnly+vbExclamation,"您好!
"
Else
IfCombo2.Text=""Then
MsgBox"请输入是否满员",vbOKOnly+vbExclamation,"您好!
"
Else
Adodc1.Recordset.AddNew
Adodc1.Recordset.Fields(0)=Trim(Text1.Text)'客房编号
Adodc1.Recordset.Fields
(1)=Trim(Combo1.Text)'客房类型
Adodc1.Recordset.Fields
(2)=Trim(Combo2.Text)'是否满员
Adodc1.Recordset.Fields(3)=Trim(Text2.Text)'客房位置
Adodc1.Recordset.Fields(4)=Val(Text3.Text)'客房单价
Adodc1.Recordset.Fields(5)=Text4.Text'备注
Adodc1.Recordset.Update
MsgBox"添加成功!
",vbOKOnly,"您好!
"
Text1.Text=""
Text2.Text=""
Text3.Text=""
Text4.Text=""
Combo1.Text=""
Combo2.Text=""
EndIf
EndIf
EndIf
EndIf
EndSub
4.删除记录,如:
删除客房信息
PrivateSubCommand2_Click()
DataGrid1.AllowDelete=True
IfMsgBox("真的要删除吗?
",vbOKCancel+vbExclamation,"警告")=vbOKThen
WithAdodc1.Recordset
If.RecordCount>0Then'是否有记录
.Delete
.MovePrevious
EndIf
EndWith
DataGrid1.Refresh
Else
ExitSub
EndIf
EndSub
5.修改记录,如:
客房标准
PrivateSubCommand1_Click()
DataGrid1.AllowUpdate=True
EndSub
6.查询记录,如:
查询某个客房信息
PrivateSubCommand1_Click()
IfTrim(Combo1.Text)=""Then
MsgBox"请选择查询条件!
",vbOKOnly+vbExclamation,"您好"
Else
Adodc1.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&_""+App.Path+"\Hotel.mdb"
Adodc1.RecordSource="SelectRoomNumas客房编号,"&_
"RoomTypeas客房类型,PutUpas是否满员,RoomPositionas客房位置,"&_
"RoomPriceas客房单价,RoomMemoas客房备注"&_
"fromRoomInfowhereRoomType='"&Combo1.Text&"'"
Adodc1.Refresh
SetDataGrid1.DataSource=Adodc1
DataGrid1.ReBind
EndIf
EndSub
6.系统备份
PrivateSubCommand1_Click()
a=MsgBox("确定备份数据?
",4,"宾馆管理信息系统")
Ifa=vbYesThen
Command1.Enabled=False
ProgressBar1.Max=UBound(area)
ProgressBar1.Value=ProgressBar1.Min
ForCounter=LBound(area)ToUBound(area)
area(Counter)="initialvalue"&Counter
ProgressBar1.Value=Counter
Openstr1ForBinaryAs#1
Openstr2ForBinaryAs#2
DoWhileNotEOF
(1)
Get#1,,char
Put#2,,char
Loop
Close
NextCounter
ProgressBar1.Value=ProgressBar1.Min
MsgBox"数据库备份成功!
",vbInformation+vbOKOnly,"宾馆管理信息系统"
Command1.Enabled=True
EndIf
EndSub
6.技术难点与分析
(主要内容:
本课题在设计过程中所遇到的技术难点及解决方法。
)
1、VB与Access2000连接
在向VB中加入Adodc和Datagrid控件时,要对其属性进行设置后,运行时依然无法与与数据库建立连接,一直报错,纠结了好久都不知道原因。
经后来反复研究才发现在Adodc控件的RecordSource属性中的“表或存储过程名称”没有设置,因为要有对应的表的内容才能对数据库中的字段进行操作!
2、数据删除问题
单击“删除”按钮后,记录删除了但不是操作者指定的记录,经分析后认为是程序没写完整,可能少了什么控制的语句。
查阅了很多网上的程序,竟然和我们的很相似,并没有什么控制语句。
于是经过一段时间的反复运行,发现在程序运行时,我们都忽略了一个很重要的问题,就是Datagrid的用途,因为对它不了解,以为只是显示建立的数据库表中内容,其实是可以点击相应的某行选中此行,在对其进行操作的,当我们在运用删除操作时,只要把想要删除的记录选中,就可以轻松删除了,不过每次只能删除一条记录。
7.系统测试
(主要内容:
测试环境描述,测试系统结构,系统功能测试,测试数据,测试结果等)
1.登陆界面
2.进入系统功能选择
3.具体操作
8.心得体会
(主要对本课题开发过程进行归纳和总结,还应包括所得结果与已有结果的比较和本课题尚存在的问题,以及进一步开发的见解与建议。
感谢对本课题研究与论文撰写过程中曾直接给予帮助的人员)
其实做完这个系统首先要感谢的是老师耐心的指导。
在开发过程中,有时我们会遇到一些意想不到的难题和疑惑,在指导老师的协助下,这些难题以及疑惑被我们一个个的攻破,并使系统最终得以顺利地完成。
正是由于我们大家的共同的热情,默契的合作和不懈的努力,使我们的课题得以顺利地完全地达到了预期的目标。
在编写过程中,我们深刻感觉到系统质量的重要性。
都十分重视自己的系统工程,把整个系统开发都纳入严格的管理之中。
在整个开发中我们感觉到如果能够对系统开发过程的质量加以控制,则可以大幅度的提高我们做的系统质量。
只有在开发工程中严格遵守质量管理,所做出的成果质量才有保证。
否则开发工作一旦进行到最后,无论怎样通过测试和补漏洞,都会很麻烦甚至无济于事。
编码的错误容易查出,但设计的错误如果带到编码阶段就会是错误逐步扩大,最终很可能造成严重的后果。
例如在分析阶段,识别系统中的对象以及它们之间的关系是紧密相连的,在设计阶段,仍沿用分析的结果,并根据实现的需要增加或删除合并某些对象,或在某些对象中添加相关的属性和操作,同时设计实现这些操作的方法;在实现阶段,则用程序设计语言来描述这些对象以及它们之间的联系。
因此面向对象的方法的分析、设计、实现的结果能直接映照到客观世界中系统的实体上,也就是说,解空间的结构与问题空间的结构是一致的。
对象以属性及操作为接口,这些特征使得系统的体系结构是模块化的,这种体系结构易于理解扩充和修改。
在设计中,我深切体会到合理建库的必要性和重要性,每一个表必须有序号且最好为关键字由系统自动生成;表的字段逻辑结构要合理;尽量建成主从关系的表才更有利编程。
9.参考文献
[1].张玉生VisualBasic程序设计教程中国电力出版社
[2].鲁荣江、王立丰VisualBasic6.0项目案例导航科学出版社
[3].黄梯云管理信息系统高等教育出版社
[4].微软公司MicrosoftOfficeAccess2000高等教育出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 宾馆管理系统 vb 宾馆 管理 系统
![提示](https://static.bingdoc.com/images/bang_tan.gif)