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

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、數(shù)據(jù)庫酒店管理系統(tǒng)課程設(shè)計(jì)(基于SQL server 2000實(shí)現(xiàn)過程1.1 通過查詢分析器實(shí)現(xiàn)建立數(shù)據(jù)庫、數(shù)據(jù)表-創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表-(1創(chuàng)建酒店管理系統(tǒng)數(shù)據(jù)庫CREATE DATABASE 酒店管理系統(tǒng)(2創(chuàng)建客房信息表CREATE TABLE 客房(客房編號(hào)CHAR(8 PRIMARY KEY,客房類型CHAR(8NOT NULL,價(jià)格SMALLMONEY NOT NULL,床位數(shù)INT NOT NULL,使用狀態(tài)CHAR(8 NOT NULLINSERT INTO 客房V ALUES('101','一',100,1,'在使用'INSERT

2、 INTO 客房V ALUES('102','二',200,2,'在使用'INSERT INTO 客房V ALUES('103','二',200,1,'在使用'INSERT INTO 客房V ALUES('104','三',300,2,'在使用'INSERT INTO 客房V ALUES('105','三',300,1,'未使用'(3創(chuàng)建客戶信息表CREATE TABLE 客戶(客戶編號(hào)CHAR(8PRI

3、MARY KEY,客戶名稱CHAR(10NOT NULL,身份證號(hào)CHAR(18NOT NULL,聯(lián)系地址CHAR(25,聯(lián)系電話CHAR(10INSERT INTO 客戶V ALUES('1001','王一',12234,'江西','3245354'INSERT INTO 客戶V ALUES('1002','張三',34234,'江西','2442442'INSERT INTO 客戶V ALUES('1003','李四',56465,

4、'江西','5654645'INSERT INTO 客戶V ALUES('1004','王錢',65435,'江西','5676577'INSERT INTO 客戶V ALUES('1005','孫志',11464,'江西','4234343'(4創(chuàng)建入住登記表CREATE TABLE 入住登記(客房編號(hào)CHAR(8FOREIGN KEY REFERENCES 客房(客房編號(hào), 客戶編號(hào)CHAR(8FOREIGN KEY REFEREN

5、CES 客戶(客戶編號(hào), 預(yù)定日期DATETIME,預(yù)定數(shù)量INT,PRIMARY KEY(客房編號(hào),客戶編號(hào)INSERT INTO 入住登記V ALUES('101','1001',2010-10-10,1INSERT INTO 入住登記V ALUES('102','1002',2010-12-10,1INSERT INTO 入住登記V ALUES('103','1003',2010-12-26,1INSERT INTO 入住登記V ALUES('104','1004

6、9;,2010-12-9,1-創(chuàng)建查詢視圖- 1.2系統(tǒng)功能相應(yīng)的查詢視圖:(1客戶信息查詢視圖CREATE VIEW 客戶信息查詢AS SELECT * FROM 客戶(2客房信息查詢CREATE VIEW 客房信息查詢AS SELECT * FROM 客房(3入住信息查詢CREATE VIEW 入住登記信息查詢AS SELECT * FROM 入住登記(4入住信息查詢CREATE VIEW 入住信息查詢AS SELECT入住登記.客房編號(hào),客戶名稱,入住登記.客戶編號(hào),客房.客房類型,價(jià)格,使用狀態(tài)FROM 客房,客戶,入住登記WHERE 客房.客房編號(hào)=入住登記.客房編號(hào)AND 入住登記

7、.客戶編號(hào)=客戶.客戶編號(hào)-建立索引- 1.3建立索引及數(shù)據(jù)入庫1.建立客房編號(hào),價(jià)格,客戶編號(hào),客戶名稱的索引創(chuàng)建客房表索引:CREATE UNIQUE INDEX UKF ON 客房(客房編號(hào),價(jià)格創(chuàng)建客戶表索引:CREATE UNIQUE INDEX UKH ON 客戶(客戶編號(hào),客戶名稱創(chuàng)建入住表索引:CREATE UNIQUE INDEX URZ ON 入住登記(客戶編號(hào),客房編號(hào)2.數(shù)據(jù)入庫方法一酒店管理系統(tǒng)包括客房信息表,客戶信息表,入住登記信息表。采用Excel中錄入數(shù)據(jù),然后使用SQL Server 2000數(shù)據(jù)導(dǎo)入、導(dǎo)出功能直接將數(shù)據(jù)導(dǎo)入到相應(yīng)的基本表。方法二在查詢分析器中

8、插入相關(guān)數(shù)據(jù),用SQL語句插入。-創(chuàng)建存儲(chǔ)過程- 1.4建立存儲(chǔ)過程插入客房信息存儲(chǔ)過程:CREATE PROCEDURE 插入客房信息(KFB CHAR(8,KFL CHAR(8,JG SMALLMONEY,CWS INT,SYZT CHAR(8ASINSERT INTO 客房V ALUES (KFB,KFL,JG,CWS,SYZT修改客房信息存儲(chǔ)過程:CREATE PROCEDURE 修改客房信息(KFB CHAR(8,KFL CHAR(8,JG SMALLMONEY,CWS INT,SYZT CHAR(8ASUPDATE 客房SET 客房類型=KFL,價(jià)格=JG,床位數(shù)=CWS,使用狀態(tài)

9、=SYZTWHERE 客房編號(hào)=KFB刪除客房信息存儲(chǔ)過程:CREATE PROCEDURE 刪除客房信息(KFB CHAR(8ASDELETE FROM 客房WHERE 客房編號(hào)=KFB插入客戶信息CREATE PROCEDURE 插入客戶信息(KHB CHAR(8,KFM CHAR(10,SFZ CHAR(18,LXDZ CHAR(25,LXDH CHAR(10ASINSERT INTO 客戶V ALUES (KHB,KFM,SFZ,LXDZ,LXDH修改客戶信息CREATE PROCEDURE 修改客戶信息(KHB CHAR(8,KFM CHAR(10,SFZ CHAR(18,LXDZ

10、CHAR(25,LXDH CHAR(10ASUPDATE 客戶SET 客戶名稱=KFM,身份證號(hào)=SFZ,聯(lián)系地址=LXDZ,聯(lián)系電話=LXDH WHERE 客戶編號(hào)=KHB刪除客戶信息CREATE PROCEDURE 刪除客戶信息(KHB CHAR(8ASDELETEFROM 客戶WHERE 客戶編號(hào)=KHBEXEC 刪除客戶信息KHB='10009'插入入住信息CREATE PROCEDURE 插入入住信息(KFB CHAR(8,KHB CHAR(8,YDRQ DATETIME,YDSL INTASINSERT INTO 入住登記V ALUES(KFB,KHB,YDRQ,Y

11、DS L修改入住信息CREATE PROCEDURE 修改入住信息(KFB CHAR(8,KHB CHAR(8,YDRQ DATETIME,YDSL INTASUPDATE 入住登記SET 客房編號(hào)=KFB,預(yù)定日期=YDRQ ,預(yù)定數(shù)量=YDSL WHERE 客戶編號(hào)=KHB刪除入住信息CREATE PROCEDURE 刪除入住信息(KHB CHAR(8ASDELETEFROM 入住登記WHERE 客戶編號(hào)=KHB1.5查詢存儲(chǔ)過程的創(chuàng)建客房編號(hào)查詢CREATE PROCEDURE 客房編號(hào)查詢(KFB CHAR(8,KFL CHAR(8OUTPUT,JG SMALLMONEY OUTPUT

12、,CWS INT OUTPUT,SYZT CHAR(8OUTPUTASSELECT KFL=客房類型,JG=價(jià)格,CWS=床位數(shù),SYZT=使用狀態(tài)FROM 客房WHERE 客房編號(hào)=KFB客戶編號(hào)查詢CREATE PROCEDURE 客戶編號(hào)查詢(KHB CHAR(8,KFM CHAR(10OUTPUT ,SFZ CHAR(18OUTPUT,LXDZ CHAR(25OUTPUT,LXDH CHAR(10OUTPUTASSELECT KFM=客戶名稱,SFZ=身份證號(hào),LXDZ=聯(lián)系地址,LXDH=聯(lián)系電話FROM 客戶WHERE 客戶編號(hào)=KHB入住客戶編號(hào)查詢CREATE PROCEDUR

13、E 入住客戶編號(hào)查詢(KFB CHAR(8OUTPUT,KHB CHAR(8,YDRQ DATETIME OUTPUT,YDSL INT OUTPUTASSELECT KFB=客房編號(hào),YDRQ=預(yù)定日期,YDSL=預(yù)定數(shù)量FROM 入住登記WHERE 客戶編號(hào)=KHB-建立觸發(fā)器- 1.6、建立觸發(fā)器保證數(shù)據(jù)的一致性客房使用狀態(tài)的控制CREATE TRIGGER 控制觸發(fā)器ON 入住登記FOR INSERTASUPDATE 客房SET 使用狀態(tài)='使用中'WHERE 客房編號(hào)=ANY (SELECT 客房編號(hào)FROM INSERTED 控制入住信息刪除的觸發(fā)器CREATE T

14、RIGGER 入住刪除觸發(fā)器ON 入住登記FOR DELETEASBEGINDELETEFROM 客戶WHERE 客戶編號(hào)=ANY (SELECT 客戶編號(hào)FROM DELETED UPDATE 客房SET 使用狀態(tài)='未使用'WHERE 客房編號(hào)=ANY(SELECT 客房編號(hào)FROM DELETED END客戶信息刪除的控制CREATE TRIGGER 客戶刪除觸發(fā)器ON 客戶FOR DELETEASBEGINDELETEFROM 入住WHERE 客戶編號(hào)=ANY (SELECT 客戶編號(hào)FROM DELETED UPDATE 客房SET 使用狀態(tài)='未使用'

15、;WHERE 客房編號(hào)=ANY(SELECT 客房編號(hào)FROM DELETED END客房刪除觸發(fā)器CREATE TRIGGER 客房刪除觸發(fā)器ON 客房FOR DELETEASDELETEFROM 入住WHERE 客戶編號(hào)=ANY (SELECT 客戶編號(hào)FROM DELETED 酒店管理系統(tǒng)數(shù)據(jù)庫腳本-數(shù)據(jù)庫初始化-set nocount onset dateformat mdygouse mastergoif exists(select * from sysdatabases where name='酒店管理系統(tǒng)' /*刪除在master中已存*/ /*在的名為酒店管理系

16、統(tǒng)的數(shù)據(jù)庫*/drop database 酒店管理系統(tǒng)go-酒店管理系統(tǒng)的建立-create database 酒店管理系統(tǒng)on primary /*設(shè)定系統(tǒng)主文件*/(name='酒店管理系統(tǒng)_data',filename='d:酒店管理系統(tǒng).mdf',size=10,maxsize=50,filegrowth=5log on /*創(chuàng)建事務(wù)日志文件*/(name='酒店管理系統(tǒng)_log',filename='d:酒店管理系統(tǒng).ldf',size=5,maxsize=25,filegrowth=5go-(注:刪除查詢分析器中的以上

17、代碼后,運(yùn)行以下代碼-建立信息表-use 酒店管理系統(tǒng)if exists(select * from sysobjects where name='客戶'drop table 客戶goprint 'drop table 客戶'print 'create table 客戶'go/*客戶信息表*/CREATE TABLE 客戶/*創(chuàng)建客戶信息表*/(客戶編號(hào)CHAR(8PRIMARY KEY,客戶名稱CHAR(10NOT NULL,身份證號(hào)CHAR(18NOT NULL,聯(lián)系地址CHAR(25,聯(lián)系電話CHAR(10go-插入客戶數(shù)據(jù)-INSERT

18、INTO 客戶V ALUES('1001','王一',12234,'江西','3245354' INSERT INTO 客戶V ALUES('1002','張三',34234,'江西','2442442' INSERT INTO 客戶V ALUES('1003','李四',56465,'江西','5654645' INSERT INTO 客戶V ALUES('1004','王錢&#

19、39;,65435,'江西','5676577' INSERT INTO 客戶V ALUES('1005','孫志',11464,'江西','4234343'-if exists(select * from sysobjects where name='客房'drop table 客房goprint 'drop table 客房'print 'create table 客房'go/*客房信息表*/CREATE TABLE 客房/*創(chuàng)建客房信息表*/(客

20、房編號(hào)CHAR(8 PRIMARY KEY,客房類型CHAR(8NOT NULL,價(jià)格SMALLMONEY NOT NULL,床位數(shù)INT NOT NULL,使用狀態(tài)CHAR(8 NOT NULLgo-插入客房數(shù)據(jù)-INSERT INTO 客房V ALUES('101','一',100,1,'使用中'INSERT INTO 客房V ALUES('102','二',200,2,'使用中'INSERT INTO 客房V ALUES('103','二',200,1,'

21、;使用中'INSERT INTO 客房V ALUES('104','三',300,2,'使用中'INSERT INTO 客房V ALUES('105','三',300,1,'使用中'-if exists(select * from sysobjects where name='入住登記'drop table 入住登記goprint 'drop table 入住登記'print 'create table 入住登記'go/*入住登記信息表*/CR

22、EATE TABLE 入住登記/*創(chuàng)建入住登記信息表*/(客房編號(hào)CHAR(8FOREIGN KEY REFERENCES 客房(客房編號(hào), 客戶編號(hào)CHAR(8FOREIGN KEY REFERENCES 客戶(客戶編號(hào),預(yù)定日期DATETIME,預(yù)定數(shù)量INT,PRIMARY KEY(客房編號(hào),客戶編號(hào)go-插入入住登記信息數(shù)據(jù)-INSERT INTO 入住登記V ALUES('101','1001',2010-10-10,1INSERT INTO 入住登記V ALUES('102','1002',2010-12-10,1IN

23、SERT INTO 入住登記V ALUES('103','1003',2010-12-26,1INSERT INTO 入住登記V ALUES('104','1004',2010-12-9,1go-建立索引-CREATE UNIQUE INDEX UKF ON 客房(客房編號(hào),價(jià)格goCREATE UNIQUE INDEX UKH ON 客戶(客戶編號(hào),客戶名稱goCREATE UNIQUE INDEX URZ ON 入住登記(客戶編號(hào),客房編號(hào)go-建立觸發(fā)器- -建立控制觸發(fā)器(保證在客房使用狀態(tài)的一致性-if exists (

24、select * from sysobjects where name='控制觸發(fā)器'drop trigger 控制觸發(fā)器GOCREATE TRIGGER 控制觸發(fā)器ON 入住登記FOR INSERTASUPDATE 客房SET 使用狀態(tài)='使用中'WHERE 客房編號(hào)=ANY (SELECT 客房編號(hào)FROM INSERTED go-建立入住刪除觸發(fā)器(保證信息刪除的一致性-if exists (select * from sysobjects where name='入住刪除觸發(fā)器'drop trigger 入住刪除觸發(fā)器GOCREATE T

25、RIGGER 入住刪除觸發(fā)器ON 入住登記FOR DELETEASBEGINDELETE FROM 客戶 WHERE 客戶編號(hào)=ANY (SELECT 客戶編號(hào) FROM DELETED UPDATE 客房 SET 使用狀態(tài)='未使用' WHERE 客房編號(hào)=ANY(SELECT 客房編號(hào) FROM DELETED END go -建立客房刪除觸發(fā)器(保證刪除的一致性)-if exists (select * from sysobjects where name='客房刪除觸發(fā)器' drop trigger 客房刪除觸發(fā)器 GO CREATE TRIGGER 客

26、房刪除觸發(fā)器 ON 客房 FOR DELETE AS DELETE FROM 入住 WHERE 客戶編號(hào)=ANY (SELECT 客戶編號(hào) FROM DELETED go -創(chuàng)建查詢視圖-CREATE VIEW 入住信息查詢 AS SELECT 入住登記.客房編號(hào),客戶名稱,入住登記.客戶編號(hào),客房.客房類型,價(jià)格,使用 狀態(tài) FROM 客房,客戶,入住登記 WHERE 客房.客房編號(hào)=入住登記.客房編號(hào) AND 入住登記.客戶編號(hào)=客戶.客戶編號(hào) go -建立存儲(chǔ)過程-客房信息插入存儲(chǔ)過程-CREATE PROCEDURE 插入客房信息 (KFB CHAR(8, KFL CHAR(8, JG

27、 SMALLMONEY, CWS INT, SYZT CHAR(8 AS INSERT INTO 客房 VALUES (KFB,KFL,JG,CWS,SYZT GO -客房信息修改的存儲(chǔ)過程- CREATE PROCEDURE 修改客房信息 (KFB CHAR(8, KFL CHAR(8, JG SMALLMONEY, CWS INT, SYZT CHAR(8 AS UPDATE 客房 SET 客房類型=KFL,價(jià)格=JG,床位數(shù)=CWS,使用狀態(tài)=SYZT WHERE 客房編號(hào)=KFB go -客房信息刪除的存儲(chǔ)過程-CREATE PROCEDURE 刪除客房信息 (KFB CHAR(8 A

28、S DELETE FROM 客房 WHERE 客房編號(hào)=KFB GO -客戶信息插入的存儲(chǔ)過程-CREATE PROCEDURE 插入客戶信息 (KHB CHAR(8, KFM CHAR(10, SFZ CHAR(18, LXDZ CHAR(25, LXDH CHAR(10 AS INSERT INTO 客戶 VALUES (KHB,KFM,SFZ,LXDZ,LXDH go -客戶信息修改的存儲(chǔ)過程-CREATE PROCEDURE 修改客戶信息 (KHB CHAR(8, KFM CHAR(10, SFZ CHAR(18, LXDZ CHAR(25, LXDH CHAR(10 AS UPDATE 客戶 SET 客戶名稱=KFM,身份證號(hào)=SFZ,聯(lián)系地址=LXDZ,聯(lián)系電話=LXDH WHERE 客戶編號(hào)=KHB GO -客戶信息刪除的存儲(chǔ)過程- CREATE PROCEDURE 刪除客戶信息 (KHB CHAR(8 AS DELETE FROM 客戶 WHERE 客戶編號(hào)=KHB go -入住信息插入的存儲(chǔ)過程

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論