賓館客房管理系統資料庫設計報告

2021-03-04 07:54:04 字數 3861 閱讀 9430

摘要:本系統是賓館客房管理系統,該報告主要介紹了資料庫的設計,建立,主要功能的實現。資料庫系統包括員工管理、客房管理、顧客管理幾個大塊。

主要實現了登記功能,預訂功能,多種方法查詢顧客功能,檢視客房狀態功能,操作人員對系統的修改功能,以及結賬報表功能。

一、需求分析

(1)具有方便的登記、結賬功能,以及預訂客房的功能,能夠支援團體登記和團體結賬。

(2)能快速、準確地了解賓館內的客房狀態,以方便管理者決策。

(3)提供多種手段查詢客人的資訊。

(4)具備一定的維護手段,有一定權利的操作人員在密碼的支援下才可以更改房價、 房間型別、增減客房。

(5)完善的結賬報表系統。

二、e-r關係圖

三、關係表

本系統有八個表,分別是職工資訊表(staffinfo)、顧客資訊表(custmerinfo)、經理資訊表(managerinfo)、客房資訊表(roominfo)、客房狀態表(roomstatus)、入住表(checkin)、退房表(checkout)、結賬訂單表(orderinfo)。

1,職工資訊表(staffinfo)

2,顧客資訊表(custmerinfo)

3,經理資訊表(managerinfo)

4,客房資訊表(roominfo)

5,客房狀態表(roomstatus)

6,入住表(checkin)

7,退房表(checkout)

8,結賬訂單表(orderinfo)

四、正規化分析

本系統所有的表均為b**f,職工和經理表由各自的工作編號為主碼,並且可以決定其他所有屬性,顧客表由身份證號做為主碼,同理,客房的房間號可以決定其他所有屬性。

五、功能分析

1,登記功能

本系統採用儲存過程實現登記功能,顧客前來預訂客房,由工作人員呼叫儲存過程向顧客表中插入該顧客資訊,完成登記。

create procedure register

@身份證號 varchar(20),@姓名 varchar(10),@性別 char(5),@** char(15),

@員工編號 char(10)

asinsert into custmerinfo

values(@身份證號,@姓名,@性別,@**,@員工編號)

2,預訂功能

採用儲存過程實現,由工作人員呼叫儲存過程,在入住表中插入相應資訊,並且設計觸發器,在預定的同時在客房狀態表中修改客房狀態為「已入住」。

create procedure or_der

@身份證號 varchar(20),@房間號 char(10),@姓名 varchar(10),@入住時間 nchar(10預定的同時在客房狀態表裡修改狀態

asinsert into checkin

values(@房間號,@身份證號,@姓名,@入住時間)

create trigger tri_order

on checkin

for insert,update

asdeclare @房間號 char(10)

select @房間號=房間號 from inserted

update roomstatus

set 狀態='已入住'

where 房間號=@房間號

3,修改功能

當管理人員在密碼的支援下,可以對資料庫系統中房間的**、型別、狀態做適當修改。通過儲存過程實現。

create procedure up_date1

@工作編號 char(10),@密碼 varchar(10),@房間號 char(10),@** **allint

asif @密碼=(select 密碼 from managerinfo where 工作編號=@工作編號)

begin

update roominfo

set **=@**

where 房間號=@房間號

endcreate procedure up_date2

@工作編號 char(10),@密碼 varchar(10),@房間號 char(10),@型別 varchar(10)

asif @密碼=(select 密碼 from managerinfo where 工作編號=@工作編號)

begin

update roominfo

set 型別=@型別

where 房間號=@房間號

endcreate procedure up_date3

@工作編號 char(10),@密碼 varchar(10),@房間號 char(10),@狀態 char(10)

asif @密碼=(select 密碼 from managerinfo where 工作編號=@工作編號)

begin

update roomstatus

set 狀態=@狀態

where 房間號=@房間號

end4,查詢顧客資訊

儲存過程,實現可以通過客戶的姓名、房間號查詢到客戶的資訊。

--1.根據姓名查詢

create procedure sel_name

@姓名 varchar(10)

asselect * from custmerinfo

where 姓名=@姓名

--呼叫

exec sel_name'lxt'

--2.根據房間號查詢

create procedure sel_roomnumber

@房間號 char(10)

asselect custmerinfo.* from custmerinfo,room

where custmerinfo.身份證號=room.身份證號 and 房間號=@房間號

5,檢視客房狀態

設計函式,使得員工可以簡單、快捷的檢視當前客房的使用狀態。

create function room_status()

returns table

asreturn select * from roomstatus

6,結賬報表系統

採用觸發器實現當乙個顧客執行退房操作時,即往退房表中插入一條新的紀錄時,觸動觸發器,往訂單表中插入資訊作為結賬報表。

create trigger account退房資訊表裡增加一條記錄,則列印訂單

on checkout

after insert

asdeclare @房間號 char(10),@身份證號 varchar(10),@姓名 varchar(10),@退房時間nchar(10)

declare @工作編號 char(10),@** **allint,@入住時間 nchar(10),@總金額 int,@天數 int

select @房間號=房間號 from inserted

select @身份證號=身份證號 from inserted

select @姓名=姓名 from inserted

select @工作編號=服務的員工編號 from custmerinfo where 身份證號=@身份證號

select @入住時間=入住時間 from checkin where 房間號=@房間號

select @**=** from roominfo where 房間號=@房間號

select @天數=天數 from checkout where 房間號=@房間號

select @總金額=@天數*@**

begin

insert into orderinfo(身份證號,姓名,房間號,服務的員工編號,**,入住時間,退房時間,總金額)

values(@身份證號,@姓名,@房間號,@工作編號,@**,@入住時間,@退房時間,@總金額)

end六、總結

本系統主要採用儲存過程、函式和觸發器在後台實現了賓館客房系統的基本功能,使得使用者能夠輕鬆的查詢客房和客戶的資訊,實現一些必要的操作。

客房管理系統資料庫設計

課程設計 課程名稱 資料庫系統分析與設計 題目 客房管理系統資料庫設計 院 系 專業班級 姓名 學號 指導教師 2011年 12 月 30 日 西安建築科技大學課程設計 任務書 專業班級 學生姓名 指導教師 簽名 摘要隨著我國改革開放的不斷推進,人民生活水平日益提高,旅遊經濟蓬勃發展,這一切都帶動了...

某賓館客房管理系統資料庫課程設計

資料庫原理課程設計報告 設計題目某賓館客房管理系統 專業班級 學號學生姓名 起止日期年月日至月 1 日 摘要賓館客房管理系統是對賓館管理的現代化 網路化管理手段,逐步擺脫賓館管理的人工管理方式,拓展經營空間,降低運營成本,提高管理和決策效率而開發的。賓館客房管理系統是賓館經營管理中不可缺少的部分它的...

資料庫課程設計實驗報告賓館客房管理系統

資料庫原理課程設計 題目賓館客房管理系統 學院數學與資訊工程學院 專業資訊管理和資訊系統 班級資訊071 學號200753275110 學生姓名周春璐 指導教師張細香 編寫日期 2010年01月21日 目錄 1 系統前期分析設計2 1.1系統調查2 1.2使用者需求2 1.3系統需求分析2 1.4概...