數(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頁,還剩15頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、一、課程設計相關要求 1.課程設計的目的和意義數(shù)據(jù)庫應用開發(fā)課程設計是實踐性教學環(huán)節(jié)之一,是數(shù)據(jù)庫原理及應用課程的輔助教學課程。通過課程設計,使學生掌握數(shù)據(jù)庫的基本概念,結(jié)合實際的操作和設計,鞏固課堂教學內(nèi)容,使學生掌握數(shù)據(jù)庫系統(tǒng)的基本概念、原理和技術,將理論與實際相結(jié)合,應用現(xiàn)有的數(shù)據(jù)建模工具和數(shù)據(jù)庫管理系統(tǒng)軟件,規(guī)范、科學地完成一個小型數(shù)據(jù)庫的設計與實現(xiàn),把理論課與實驗課所學內(nèi)容做一綜合,并在此基礎上強化學生的實踐意識、提高其實際動手能力和創(chuàng)新能力。 2.設計要求通過設計一完整的數(shù)據(jù)庫,使學生掌握數(shù)據(jù)庫設計各階段的輸入、輸出、設計環(huán)境、目標和方法。熟練掌握兩個主要環(huán)節(jié)概念結(jié)構(gòu)設計與邏輯結(jié)構(gòu)

2、設計;熟練的使用sql語言實現(xiàn)數(shù)據(jù)庫的建立、應用和維護。(1) 根據(jù)題目寫出需求分析(詳細的功能描述)(2) 畫出全局e-r圖(3) 將e-r圖轉(zhuǎn)換為關系模式,定義主鍵、外鍵(4) 在sql server中創(chuàng)建數(shù)據(jù)庫及數(shù)據(jù)表(至少3個數(shù)據(jù)表),定義約束。(5) 輸入數(shù)據(jù),至少創(chuàng)建4個視圖,便于用戶查看數(shù)據(jù),數(shù)據(jù)可涉及多個表。(6) 至少創(chuàng)建3個存儲過程,實現(xiàn)系統(tǒng)的主要功能(7) 創(chuàng)建1個登錄、數(shù)據(jù)庫用戶,并分配數(shù)據(jù)庫管理員權限。(8) 至少創(chuàng)建2個觸發(fā)器,保證數(shù)據(jù)的正確性、數(shù)據(jù)的自動更新。(9) 為數(shù)據(jù)庫做完全備份 成果: 報告,數(shù)據(jù)庫文件(mdf和ldf),備份文件(bak), 前臺程序(v

3、b或其他語言實現(xiàn))。 3.本課程設計內(nèi)容與要求掌握數(shù)據(jù)庫的設計的每個步驟,以及提交各步驟所需圖表和文檔。通過使用目前流行的dbms,建立所設計的數(shù)據(jù)庫,并在此基礎上實現(xiàn)數(shù)據(jù)庫查詢、連接等操作和觸發(fā)器、存儲器等對象設計。(1)需求分析:根據(jù)自己的選題,給出功能模塊圖和必要的文字說明。(2)概念結(jié)構(gòu)設計:繪制所選題目詳細的e-r圖。第3頁(3)邏輯結(jié)構(gòu)設計:將e-r圖轉(zhuǎn)換成等價的關系模式;按需求對關系模式進行規(guī)范化;對規(guī)范化后的模式進行評價,調(diào)整模式,使其滿足性能、存儲等方面要求;根據(jù)局部應用需要設計外模式。(4)物理結(jié)構(gòu)設計:選定實施環(huán)境,存取方法等。(5)數(shù)據(jù)實施和維護:用dbms建立數(shù)據(jù)庫結(jié)

4、構(gòu),加載數(shù)據(jù),實現(xiàn)各種查詢、鏈接應用程序,設計庫中觸發(fā)器、存儲器等對象,并能對數(shù)據(jù)庫做簡單的維護操作。(6)成果:課程設計報告,程序,數(shù)據(jù)文件,日志文件,備份文件 4.課程設計報告要求課程設計報告有四個方面的要求: (1)問題描述。包括此問題的理論和實際兩方面。 (2)解決方案。包括:e-r模型要設計規(guī)范、合理,關系模式的設計至少要滿足第三范式,數(shù)據(jù)庫的設計要考慮安全性和完整性的要求。(3)解決方案中所設計的e-r模型、關系模式的描述與具體實現(xiàn)的說明。(4)具體的解決實例。第4頁二 需求分析階段  1.需求    進行數(shù)據(jù)庫系統(tǒng)設計,

5、首先要對系統(tǒng)的現(xiàn)狀進行分析,明確客房信息管理系統(tǒng)的相關需求1.2客戶管理 (1)新建客戶 (2)修改客戶信息 (3)客戶信息統(tǒng)計 課程設計所要實現(xiàn)的目標、需求和功能,制定和選擇一個較好的系統(tǒng)方案,有計劃,有頭緒,有思路,不能盲目的就著手去做,從而達到一個合理的優(yōu)化系統(tǒng)。需求分析在于弄清這次課程設計的酒店管理系統(tǒng)的確切要求,因此,數(shù)據(jù)庫課程設計的第一步就是明確數(shù)據(jù)庫的目的和如何使用該系統(tǒng)。明確目的之后,才可以確定自己需要保存那些表信息,以及每個表中需要保存哪些字段。對于酒店客房管理系統(tǒng),需要了解以下內(nèi)容:1.1信息管理 (1)個人信息 (2)用戶信息 (3)客戶信息 (4)房間信息1.4入住管理

6、(1)入住(客房狀態(tài)同時置為非空)(2)退房(客房狀態(tài)同時置為空) (5)訂單信息(輸入房號,結(jié)束賬) 1.3房間管理 (1) 查看客房信息(2) 空房統(tǒng)計(3) 添加房間第5頁(4) 刪除房間(有人預定的也會刪除)2. 功能預覽圖 客 房 信 息 管 理 系 統(tǒng) 否 (員工)是是否為管理員? 客 戶 管 理信 息 管 理入 住 管 理房 間 管 理客 戶 管 理入 住 管 理信 息 管 理是是否是否退出?是否退出?否第6頁 結(jié)束asdasd 修改客戶信息三 客房管理系統(tǒng)e-r圖 管理 工 作 人 員n1 管 理 員第7頁修改房間信息狀態(tài)(是否空) 價 格 類 型 房 號 手機號 id 號 性

7、 別 姓 名 房 間nmn1 管理1n 客 戶退/訂房 四 er轉(zhuǎn)為關系模式 1. 工作人員(工作人員id號(主鍵), 管理員id(外鍵)2. 管理員(管理員id(主鍵)3. 客戶(客戶id號(主鍵),姓名,性別,電話,管理員id(外鍵)4. 房間(房間號(主鍵),類型,價格,狀態(tài),客戶姓名,性別,電話,客戶id號(外鍵),管理員id(外鍵)5. 管理(客戶id號(主鍵),工作人員id號(主鍵),客戶姓名,客戶性別,客戶電話) 第8頁五 數(shù)據(jù)字典 1.數(shù)據(jù)項 數(shù)據(jù)項名稱數(shù)據(jù)類型及長度說明房號字符,可變長度10主鍵,不能為空 客房類型字符,可變長度20 價格(*/天)float型 客房狀態(tài)字符,

8、可變長度15 客戶身份證號字符,可變長度20主鍵,不能為空 客戶名字字符,可變長度20 性別字符,可變長度2不能為空(男/女) 聯(lián)系電話字符,可變長度15 入住時間date型不能為空退房時間date型不能為空第9頁六 數(shù)據(jù)庫表 1.客房信息表room列名數(shù)據(jù)類型長度允許空字段說明主,外鍵rnum字符10否客房號pk,fkrtype字符20是客房類型rpricefloat是客房單價rstate字符15是客房狀態(tài)2.客戶信息表 customer列名數(shù)據(jù)類型長度允許空字段說明主,外鍵cid字符20否身份證號pk,fkcname字符20是名字csexfloat2否性別cphone字符15是聯(lián)系電話3.

9、 退/訂房表checkinout第10頁4.退/訂房表checkinout列名數(shù)據(jù)類型長度允許空字段說明主,外鍵dateindate否入住時間dateoutdate否退房時間cid字符2否身份證號pkrnum字符15否預定房號pk第11頁七. sql代碼Ø客房信息管理:客房房號,類型,價格,狀態(tài)等信息錄入Ø 客戶信息管理:客戶信息錄入、修改、刪除(客戶身份證號,姓名,性別,聯(lián)系電話)Ø 客房信息查詢:按類型、狀態(tài)(是否為空)、房號等關鍵字查詢客房的基本信息和入住情況Ø 入住、退房、結(jié)算、賬單打印create database cus_roomon pri

10、mary( name=cus_room, filename='e:數(shù)據(jù)庫cus_room.mdf', size=10, maxsize=50, filegrowth=2)log on( name=cus_room1, filename='e:數(shù)據(jù)庫cus_room.ldf', size=10, maxsize=50, filegrowth=2)use cus_roomcreate table room( rnum varchar(10) constraint pk_rnum primary key not null, rtype varchar(20), rpr

11、ice decimal, rstate varchar(15)create table customer( cid varchar(20) constraint pk_cid primary key not null, cname varchar(20),第12頁 csex char(2) constraint ck_csex check(csex='男' or csex='女'), cphone varchar(15)create table checkinout( datein datetime, dateout datetime, cid varchar(

12、20) constraint fo_cid foreign key references customer(cid) on update cascade on delete cascade,-當對應主鍵(cid)發(fā)生改變時,該字段對應數(shù)據(jù)也會發(fā)生修改 rnum varchar(10) constraint fo_rnum foreign key references room(rnum) on update cascade on delete cascade,-當對應主鍵(rnum)發(fā)生改變時,該字段對應數(shù)據(jù)也會發(fā)生修改 constraint two_pk primary key(cid,rn

13、um) -創(chuàng)建視圖view1 用于結(jié)算房租create view view1asselect room.rnum,customer.cid,rprice,datein,dateout from room,customer,checkinout where room.rnum=checkinout.rnum and customer.cid=checkinout.ciddrop view view1select *from view1 -創(chuàng)建視圖view2,用于訂房對象(人)的選擇create view view2asselect customer .cid from customer wher

14、e cid not in (select cid from checkinout where customer .cid =checkinout.cid)select * from view2-創(chuàng)建視圖view3,用于訂房對象(房號)的選擇create view view3as第13頁select room.rnum from room where rnum not in (select rnum from checkinout where room.rnum =checkinout.rnum )select * from view3-創(chuàng)建視圖view4,用于綜合查詢create view v

15、iew4asselect room.rnum,customer.cid,cname,csex,cphone,rprice,rtype,datein from room,customer,checkinout where room.rnum=checkinout.rnum and customer.cid=checkinout.cid-drop view view4select *from view4-創(chuàng)建視圖view5,用于綜合查詢對象(人)的選擇create view view5asselect customer .cid from customer select * from view5-

16、創(chuàng)建視圖view6,用于訂房對象(房號)的選擇create view view6asselect room.rnum from roomselect * from view6-創(chuàng)建存儲過程p1,用于綜合查詢的按cid(身份證號)查詢create procedure p1(cid varchar(20)as if exists (select * from view4 where cid=cid) select * from view4 where cid=cidelse第14頁 print'該客戶暫時沒有訂房'-drop proc p1p1'123'-創(chuàng)建存儲過

17、程p2,用于綜合查詢的按客房rtype(類型)查詢create procedure p2(rtype varchar(10)asselect * from room where rtype=rtypep2'單人'-創(chuàng)建存儲過程p3,用于綜合查詢的按客房rstate(狀態(tài))查詢create procedure p3(rstate varchar(10)asselect * from room where rstate=rstatep3'有'-創(chuàng)建觸發(fā)器tr1,當chechinout(客房記錄)表有人退房時,刪除customer(客戶信息)表中對應的客戶信息crea

18、te trigger tr1on checkinoutfor deleteasdelete from customer where cid=(select cid from deleted )-drop trigger tr1-創(chuàng)建觸發(fā)器tr2,當chechinout(客房記錄)表有用戶訂房時,room表對應的房號的狀態(tài)更新為'無'create trigger tr2on checkinoutfor insertas第15頁update room set rstate ='無' where rnum=(select rnum from inserted)-drop trigger tr2-創(chuàng)建觸發(fā)器tr3,當chechinout(客房記錄)表有用戶退房時,room表對應的房號的狀態(tài)更新為&#

溫馨提示

  • 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

提交評論