摘要:本系統是賓館客房管理系統,該報告主要介紹了資料庫的設計,建立,主要功能的實現。資料庫系統包括員工管理、客房管理、顧客管理幾個大塊。
主要實現了登記功能,預訂功能,多種方法查詢顧客功能,檢視客房狀態功能,操作人員對系統的修改功能,以及結賬報表功能。
一、需求分析
(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概...