SQL課程設計VB客房管理系統

2021-03-04 09:30:31 字數 4197 閱讀 9679

課程設計示例——客房管理系統設計

一、課程設計的目的和意義

在當今經濟和商務交往日益頻繁的狀況下,賓館服務行當正面臨客流量驟增的壓力。越來越多的賓館飯店都認識到傳統的管理方法已經不能適合當今社會的需要,必須借助先進的計算機資訊技術對賓館服務進行管理。「客房管理系統」可以說是整個賓館計算機資訊管理系統的中心子系統,因為賓館最主要的功能就是為旅客提供客房。

設計客房管理這樣乙個系統,可以涉及到大多數sql server資料庫的重要資料庫物件、重要功能和特性,比如:檢視、觸發器和儲存過程等。由此,通過這個課程設計可以加深對這些sql server資料庫知識的學習、理解,積累在實際工程應用中運用各種資料庫物件的經驗,使學生掌握使用應用軟體開發工具開發資料庫管理系統的基本方法。

在實用性方面,客房管理系統是很普遍的一種應用,選擇該系統作為課程設計也可以為學生以後可能遇到的實際開發提供借鑑。

二、系統需求分析及功能設計(此部分是重點設計內容,要求按步驟進行設計——系統需求分析、系統功能設計)(該示例在此處省略了「系統需求分析」部分,各組同學們在設計時不能省略)

系統功能是在實際開發設計過程中經過調研、分析使用者需求,和使用者一起共同確定下來的,是系統為滿足使用者需求所應完成的功能。本課程設計模擬乙個小型客房管理系統。本系統要求實現以下主要功能:

1、 資料錄入功能:

在本系統中提供客人資訊登記功能。可以錄入客人的姓名、性別、年齡、身份證號碼、 家庭住址、工作單位、來自地的地名、入住時間、預計入住天數、客房類別、客房號、離店時間以及繳納押金金額等資訊。在客人退房時,系統根據輸入的離店時間以及客房單價自動計算客人住宿費金額。

2、 資料查詢功能

系統需要提供以下查詢功能:

1) 查某類客房的入住情況及空房情況,顯示所有該類客房空房數目和客房號。

2) 根據客人姓名、來自地的地名、工作單位或家庭住址等資訊查詢客人資訊;根據客房號查詢入住客人的資訊。

3) 查詢某個客人住宿費用情況,顯示客人繳納押金金額、實際入住天數、客房**、實際住宿費、住宿費差額及餘額等資訊。

4) 查詢所有入住時間達到或超過預計入住天數的客人。

3、資料統計功能

1)統計一段時間內各類客房的入住情況。

2)統計全年各月份的客房收入。

3)統計一段時間內各類客房的入住率。

三、資料庫設計(此部分是重點設計內容,要求按步驟進行設計——概念結構設計、邏輯結構設計、物理結構設計)(該示例在此處省略了「概念結構設計」及「邏輯結構設計」部分,各組同學們在設計時不能省略)

資料庫設計是根據系統功能的要求和資料規模規劃資料庫伺服器選型、資料表結構定義、分配資料庫伺服器端的功能實現以及建立資料庫物件。

1、資料庫與資料表設計

分析前面的系統功能要求,需要乙個表來儲存和管理客人資訊,使系統能夠接受客人入住時輸入的各項資料,以實現資料錄入、查詢或統計客人資訊等功能。客人是本系統的第乙個實體。為了能實現查詢和統計客房入住情況等功能,必須有乙個表來儲存和管理所有客房的資訊,包括客房的型別、客房號、是否入住客人等。

客房是本系統的第二個實體。一般來說,客房**是以客房的型別來制定的。為了保證系統資料庫最小的資料冗餘和資料完整性,需要建立乙個表來記錄各種客房型別的資訊。

它主要為各種查詢和統計功能提供客房**資料。它與客房表是一對多的關係,在客房**變動時,只需要在客房型別表中更改。

綜上所述,在客房管理(kfgl)資料庫中需要建立3個資料表:客人資訊資料表、客房資訊資料表和客房型別資料表。

(1)客人資訊資料表定義

根據系統功能要求,客人資訊表需要能接受客人登記入住和離店時輸入的所有資訊.還必須包括客人最終的住宿費金額,因為住宿費金額是統計客房收入的基本資料。

客人資訊表的結構定義如表1所示。

表1 客人資訊資料表定義

其中,cid(序號)是表的主鍵,唯一標識乙個入住的客人。設計時定義它為標識列,系統自動地產生連續的永不重複的序列號。

rnum(客房號)在客人資訊表中是外來鍵,它是客房資訊表的主鍵,唯一標識乙個房間。通過它,系統將引用到客房型別、客房單價等資訊。

客人資訊表取名為tblclient。

(2)客房資訊資料表定義

客房資訊表中應該記錄每乙個客房的資訊和狀態,系統查詢這些資訊並決定客人能否入住。每個客房的型別決定了客房的**,可供客人入住時選擇房間及離店時結算住宿費用。

客房資料表的定義如表2所示。

表2 客房資訊資料表定義

其中,rnum(客房號)是該錶的主鍵,唯一標識乙個客房房間。它將作為客人資訊表的外來鍵,保證客人資訊表的參照完整性。

rstats 表示房間的狀態,設定其值為「n」時,表示客房沒有入住客人;值為「f」時,表示客房以有客人入住;值為「p」時,表示客房被預定。

rtype 表示客房的型別,它是該錶的乙個外來鍵,來自下面將要說明的客房型別資料表。

cid 將記錄入住客人的序號,在客房資訊表中增加這一列時,雖然增加了資料冗餘,但可以在查詢房間中入住客人資訊時,提高系統的效能。因為客房資訊表的記錄數相對固定,相比之下,增加這個冗餘的列對於整個系統來說是有利的。

客房資訊表取名為tblroom。

(3)客房型別資料表定義

客房型別主要描述客房的服務標準和收費**,這些資訊如果包含進每個客房的記錄中,將會使客房資訊表產生較大的資料冗餘,特別在客房數量大的情況下。此外,如果客房資訊表的每條記錄都包括**資訊,那當某種型別的客房**變動時,使用者就不得不對客房資訊表中的記錄逐一進行修改。客房型別資料表的定義如表3-3所示。

表3-3 客房型別資料表定義

其中,rtype 表示客房型別的編號,作為該錶的主鍵,唯一標識某一類客房。它將作為客房資訊表的外來鍵,保證客房資訊表資料的完整性。

客房型別資料表取名為tblroomtype。

(4)根據上面三個資料表的設計,可執行下面的步驟建立資料表

1)在伺服器計算機上安裝 ms sql server 2000。

2)開啟企業管理器,在本地伺服器上建立新的資料庫kfgl。

3)展開kfgl資料庫,單擊「表」,按照設計,建立表tblclient、tblroom和tblroomtype

2、資料完整性設計

設計好錶的結構後,需要根據實際應用和操作規則為表制定一系列約束和規則,從而達到保證資料完整性原則的目的。

約束(1)主鍵約束、非空值約束

在三個表的設計中已經規定了每個表的主鍵列、非空列,這些規定都是在實際應用環境中所必需的。比如tblroom表中定義了房間號rnum為主鍵,則在表tblroomr中num必須是唯一的——乙個飯店不可能出現兩個房間號碼相同的客房;客房型別type和客房狀態rstats 不能為空值,因為rtype是辨別客人入住客房中類、住宿費用結算的依據,所以不能為空值;rstats是辨別客人能否入住的依據,所以也不能為空值。

(2)check 約束

對於tblclient表,應該建立乙個檢查約束,即所有客人的離店時間都不可能小於入住時間。

按下列步驟建立這個約束:

1) 開啟企業管理器,展開伺服器,展開「資料庫」,展開「kfgl」資料庫,單擊「表」。

2) 用滑鼠右鍵單擊「tblclent」表,選擇「設計表」,系統將彈出「設計表」對話視窗。

3) 用滑鼠右鍵單擊此視窗的上方窗格,單擊「check約束」,單擊「新建」按鈕,在「約束表示式」文字框中輸入表示式:([couttime]>=[cintime])。

4) 選擇「對insert和update操作強制約束」核取方塊,單擊「關閉」按鈕,完成check約束建立操作。

(3)使用預設值

可以將三個資料表中所有貨幣型別的列都定義為預設值,特別是指定了「非空」約束的列。tblclient表的預住天數cday的預設值可定義為1,而客人入住時間cintime的預設值應該就是新增客人記錄的時間(除非是客房預定,在本系統中暫不考慮客房預定),所以可以設定預設值為「(getdate)」。

(4)唯一約束

除了每個表的主鍵需定義為唯一外,對於tblroomtype的客房型別名rname,也應該定義為唯一的名稱。因為在系統功能需求中,要求按客房型別對資料進行統計,如果在統計結果中只顯示客房型別編號,使用者就必須記憶那種型別是什麼編號,這樣很不直觀。所以應按照相關的sql server資料庫教材中建立唯一約束的方法進行建立。

(5)外來鍵約束

在資料表設計中已經討論了各個表的外來鍵,這裡以tblclient為例說明建立步驟,tblroom和tblroomtype表可以按照相同的步驟進行操作。

1)開啟企業管理器,展開伺服器,展開「資料庫」,展開「kfgl」資料庫,單擊「表」。

2)用滑鼠右鍵單擊此「tblclient」表,選擇「設計表」,系統將彈出「設計表」對話視窗。

3)用滑鼠右鍵單擊此視窗的上方窗格,單擊「關係」,在「主鍵表」下拉框中選擇「tblroom」

飯店管理前廳與客房管理系統課程設計

飯店前廳與客房 管理系統 課程設計 學號 0942818412 姓名 王蕾 目錄一 緒論 一 飯店業發展現狀 二 資訊系統概述 三 管理資訊系統發展現狀 四 飯店前廳與客房管理發展現狀與發展前景 五 研究專案內容分析 六 開發工具選擇及介紹 二 飯店前廳與客房管理相關理論支援 一 中小型飯店管理資訊...

管理資訊系統課程設計賓館客房管理系統

遼寧工業大學 管理資訊系統設計課程設計報告 題目 賓館客房管理資訊系統 院 系軟體學院 專業班級 軟體工程114班 學號 111301104 學生姓名 安凱辰 指導教師 谷寶華 教師職稱 教授 起止時間 2012.5.28 2012.6.8 課程設計 任務及評語 院 系 軟體學院教研室 軟體教研室 ...

資料庫客房管理系統課程設計報告

目錄1 需求分析 2 1.1 系統背景分析 2 1.2組織結構分析 3 1.3業務流程分析 4 1.3.1業務簡介 4 1.3.2業務流程圖 5 1.4資料流程分析 7 1.4.1符號說明 7 1.4.2資料流程圖 7 1.5資料字典 10 1.5.1 資料項描述 11 1.5.2 資料結構 11 ...