1、数据库课程设计酒店管理信息系统数据库课程设计酒店管理信息系统课题 酒店治理系统 班级 0904 学号 0942001458134 姓名 罗 浩 成绩 2010年 10 月 30 日酒店治理信息系统编写目的酒店在正常的运营中需要对客房资源、顾客信息、结算信息进行治理,利用宾馆治理信息系统及时了解各个环节中信息的变更,有利于提高治理效率。系统功能分析 系统开发的总体任务是实现宾馆各种信息的系统化、规范化和自动化。要紧完成功能: 有关客房标准的制定、标准信息的输入,包括标准编号、标准名称、房间面积、床位数量、住房单价、是否有空调、电视机、 以及单独卫生间等。 客房标准信息的修改、查询等。 客房差不多
2、信息的输入,包括客房编号、客房类型、客房位置、客房单价、备注等。 客房差不多信息的查询、修改,包括客房编号、客房类型、客房位置、客房单价、备注等。 剩余客房信息的查询等。 订房信息的输入,包括客房编号、客房种类、客房位置、客房单价、顾客姓名、顾客身份证号码、入住日期、折扣、备注信息等。 订房信息的修改和查询,包括客房编号、客房种类、客房位置、客房单价、顾客姓名、顾客身份证号码、入住日期、折扣、备注信息等。 结算信息的输入,包括客房编号、客房种类、位置、客房单价、顾客姓名、顾客身份证号码、入住日期、折扣、结算日期、备注信息等。 结算信息的修改和查询,包括客房编号、客房种类、客房位置、客房单价、顾
3、客姓名、顾客身份证号码、入住日期、折扣、结日期、备注信息等。系统功能模块设计 按结构化程序设计思想,分析得出如下系统功能模块图 图系统功能模块图数据库设计数据库设计步骤:数据库需求分析数据库概念结构设计数据库逻辑结构设计数据库需求分析分析调查有关宾馆治理信息需求的基础上得本系统所处理的数据流程 图 宾馆治理信息系统数据流程图 针对一样宾馆治理信息系统的需求,通过对宾馆治理过程的内容和流程分析,设计如下面所示的数据项和数据结构:客房标准信息,包括的数据项有:标准编号、标准名称、房间面积、床位数量、住房单价、是否有空调、电视、 、单独卫生间等。客房信息,包括的数据项有:客房编号、客房种类、客房位置
4、、客房单价、备注等。订房信息,包括的数据项有:订房编号、客房编号、客房种类、客房位置、客房备注信息、顾客姓名、顾客身份证号码、入住时刻、折扣、备注等。结算信息,包括的数据项有:订房编号、客房编号、客房种类、客房位置、客房备注信息、顾客姓名、顾客身份证号码、入住时刻、折扣、结算时刻、备注等。数据库概念结构设计 本系统依照以上的设计规划出的实体有:客房标准信息实体、客房信息实体、订房信息实体、结算信息实体。各个实体具体的描述-图如下:客房标准信息实体-图客房信息实体-图订房信息实体-图结算信息实体-图实体之间关系-图数据库逻辑结构设计 第一将宾馆治理信息系统的数据库概念结构转化为SQL 2000数
5、据库系统所支持的实际数据模型,即:数据库的逻辑结构。其各个表格的设计结果如下列名数据类型可否为空说明TypeidVarcharNOT NULL标准编号TypenameVarcharNOT NULL标准名称AreaNumericNULL房间面积BednumNumericNULL床位数量HairconditionVarcharNULL是否有空调HtelephoneVarcharNULL是否有 HtelevisionVarcharNULL是否有电视HtoiletVarcharNULL是否有单独卫生间PriceNumericNULL单价Roomtype 客房标准信息表列名数据类型可否为空说明roomN
6、OVarcharNOT NULL客房编号RoomtypeVarcharNOT NULL客房种类RoompositionVarcharNULL客房位置RoompriceNumericNULL单价PutupVarcharNOT NULL是否被预定RoommemoTextNULL备注Rooms 客房信息表列名数据类型可否为空说明Bookno VarcharNOT NULL订房编号CustomnameVarcharNOT NULL 顾客姓名CustomIDVarcharNOT NULL身份证号码RoomnoVarcharNOT NULL客房编号IndateDatetimeNULL入住日期Discoun
7、tNumericNULL折扣InmenoTextNULL备注CheckdateDatetimeNULL结算日期AmountNumericNULL金额Bookin 订房信息表数据库结构的实现利用SQL 2000数据库系统中的查询分析实现数据库的逻辑结构,其表格如下:创建系统用户表格 user_Info CREATE TABLE dbo.user_Info1( user_IDchar(10) COLLATE Chinese_PRC_CI_AS NOT NULL, user_PWD char (10) COLLATE Chinese_PRC_CI_AS NULL, user_Des char(10)
8、 COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARY 创建客房标准信息表格roomtype CREATE TABLE dbo.roomtype( typeidchar(10) COLLATE Chinese_PRC_CI_AS NOT NULL, typenamechar(10) COLLATE Chinese_PRC_CI_AS NOT NULL, areanumeric(5,0) NULL, bednumnumeric(2,0) NULL, hairconditionchar(2) COLLATE Chinese_PRC_CI_AS NULL, htel
9、ephonechar(2) COLLATE Chinese_PRC_CI_AS NULL, htelevisionchar(2) COLLATE Chinese_PRC_CI_AS NULL, htoiletchar(2) COLLATE Chinese_PRC_CI_AS NULL, pricenumeric(10,2)NULL ) ON PRIMARY创建客房信息表格roomsCREATE TABLE dbo.rooms( roomNOchar(10) COLLATE Chinese_PRC_CI_AS NOT NULL, roomtypechar(10) COLLATE Chinese_
10、PRC_CI_AS NOT NULL, roompositionchar(20) COLLATE Chinese_PRC_CI_AS NULL, roompricenumeric(10,2) NULL, putupchar(2) COLLATE Chinese_PRC_CI_AS NOT NULL, roommemotext COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARY TEXTIMAGE_ON PRIMARY创建订房信息表bookinCREATE TABLE dbo.bookin( booknochar(14) COLLATE Chinese_PRC
11、_CI_AS NOT NULL, customnamechar(10) COLLATE Chinese_PRC_CI_AS NOT NULL, customIDchar(18) COLLATE Chinese_PRC_CI_AS NOT NULL, roomnochar(10) COLLATE Chinese_PRC_CI_AS NOT NULL, indatedatetime NULL, discountnumeric(2,0) NULL, inmemotext COLLATE Chinese_PRC_CI_AS NULL, checkdatedatetime NULL, ammountnu
12、meric(10,2) NULL) ON PRIMARY TEXTIMAGE_ON PRIMARY宾馆治理信息系统具体程序实现客房信息治理模块的创建 客房信息治理模块要紧实现如下功能: 添加客房信息 修改客房信息 删除客房信息 查询客房信息 具体实现代码如下:Private Sub From_Load()载入窗体时,自动添加客房信息种类 Dim sSql As String Dim intCount As Integer Dim MsgText As String Dim mrcc As ADODB.Recordset If gintRmode=1 Then 判定是否处于添加状态 Me.Cap
13、tion=me.Caption&“添加” txtSQL=”select DISTINCT typename from roomtype” Set mrc=ExecuteSQL(txtSQL,MsgText) If Not mrc.EOF Then Do While Not mrc.EOF cboItem(0).AddItem Trim(mrc.Fields(0) mrc.MoveNext Loop cboItem(0).ListIndex=0显示记录内容 Else MsgBox “请先进行客房标准设置!”,vbOKOnly+vbExclamation,“警告” cmdSave.Enabled=
14、False Exit Sub End If mrc.Close ElseIf gintRmode=2 Then 判定是否处于修改状态 Set mrcc=ExecuteSQL(txtSQL,MsgText)设置SQL语句显示当前选择记录 If mrcc.EOF=False Then With mrcc txtItem(0)=.Fields(0) For intCount=1 To 2 If Not IsNull(.Fields(intCount+1)Then判定内容是否为空 txtItem(intCount)=.Fields(intCount+1) End If Next intCount tx
15、tItem(3)=.Fields(5) txtSQL=”select DISTINCT typename from roomtype” Set mrc=ExecuteSQL(txtSQL,MsgText) If Not mrc.EOF Then Do While Not mrc.EOF cboItem(0).AddItem Trim(mrc.Fields(0) mrc.MoveNext Loop cboItem(0).ListIndex=0 Else MsgBox“请先进行客房标准设置!”,vbOKOnly+vbExclamation,“警告” cmdSave.Enabled=False Ex
16、it Sub End If mrc.Close End With End If mrcc.Close Me.Caption=Me.Caption&“修改” End If mblChange=FalseEnd SubPrivate Sub cmdSave_Click()单击储存按钮触发事件 Dim intCount As Integer Dim sMeg As String Dim mrcc As ADODB.Recordset Dim Msgtext As String For intCount=0 To 3 If Trim(TxtItem(intCount)&”)=” Then Select
17、 Case intCount Case 0 sMeg=“客房编号” Case 1 sMeg=“客房位置” End Select sMeg=sMeg&“不能为空!” MsgBox sMeg,vbOKOnly+vbExclamation,“警告” txtItem(intCount).SetFocus Exit Sub End If Next intCount If gintRmode=1 Then判定是否有重复记录 txtSQL=”select * from rooms where roomNO=”&Trim(txtItem(0)&” Set mrc=ExecuteSQL(txtSQL,msgTe
18、xt) If mrc.EOF=False Then MsgBox “差不多存在此客房编号的记录!”,vbOKOnly+vbExclamation,“警告” txtItem(0).SetFocus Exit Sub End If mrc.Close End If If gintRmode=2 Then 判定是否处于修改状态 txtSQL=”delete from rooms where roomNO=”&Trim(txtItem(0)&” Set mrc=ExecuteSQL(txtSQL,MsgText) End If txtSQL=”select*from rooms”再加入新记录 Set
19、mrc=ExecuteSQL(txtSQL,MsgText) mrc.AddNew为数据库对象添加记录 mrc.Fields(0)=Trim(txtItem(0) mrc.Fields(1)=Trim(txtItem(0) For intCount=1 To 2 If Trim(txtItem(intCount)&”)=” Then mrc.Fields(intCount+1)=Null Else mrc.Fields(intCount+1)=Trim(txtItem(intCount) End If Next intCount mrc.Fields(4)=” mrc.Fields(5)=Tr
20、im(txtItem(3) mrc.Update mrc.Close If gintRmode=1 Then For intCount=0 To 3 txtItem(intCount)=” Next intCount mblChange=False If flagRedit Then Unload frmRoom frmRoom.txtSQL=”select*from rooms”重新显示数据 frmRoom.Show End If ElseIf gintRmode=2 Then Unload Me If flagRedit Then Unload frmRoom End If frmRoom
21、.txtSQL=”select*from rooms” frmRoom.Show End If End Sub修改客房信息Private Sub menuModifyroom_Click()选择修改房间信息,触menuModifyroom的Click事件,程序判定为修改状态后,第一删除原有记录,然后把新内容加入到数据库中 Dim intCount As Integer If flagRedit Then 判定记录窗体是否打开 If frmRoom.msgList.Rows1 Then判定客房信息列表内容是否为空 gintRmode=2设置为修改状态 intCount=frmRoom.msgLi
22、st.Row纪录当前记录位置frmRoom1.txtSQL=”select*from rooms where roomNO=”&Trim(frmRoom.msgList.TextMatrix(intCount,1)&”frmRoom1.Show Else Call menuAddroom_Click添加记录End If Else frmRoom.txtSQL=”select*from rooms” frmRoom.ShowEnd IfEnd Sub 删除客房信息Private Sub menuDeleteroom_Click() Dim txtSQL As String Dim intCoun
23、t As Integer Dim mrc As ADODB.Recordset Dim MsgText As String If flagTedit Then If frmRoom.msgList.Rows1 Then判定客房信息列表内容是否为空 If MsgBox(“确实要删除这条文件记录么?”,vbOKCancel+vbExclamation,“警告”)=vbOK Then intCount=frmRoom.msgList.Row记载当前记录位置 txtSQL=”delete from rooms where roomNO=”&Trim(frmRoom.msgList.TextMatrix
24、(intCount,1)&” Set mrc=ExecuteSQL(txtSQL,MsgText)执行删除操作Unload frmRoom frmRoom.txtSQL=”select*from rooms” frmRoom.Show End If End If End If End Sub查询客房信息Private Sub From_Load()载入窗体时,将自动加入所有记录的入库时刻 Dim i As Integer Dim j As Integer Dim sSql As String Dim txtSQL As String Dim MsgText As String Dim mrc
25、As ADODB.Recordset txtSQL=”select DISTINCT typename from roomtype”初始化客房种类 Set mrc=ExecuteSQL(txtSQL,MsgText) If Not mrc.EOF Then Do While Not mrc.EOF Combo1.AddItem Trim(mrc.Fields(0) Mrc.MoveNext Loop Combo1.ListIndex=0 Else MsgBox “请先进行客房标准设置!”,vbOKOnly+vbExclamation,”警告” Exit Sub End If mrc.Close
26、End SubPrivate Sub cmdOK_Click()设置完查询内容和方式后,单击cmdOk按钮查询 Dim sQSql As String If chkItem(0).Value=vbChecked Then sQSql=”roomNO=”&Trim(txtItem(0)&”)&” End If If chkItem(1).Value=vbChecked Then If Trim(sQSql&”)=” Then sQSql=”roomtype=”&Trim(Combo1&”)&” Else End If End If If Trim(sQSql)=” Then MsgBox “请设置查询条件!”,vbOKOnly+vbExclamation,“警告” Exit Sub Else If flagRedit Then Unload frmRoom End If frmRoom.txtSQL=”select*from rooms where”&sQSql frmRoom.Show End If Me.HideEnd Sub7小结关于本次课程设计要紧从三方面,即知识、技能和态度,学生采纳自我评估方式来检查自己,如此能够产生这种日常性的,内省方式的自我评估,以检查自己的学习进度和成绩,改进学习方法和增强学习自信心。
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2