客房管理系统设计Word格式文档下载.docx
- 文档编号:21010198
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:22
- 大小:469.56KB
客房管理系统设计Word格式文档下载.docx
《客房管理系统设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《客房管理系统设计Word格式文档下载.docx(22页珍藏版)》请在冰豆网上搜索。
整型
长度
4
取值范围
0000-9999
取值含义
按客户顺序编号
与其他数据项的逻辑关系
房号
唯一标识每个房间
房间编号
100-411
每层楼的房间顺序
账单编号
唯一标识每个账单
按账单顺序编号
数据结构
客户
客房管理系统的主体数据结构,定义了一个客户的相关信息
组成
客户编号,客户姓名,性别,年龄,身份证号,户籍
客房
客房管理系统的主体数据结构,定义一个客房的相关信息
房号,房间类型,房间价格,房间状态
数据流
结算账单
客户入住的消费结果
数据流来源
结算处理
数据流去向
操作员
账单编号,房号,住店天数,总费用
数据存储
客户信息表
说明
记录入住的客户的综合信息
流入数据流
客户信息
流出数据流
入住信息
客户,入住时间,离店时间,押金,账单编号,房号
二、数据库概念结构设计
经考察和分析,本案例客房管理系统包括以下实体:
客户实体、客房实体、操作员实体、结算账单实体,它们的E-R图如以下所示。
三、数据库逻辑结构设计
根据E-R图,将图转换为关系模型即:
将实体、实体的属性和实体之间的联系转换为关系模式,然后对数据模型进行优化得到如下关系数据表。
客户:
{客户编号,姓名,性别,年龄,身份证号,原住地址,押金,住店时间,离店时间,房号,账单编号}
客房:
{房号,房间类型,房间状态,房间价格}
操作员:
{操作员编号,操作员姓名,职称}
结算账单:
{账单编号,住房天数,总费用,操作员编号,房号}
关系数据表确定后要进行数据表的逻辑结构设计,即定义关系数据表中字段名称、数据结构、是否允许为空、关键字、说明等。
(1)客户表
用于存放客户的入住信息,例如:
客户名,房号等。
表3.1客户表
字段名称
是否允许为空
Int
NOTNULL,主键
姓名
Varchar(8)
NULL
入住客户的姓名
性别
Varchar
(2)
年龄
身份证号
Varchar(18)
客户的身份证号
原住地址
Varchar(50)
客户的户籍地址
住店时间
Varchar(15)
NOTNULL
离店时间
押金
NOTNULL,主键
房间类型
房间价格
房间状态
(2)客房表
用于存放客房的相关信息,例如:
房号,房间类型,房间状态等。
表3.2客房表
(3)结算账单表
结算帐单表用于存放客户消费的信息。
表3.3结算账单表
入住时间
住店天数
总费用
(4)操作员表
用于存放操作员的的信息,例如:
操作员的编号,密码等。
表3.4操作员表
操作员编号
用于登陆和识别身份
操作员姓名
职称
Varchar(10)
密码
用于登陆输入密码
四、数据库物理结构设计
在进行了数据表的逻辑结构定义后,需要为每个数据表创建其物理结构,即在数据库系统中定义数据表具体存放的格式、位置等。
这里列出利用SQLServer2000自带的数据库创建的数据表的物理结构。
1.“客房”表的物理结构
“客房”表的物理结构如图4.1所示,关键字为”房号”
图4.1
2.“客户”表的物理结构
“客户”表的物理结构如图4.2所示,关键字为”客户编号”,利用”房号”可与”结算账单”表和”客房”表建立联系。
图4.2
3.“结算账单”表的物理结构
“结算账单”表的物理结构如图4.3所示,关键字为”账单编号”。
图4.3
4.“操作员”表的物理结构
“操作员”表的物理结构如图4.4所示,关键字为”操作员编号”。
图4.4
5.“操作员_VIEW”视图的物理结构
是客房和客户的连接。
图4.5
五、数据库的实施
根据以上所进行的调查、设计和进行方案,建立并实施数据库。
此系统运用
SQLServer2000进行数据库的开发。
1.数据库建表语句
⑴名称:
客户表“客户”
标识:
建表语句如下:
createtable客户(
客户编号intnotnull,
客户姓名varchar(8)null,
年龄intnull,
性别varchar
(2)null,
身份证号varchar(18)null,
户籍varchar(50)null,
房号intnotnull,
住店时间varchar(15)null,
离店时间varchar(15)null,
押金intnull,
账单编号intnull,
constraintPK_客户primarykey(客户编号)
)
go
⑵名称:
客房表“客房”
createtable客房(
房间类型varchar(10)notnull,
房间价格intnotnull,
房间状态varchar
(2)notnull,
constraintPK_客房primarykey(房号)
⑶名称:
操作员表“操作员”
标识:
createtable操作员(
操作员编号intnotnull,
操作员姓名varchar(8)null,
职称varchar(10)null,
密码varchar(10)null,
constraintPK_操作员primarykey(操作员编号)
⑷名称:
结算账单表“结算账单”
createtable结算账单(
账单编号intnotnull,
住房天数intnotnull,
总费用intnotnull,
constraintPK_结算账单primarykey(账单编号)
2.数据库的建视图语句
“操作员_VIEW”
SELECTdbo.客房.房号,dbo.客房.房间类型,dbo.客房.房间价格,dbo.客房.房间状态,
dbo.客户.客户姓名,dbo.客户.年龄,dbo.客户.性别,dbo.客户.身份证号,dbo.客户.户籍,
dbo.客户.住店时间,dbo.客户.离店时间,dbo.客户.押金
FROMdbo.客房INNERJOIN
dbo.客户ONdbo.客房.房号=dbo.客户.房号
六、数据库的运行
根据以上所做的准备以及SQLServer2000建立好的表、试图及各种关系,运用VisualBasic6.0为前台开发工具,开发出客户管理系统,主要运用了ADODC控件和DataGrid控件。
1.系统登陆界
在进入主界面之前有一个用户登陆界面,用户键入用户名和密码,系统自行判定是否存在,然后进入主界面。
输入:
用户名,密码。
处理:
判断用户名和密码是否有效。
填入用户名和密码后点击【登录】按钮,系统将自动从数据库中判断是否存在相同的用户名和密码,如果有则进入系统,如果不存在则提示用户名和密码有错误信息。
输出:
登录成功,进入系统的主页面并出现欢迎使用系统的对话框,不成功则显示错误信息页面。
系统登陆界面如图6.1所示
图6.1
2.系统主界面
主界面包括系统的主要功能包括新建客户信息、客房信息查询、客户信息查询、结算信息账单,四个主要的功能。
用户可以根据需要点击自己想使用的功能进入功能界面。
系统主界面如图6.2所示。
图6.2
3.客户信息查询界面
打开界面后左面显示所有客户的信息,中间显示编号为0的客户信息,右边为查询条件,查询结果显示在中间的部分。
如图6.3所示。
图6.3
4.新建客户信息界面
填写新入住客户的基本信息以及部分入住信息。
先单击“添加新用户”,然后输入信息,最后单击“确认添加”完成操作。
新建客户界面如图6.4所示。
图6.4
5.客户结算信息界面
此界面综合显示了客户的入住信息和所入住的客房信息,能够便于操作员方便快速的结算出客户的总费用。
结算信息界面如图6.5所示
图6.5
6.客房信息查询界面
类似于客户信息查询。
左边为客房总体信息预览,右上角为查询条件即客房的房号,右下角为查询结果显示区域。
客房信息查询界面如图6.6所示。
图6.6
参考文献
[1]王珊,陈红.数据库系统原理教程[M].北京:
清华大学出版社,1998.7.
[2]王珊,萨师煊.数据库系统概论(第四版)[M].北京:
高等教育出版社,2006.5.
[3]虞益诚,孙莉.SQLServer2000数据库应用技术[M].北京:
中国铁道出版社,2004.11.
[4]刘钢.VisualBasic程序设计与应用案例[M].北京:
高等教育出版社,2003.9.
[5]AbrahamSilberschatz,HenryF.Korth,S.Sudarshan.DatabaseSystemConcepts(FourthEdition).HigherEducationPress.
[6]罗运模.完全掌握SQLServer2000[J].北京:
人民邮电出版社,2001.
[7]白尚旺.PowerDesigner软件工程技术[M].北京:
电子工业出版社,2004.
附录Ⅰ客房管理系统部分程序代码
⑴登陆验证代码
代码如下:
PrivateSubCommand1_Click()
DimconnAsNewADODB.Connection
conn.ConnectionString="
Provider=SQLOLEDB.1;
IntegratedSecurity=SSPI;
PersistSecurityInfo=False;
InitialCatalog=客房管理系统;
DataSource=WWW-4FDE9FFEC01"
conn.Open‘连接并打开数据库
Dimrs,rssAsNewADODB.Recordset
Setrs=conn.Execute("
select*from操作员where操作员编号='
"
&
Text1.Text&
"
'
Setrss=conn.Execute("
select*from操作员where密码='
Text2.Text&
)
Ifrs.EOFThen
MsgBox"
不存在此用户"
Text1.Text="
Text1.SetFocus‘验证用户名
Else
Ifrss.EOFThen
密码错误!
Text2.Text="
Text2.SetFocus‘验证密码
UnloadMe
Form1.Show‘进入主界面
MsgBox(Text1.Text+"
欢迎您使用冰舞奇迹客房管理系统"
EndIf
EndSub
⑵将新建客户信息写入数据库代码
PrivateSubCommand4_Click()
DimcnAsNewADODB.Connection
DimsqlAsString
cn.ConnectionString="
cn.Open‘连接并打开数据库
Dima1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11AsString
a1=Text1.Text
a2=Text2.Text
a3=Text3.Text
a4=Text4.Text
a5=Text5.Text
a6=Text6.Text
a7=Text7.Text
a8=Text8.Text
a9=Text9.Text
a10=Text10.Text
a11=Text11.Text
sql="
insertinto客户values('
a1&
'
a2&
a3&
a4&
a5&
a6&
a7&
a8&
a9&
a10&
a11&
)"
cn.Execute(sql)‘执行代码将变量值负值给客户表
cn.Close
⑶查询客户信息代码
PrivateSubCommand3_Click()
fanghao=Text12.Text
Adodc1.Recordset.Find"
房号="
Val(fanghao)
EndSub‘根据房号查询客户信息
PrivateSubCommand5_Click()
kehubianhao=Text13.Text
客户编号="
Val(kehubianhao)
EndSub‘根据客户编号查询
PrivateSubCommand6_Click()
kehuming=Text14.Text
客户姓名="
Val(kehuming)
EndSub‘根据客户姓名查询
⑷客房信息查询
PrivateSubCommand2_Click()
DimrsAsNewADODB.Recordset
fanghao=Text5.Text
cn.Close‘查询指定房号的房间状态
(5)空房信息查询
按照条件查询使结果显示在DataGrid控件里,代码如下:
DimsqlAsString
cn.Open
rs.Open"
select*from客房where房间状态='
空'
cn,adOpenKeyset,adLockBatchOptimistic,adCmdText
SetDataGrid1.DataSource=rs
DataGrid1.Refresh
客房管理系统
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 客房 管理 系统 设计