數(shù)據(jù)庫課程設計-酒店管理信息系統(tǒng)_第1頁
數(shù)據(jù)庫課程設計-酒店管理信息系統(tǒng)_第2頁
數(shù)據(jù)庫課程設計-酒店管理信息系統(tǒng)_第3頁
數(shù)據(jù)庫課程設計-酒店管理信息系統(tǒng)_第4頁
數(shù)據(jù)庫課程設計-酒店管理信息系統(tǒng)_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、數(shù)據(jù)庫課程設計 課題酒店管理系統(tǒng) 班級0904 學號0942001458134 姓名羅浩 成績 2010 年 10 月 30 日 酒店管理信息系統(tǒng) 1. 編寫目的 酒店在正常的運營中需要對客房資源、 顧客信息、 結算信息進行管理, 利用賓 館管理信息系統(tǒng)及時了解各個環(huán)節(jié)中信息的變更, 有利于提高管理效率。 2. 系統(tǒng)功能分析 系統(tǒng)開發(fā)的總體任務是實現(xiàn)賓館各種信息的系統(tǒng)化、 規(guī)范化和自動化。 主要完成功能: 有關客房標準的制定、標準信息的輸入,包括標準編號、標準名稱、房間 面積、床位數(shù)量、住房單價、是否有空調(diào)、電視機、電話以及單獨衛(wèi)生間等。 客房標準信息的修改、查詢等。 客房基本信息的輸入,包括

2、客房編號、客房類型、客房位置、客房單價、 備注等。 客房基本信息的查詢、修改,包括客房編號、客房類型、客房位置、客房 單價、備注等。 剩余客房信息的查詢等。 訂房信息的輸入,包括客房編號、客房種類、客房位置、客房單價、顧客 姓名、顧客身份證號碼、入住日期、折扣、備注信息等。 訂房信息的修改和查詢, 包括客房編號、 客房種類、客房位置、 客房單價、 顧客姓名、顧客身份證號碼、入住日期、折扣、備注信息等。 結算信息的輸入, 包括客房編號、 客房種類、 位置、客房單價、 顧客姓名、 顧客身份證號碼、入住日期、折扣、結算日期、備注信息等。 結算信息的修改和查詢, 包括客房編號、 客房種類、客房位置、

3、客房單價、 顧客姓名、顧客身份證號碼、 入住日期、折扣、結日期、備注信息等。 3. 系統(tǒng)功能模塊設計 按結構化程序設計思想,分析得出如下系統(tǒng)功能模塊圖 結算信息查詢 系 統(tǒng) 管 理 結算信息修改 結算信息添加 訂房信息查詢 訂房信息修改 訂房信息添加 剩余客房信息查詢 設置客房信息 設置客房標準 密 碼 管 理 用 戶 管 理 圖I系統(tǒng)功能模塊圖 4. 數(shù)據(jù)庫設計 數(shù)據(jù)庫設計步驟: 數(shù)據(jù)庫需求分析 數(shù)據(jù)庫概念結構設計 數(shù)據(jù)庫邏輯結構設計 數(shù)據(jù)庫需求分析 分析調(diào)查有關賓館管理信息需求的基礎上得本系統(tǒng)所處理的數(shù)據(jù)流程 圖H賓館管理信息系統(tǒng)數(shù)據(jù)流程圖 針對一般賓館管理信息系統(tǒng)的需求,通過對賓館管理過

4、程的內(nèi)容和流程分析, 設計如下面所示的數(shù)據(jù)項和數(shù)據(jù)結構: 客房標準信息,包括的數(shù)據(jù)項有:標準編號、標準名稱、房間面積、床位 數(shù)量、住房單價、是否有空調(diào)、電視、電話、單獨衛(wèi)生間等。 客房信息,包括的數(shù)據(jù)項有:客房編號、客房種類、客房位置、客房單價、 備注等。 訂房信息,包括的數(shù)據(jù)項有:訂房編號、客房編號、客房種類、客房位置、 客房備注信息、顧客姓名、顧客身份證號碼、入住時間、折扣、備注等。 結算信息,包括的數(shù)據(jù)項有:訂房編號、客房編號、客房種類、客房位置、 客房備注信息、顧客姓名、顧客身份證號碼、入住時間、折扣、結算時間、 備注等。 數(shù)據(jù)庫概念結構設計 本系統(tǒng)根據(jù)以上的設計規(guī)劃出的實體有:客房標

5、準信息實體、客房信息實體、 訂房信息實體、結算信息實體。各個實體具體的描述E - R圖如下: 客房標準信息實體E - R圖 客房信息實體E -R圖 訂房信息實體E - R圖 結算信息實體E -R圖 客房標準信息 客房信息管理 訂房信息管理 結算信息管理 實體之間關系E-R圖 數(shù)據(jù)庫邏輯結構設計 首先將賓館管理信息系統(tǒng)的數(shù)據(jù)庫概念結構轉(zhuǎn)化為SQL 2000數(shù)據(jù)庫系統(tǒng)所支 持的實際數(shù)據(jù)模型,即:數(shù)據(jù)庫的邏輯結構。其各個表格的設計結果如下 列名 數(shù)據(jù)類型 可否為空 說明 Typeid Varchar NOT NULL 標準編號 Type name Varchar NOT NULL 標準名稱 Area

6、 Numeric NULL 房間面積 Bednum Numeric NULL 床位數(shù)量 Hairc on diti on Varchar NULL 是否有空調(diào) Hteleph one Varchar NULL 是否有電話 Htelevisi on Varchar NULL 是否有電視 Htoilet Varchar NULL 是否有單獨衛(wèi)生間 Price Numeric NULL 單價 Roomtype客房標準信息表 列名 數(shù)據(jù)類型 可否為空 說明 roomNO Varchar NOT NULL 客房編號 Roomtype Varchar NOT NULL 客房種類 Roompositi on

7、 Varchar NULL 客房位置 Roomprice Numeric NULL 單價 Putup Varchar NOT NULL 是否被預定 Roommemo Text NULL 備注 Rooms客房信息表 列名 數(shù)據(jù)類型 可否為空 說明 Bookno Varchar NOT NULL 訂房編號 Custo mn ame Varchar NOT NULL 顧客姓名 CustomID Varchar NOT NULL 身份證號碼 Roomno Varchar NOT NULL 客房編號 In date Datetime NULL 入住日期 Disco unt Numeric NULL 折扣

8、 Inmeno Text NULL 備注 Checkdate Datetime NULL 結算日期 Amount Numeric NULL 金額 Bookin訂房信息表 5. 數(shù)據(jù)庫結構的實現(xiàn) 利用SQL 2000數(shù)據(jù)庫系統(tǒng)中的查詢分析實現(xiàn)數(shù)據(jù)庫的邏輯結構,其表格如 下: 創(chuàng)建系統(tǒng)用戶表格usernfo CREATE TABLE dbo.user_l nfo1( user_IDchar(10) COLLATE Chi nese_PRC_CI_AS NOT NULL, user_PWD char (10) COLLATE Chi nese_PRC_CI_AS NULL, user_Des cha

9、r(10) COLLATE Chi nese_PRC_CI_AS NULL )ON PRIMARY 創(chuàng)建客房標準信息表格roomtype CREATE TABLE dbo.roomtype( typeidchar(10) COLLATE Chi nese_PRC_CI_AS NOT NULL, type namechar(10) COLLATE Chi nese_PRC_CI_AS NOT NULL, areanumeric(5,0) NULL, bednumnumeric(2,0) NULL, hairconditionchar(2) COLLATE Chinese_PRC_CI_AS NU

10、LL, htelephonechar(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 創(chuàng)建客房信息表格 rooms CREATE TABLE dbo.rooms( roomNOchar(10) COLLATE Chinese_PRC_CI_AS NOT NULL, roomtypechar(10) COLLA

11、TE Chinese_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 創(chuàng)建訂房信息表 bookin CREATE TABLE dbo.bookin( booknochar(14) COLLA

12、TE Chinese_PRC_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 N

13、ULL, ammountnumeric(10,2) NULL ) ON PRIMARY TEXTIMAGE_ON PRIMARY &賓館管理信息系統(tǒng)具體程序?qū)崿F(xiàn) 客房信息管理模塊的創(chuàng)建 客房信息管理模塊主要實現(xiàn)如下功能: 添加客房信息 修改客房信息 刪除客房信息 查詢客房信息 具體實現(xiàn)代碼如下: Private Sub From_Load() 載入窗體時,自動添加客房信息種類 Dim sSql As String Dim intCount As Integer Dim MsgText As String Dim mrcc As ADODB.Recordset If gintRmode=1 Th

14、en 判斷是否處于添加狀態(tài) Me.Caption=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 顯示記錄內(nèi)容 Else MsgBox “請先進行客房標準設置 ! ”,vbOKOnly+vbExclam

15、ation, “越壬” “警告” cmdSave.Enabled=False Exit Sub End If mrc.Close ElseIf gintRmode=2 Then 判斷是否處于修改狀態(tài) Setmrcc=ExecuteSQL(txtSQL,MsgText)設置 SQL語句顯示當前 選擇記錄 If mrcc.EOF=False Then With mrcc txtItem(0)=.Fields(0) For intCount=1 To 2 IfNot IsNull(.Fields(intCount+1)Then 判斷 內(nèi)容是否為空 txtItem(intCount)=.Fields(

16、intCount+1) End If Next intCount txtItem(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+vbExc

17、lamation, “做小” 警告” cmdSave.Enabled=False Exit Sub End If mrc.Close End With End If mrcc.Close Me.Caption=Me.Caption& End If mblChange=False End Sub Private Sub cmdSave_Click() 單擊保存按鈕觸發(fā)事件 Dim intCount As Integer Dim sMeg As String Dim mrcc As ADODB.Recordset Dim Msgtext As String For intCount=0 To 3

18、If Trim(TxtItem(intCount)& Select Case intCount Case 0 sMeg= Case 1 sMeg= End Select sMeg=sMeg& 修改” ” ” ” ” -1-1 ”)= ” Then 客房編號” 客房位置” 不能為空!” MsgBox sMeg,vbOKOnly+vbExclamation, txtItem(intCount).SetFocus Exit Sub End If Next intCount If gintRmode=1 Then 判斷是否有重復記錄 txtSQL= ” select * from rooms “做小”

19、 警告” &Trim(txtItem(0)& where roomNO= ” Set mrc=ExecuteSQL(txtSQL,msgText) If mrc.EOF=False Then MsgBox“ 已經(jīng)存在此客房編號的記錄! ”,vbOKOnly+vbExclamation, “做小” “警告” txtItem(0).SetFocus Exit Sub End If mrc.Close End If If gintRmode=2 Then判斷是否處于修改狀態(tài) txtSQL=”delete from rooms where roomNO= ”&Trim(txtItem(0)& ” Se

20、t mrc=ExecuteSQL(txtSQL,MsgText) End If txtSQL= ” select*from rooms ”再加入新記錄 Set mrc=ExecuteSQL(txtSQL,MsgText) mrc.AddNew 為數(shù)據(jù)庫對象添加記錄 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(intCou

21、nt+1)=Trim(txtItem(intCount) End If Next intCount mrc.Fields(4)= ” mrc.Fields(5)=Trim(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 ”重新顯示數(shù)據(jù) frmRoom.Show En

22、d If ElseIf gintRmode=2 Then Unload Me If flagRedit Then Unload frmRoom End If frmRoom.txtSQL=” select*from rooms ” frmRoom.Show End If End Sub 修改客房信息 Private Sub menuModifyroom_Click() 選擇修改房間信息,觸 menuModifyroom 的Click事件,程序判斷為修改狀態(tài)后,首先 刪除原有記錄,然后把新內(nèi)容加入到數(shù)據(jù)庫 中 Dim intCount As Integer If flagRedit Then 判

23、斷記錄窗體是否打開 If frmRoom.msgList.Rows1 Then 判斷客房信息列表內(nèi)容是否為空 gintRmode=2 設置為修改狀態(tài) intCount=frmRoom.msgList.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

24、 rooms ” frmRoom.Show End If End Sub 刪除客房信息 Private Sub menuDeleteroom_Click() Dim txtSQL As String Dim intCount As Integer Dim mrc As ADODB.Recordset Dim MsgText As String If flagTedit Then If frmRoom.msgList.Rows1 Then 判斷客房信息列表內(nèi)容是否為空 If MsgBox“( 真的要刪除這條文件記錄么?” ,vbOKCancel+vbExclamation, “警告” )=vbO

25、K Then intCount=frmRoom.msgList.Row記載當前記錄位置 txtSQL= ” delete from rooms where roomNO= ” &Trim(frmRoom.msgList.TextMatrix(intCount,1)& ” 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 As ADODB.Recordset txtSQL= ”select DISTINCT

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論