2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩40頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  信息工程學(xué)院</b></p><p>  《數(shù)據(jù)庫課程設(shè)計(jì)》論文</p><p>  題 目:酒店管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)</p><p> 學(xué) 號(hào):</p><p> 專業(yè)班級(jí):軟件工程133</p><p> 姓 名:</p><p&g

2、t; 指導(dǎo)老師:</p><p> 完成日期:2015年6月28日</p><p>  酒店管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)</p><p><b>  洪呂彬</b></p><p> ?。ㄐ畔⒐こ虒W(xué)院軟件工程13級(jí)3班)</p><p>  摘 要 200-300字為限</p><p

3、>  關(guān)鍵字:酒店;管理;效率(三到五個(gè),之間用分號(hào)分隔)</p><p>  隨著我國經(jīng)濟(jì)體制改革的不斷深化和我國經(jīng)濟(jì)的快速發(fā)展,我國人民的收入不斷提高,消費(fèi)觀念也有提高,對(duì)服務(wù)質(zhì)量的要求也有很大的提高。各地把旅游業(yè)當(dāng)作本 地經(jīng)濟(jì)發(fā)展的重要支柱之一。酒店作為人們食宿、娛樂、休閑的場(chǎng)所而得到了快速的發(fā)展。社會(huì)上也成立了各種類型,不同規(guī)模的酒店服務(wù)企業(yè)。如何為客戶提供更 加準(zhǔn)確及時(shí)的服務(wù),

4、成為各個(gè)酒店競(jìng)爭(zhēng)關(guān)鍵。所以酒店業(yè)務(wù)信息化建設(shè)就成為了客戶衡量酒店提供商服務(wù)標(biāo)準(zhǔn)的一個(gè)準(zhǔn)則,信息系統(tǒng)成為了基礎(chǔ)。</p><p>  對(duì)酒店整個(gè)來說,對(duì)酒店經(jīng)營狀況起決定作用的是酒店的服務(wù)管理水平。如何利用先進(jìn)的管理手段來提高酒店的管理水平成為酒店業(yè)務(wù)發(fā)展的當(dāng)務(wù)之急。面對(duì)信息時(shí)代的機(jī)遇和挑戰(zhàn),利用科技手段提高酒店的管理無疑是一條行之有效的途徑。雖然計(jì)算機(jī)管理并不是酒店管理走向成功的關(guān)鍵元素,但它可以最大限度地發(fā)揮準(zhǔn)

5、確、快捷、高效等作用,對(duì)酒店的業(yè)務(wù)管理提供強(qiáng)有力的支持。因此,采用全新的計(jì)算機(jī)網(wǎng)絡(luò)和酒店業(yè)務(wù)管理系統(tǒng),已成為提高酒店的管理效率,使作業(yè)人員與管理系統(tǒng)之間靈活互動(dòng),實(shí)現(xiàn)流暢的工作流銜接,幫助酒店有效地進(jìn)行業(yè)務(wù)管理,釋放最大價(jià)值。酒店業(yè)務(wù)管理系統(tǒng)在達(dá)到在節(jié)省人力資源成本的同時(shí),可以提高業(yè)務(wù)效率,并能夠及時(shí)、準(zhǔn)確、迅速地滿足顧客服務(wù)的需求。</p><p>  隨著Internet技術(shù)的進(jìn)一步發(fā)展和普及,不能很好的適應(yīng)

6、世界經(jīng)濟(jì)發(fā)展的形式和我國國民經(jīng)濟(jì)建設(shè)的需要,市場(chǎng)現(xiàn)有的產(chǎn)品化的酒店業(yè)務(wù)軟件系統(tǒng)在不斷發(fā)展中的酒店的需求?;赪EB的酒店管理系統(tǒng)的總體設(shè)計(jì)目標(biāo)能夠建立完善、高效、可靠的酒店業(yè)務(wù)信息系統(tǒng),為酒店提供良好的信息環(huán)境。</p><p><b>  目 錄</b></p><p><b>  1.需求分析1</b></p><p&

7、gt;  2.?dāng)?shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)9</p><p>  2.1 概念設(shè)計(jì)9</p><p>  2.1.1 分E-R圖建立9</p><p>  2.1.2 全局/整體E-R圖11</p><p>  2.2 邏輯設(shè)計(jì)11</p><p>  2.2.1 建立關(guān)系模式11</p><p>

8、;  2.2.2 關(guān)系模式規(guī)范化處理12</p><p>  2.2.3 用戶子模式建立13</p><p>  2.2.4 關(guān)系模式邏輯結(jié)構(gòu)定義13</p><p>  3. 數(shù)據(jù)庫物理設(shè)計(jì)13</p><p>  4.?dāng)?shù)據(jù)庫實(shí)施與測(cè)試14</p><p>  4.1 SQL Server 2008數(shù)據(jù)庫實(shí)

9、施與測(cè)試14</p><p>  4.1.1 數(shù)據(jù)庫及數(shù)據(jù)庫對(duì)象建立14</p><p>  4.1.2 數(shù)據(jù)入庫15</p><p>  4.1.3 數(shù)據(jù)庫測(cè)試15</p><p>  4.2 Oracle數(shù)據(jù)庫實(shí)施與測(cè)試17</p><p>  4.2.1 數(shù)據(jù)庫及數(shù)據(jù)庫對(duì)象建立17</p>

10、<p>  4.2.2 數(shù)據(jù)入庫19</p><p>  4.2.3 數(shù)據(jù)庫測(cè)試19</p><p><b>  5.總結(jié)19</b></p><p><b>  6.附錄20</b></p><p>  小型酒店管理涉及前臺(tái)、客房服務(wù)、餐廳三個(gè)部分,每個(gè)部分都需要錄入信息,所

11、以建立管理系統(tǒng)的數(shù)據(jù)庫是必不可少的。本數(shù)據(jù)庫目的便是實(shí)習(xí)酒店的基本信息管理。</p><p><b>  1.需求分析</b></p><p>  系統(tǒng)功能:能夠處理小型酒店前臺(tái)、客房服務(wù)部、餐廳的基本信息管理</p><p>  數(shù)據(jù)庫系統(tǒng)環(huán)境要求:支持Sql Server 2008及以上版本、Oracle 11g及以上版本的運(yùn)行</p

12、><p><b>  數(shù)據(jù)流程圖部分:</b></p><p><b> ?、贁?shù)據(jù)流程總圖:</b></p><p>  ②數(shù)據(jù)流程分圖P0:</p><p><b> ?、蹟?shù)據(jù)流程圖P1:</b></p><p><b> ?、軘?shù)據(jù)流程圖P2:&

13、lt;/b></p><p><b> ?、輸?shù)據(jù)流程圖P3:</b></p><p><b>  數(shù)據(jù)字典部分:</b></p><p><b> ?、贁?shù)據(jù)項(xiàng):</b></p><p><b>  表1-1 數(shù)據(jù)項(xiàng)</b></p>&l

14、t;p><b> ?、跀?shù)據(jù)結(jié)構(gòu):</b></p><p><b>  表1-2 數(shù)據(jù)結(jié)構(gòu)</b></p><p><b> ?、蹟?shù)據(jù)流:</b></p><p><b>  表1-3 數(shù)據(jù)流</b></p><p><b>  ④處理邏輯的

15、描述:</b></p><p>  表1-4 處理邏輯的描述</p><p><b> ?、輸?shù)據(jù)存儲(chǔ)的描述:</b></p><p>  表1-5 數(shù)據(jù)存儲(chǔ)的描述</p><p><b>  2.?dāng)?shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)</b></p><p><b>  2.1

16、 概念設(shè)計(jì)</b></p><p>  2.1.1 分E-R圖建立</p><p><b>  前廳E-R圖:</b></p><p><b>  客房服務(wù)E-R圖:</b></p><p><b>  餐廳E-R圖:</b></p><p>

17、;  2.1.2 全局/整體E-R圖</p><p><b>  2.2 邏輯設(shè)計(jì)</b></p><p>  2.2.1 建立關(guān)系模式</p><p>  顧客(姓名,身份證號(hào),年齡)</p><p>  顧客函數(shù)依賴集{身份證號(hào)→姓名,身份證號(hào)→年齡}</p><p>  房間信息(房間號(hào),房

18、間類型,房間單價(jià),房間清潔情況)</p><p>  房間信息函數(shù)依賴集{房間號(hào)→房間類型,房間號(hào)→房間單價(jià),房間號(hào)→房間清潔情況}</p><p>  房客信息(房客流水號(hào),姓名,身份證號(hào),年齡,餐廳消費(fèi)額,送餐消費(fèi)額,入住天數(shù),入住房間號(hào))</p><p>  房客信息函數(shù)依賴集{流水號(hào)→姓名,流水號(hào)→身份證號(hào),流水號(hào)→年齡,流水號(hào)→餐廳消費(fèi)額,流水號(hào)→送餐消費(fèi)

19、額,流水號(hào)→入住天數(shù),流水號(hào)→入住房間號(hào)}</p><p>  預(yù)訂(預(yù)訂編號(hào),預(yù)訂客戶姓名,預(yù)訂客戶電話,預(yù)訂房間號(hào),預(yù)定房間類型,預(yù)訂房間單價(jià))</p><p>  預(yù)訂函數(shù)依賴集{預(yù)訂編號(hào)→預(yù)訂客戶姓名,預(yù)訂編號(hào)→預(yù)訂客戶電話,預(yù)訂編號(hào)→預(yù)訂房間號(hào),預(yù)訂編號(hào)→預(yù)定房間類型,預(yù)訂編號(hào)→預(yù)訂房間單價(jià)}</p><p>  退訂(退訂編號(hào),退訂客戶姓名,客戶電話,房

20、間號(hào),房間類型,房間單價(jià))</p><p>  退訂函數(shù)依賴集{退訂編號(hào)→預(yù)訂客戶姓名,退訂編號(hào)→退訂客戶電話,退訂編號(hào)→房間號(hào),編號(hào)→預(yù)定房間類型,編號(hào)→預(yù)訂房間單價(jià)}</p><p>  退房結(jié)賬(結(jié)賬單編號(hào),房客流水號(hào),結(jié)賬總金額)</p><p>  退房結(jié)賬函數(shù)依賴集{結(jié)賬單編號(hào)、房客流水號(hào)→結(jié)賬總金額}</p><p>  清潔單

21、(清潔單編號(hào),清潔房間號(hào))</p><p>  清潔單函數(shù)依賴集{清潔單編號(hào)→清潔房間號(hào)}</p><p>  送餐單(送餐單編號(hào),下單時(shí)間,房客流水號(hào),預(yù)計(jì)送達(dá)時(shí)間)</p><p>  送餐單函數(shù)依賴集{送餐單編號(hào)→下單時(shí)間,送餐單編號(hào)→房客流水號(hào),送餐單編號(hào)→預(yù)計(jì)送達(dá)時(shí)間}</p><p>  送餐消費(fèi)單(送餐結(jié)賬編號(hào),送餐單編號(hào),消費(fèi)

22、結(jié)算時(shí)間,餐品總額,房客流水號(hào))</p><p>  送餐消費(fèi)單函數(shù)依賴集{送餐結(jié)賬編號(hào)→消費(fèi)結(jié)算時(shí)間,送餐結(jié)賬編號(hào)→送餐單編號(hào),送餐結(jié)賬編號(hào)→餐品總額,送餐結(jié)賬編號(hào)→房客流水號(hào)}</p><p>  點(diǎn)餐單(點(diǎn)餐單編號(hào),餐桌號(hào),點(diǎn)餐時(shí)間,房客流水號(hào))</p><p>  點(diǎn)餐單函數(shù)依賴集{點(diǎn)餐單編號(hào)→餐桌號(hào),點(diǎn)餐單編號(hào)→點(diǎn)餐時(shí)間,點(diǎn)餐單編號(hào)→房客流水號(hào)}</

23、p><p>  房客消費(fèi)單(房客消費(fèi)單編號(hào),點(diǎn)餐單編號(hào),結(jié)賬時(shí)間,餐品總額,房客流水號(hào))</p><p>  房客消費(fèi)單函數(shù)依賴集{房客消費(fèi)單編號(hào)→點(diǎn)餐單編號(hào),房客消費(fèi)單編號(hào)→結(jié)賬時(shí)間,房客消費(fèi)單編號(hào)→餐品總額,房客消費(fèi)單編號(hào)→房客流水號(hào)}</p><p>  餐品(餐品編號(hào),餐品名,餐品單價(jià))</p><p>  餐品函數(shù)依賴集{餐品編號(hào)→餐品

24、單價(jià)}</p><p>  訂單細(xì)則(點(diǎn)餐單編號(hào),餐品編號(hào),餐品數(shù)量)</p><p>  訂單細(xì)則函數(shù)依賴集{點(diǎn)餐單編號(hào) 餐品編號(hào)→餐品數(shù)量}</p><p>  2.2.2 關(guān)系模式規(guī)范化處理</p><p>  根據(jù)F,可以得出關(guān)系“訂單細(xì)則”不滿足3NF,但是依據(jù)實(shí)際需要,2NF即可。</p><p>  2.

25、2.3 用戶子模式建立</p><p>  房間信息(房間號(hào),房間類型,房間單價(jià),房間清潔情況)</p><p>  房客信息(房客流水號(hào),姓名,餐廳消費(fèi)額,送餐消費(fèi)額,入住天數(shù),入住房間號(hào))</p><p>  點(diǎn)餐單(點(diǎn)餐單編號(hào),餐桌號(hào),點(diǎn)餐時(shí)間,房客流水號(hào))</p><p>  房客消費(fèi)單(房客消費(fèi)單編號(hào),點(diǎn)餐單編號(hào),結(jié)賬時(shí)間,餐品總額

26、,房客流水號(hào))</p><p>  餐品(餐品編號(hào),餐品名,餐品單價(jià))</p><p>  訂單細(xì)則(點(diǎn)餐單編號(hào),餐品編號(hào),餐品數(shù)量)</p><p>  2.2.4 關(guān)系模式邏輯結(jié)構(gòu)定義</p><p>  表2-1 酒店管理系統(tǒng)關(guān)系模式匯總表</p><p>  3. 數(shù)據(jù)庫物理設(shè)計(jì)</p><

27、p><b>  索引①</b></p><p><b>  索引名稱:房客查詢</b></p><p><b>  索引類型:聚簇索引</b></p><p>  索引功能:快速查詢?nèi)胱》块g為XXX的房客</p><p>  4.?dāng)?shù)據(jù)庫實(shí)施與測(cè)試</p>&

28、lt;p>  4.1 SQL Server 2008數(shù)據(jù)庫實(shí)施與測(cè)試</p><p>  4.1.1 數(shù)據(jù)庫及數(shù)據(jù)庫對(duì)象建立</p><p><b>  表:</b></p><p><b>  Room</b></p><p><b>  Customer</b><

29、;/p><p><b>  Lodger</b></p><p>  Reservation</p><p>  Unsubscribe</p><p><b>  CheckOut</b></p><p>  CleanOrder</p><p>  M

30、ealsOnWheels</p><p><b>  MOWBill</b></p><p><b>  MealOrder</b></p><p>  LodgerBill</p><p><b>  Food</b></p><p><b>

31、;  Order</b></p><p> ?。⊿QL語句見附錄1)</p><p><b>  視圖:</b></p><p><b>  Room_view</b></p><p>  Lodger_view</p><p>  MealOrder_view&

32、lt;/p><p>  LodgerBill_view</p><p><b>  Food_view</b></p><p>  OrderDetail_view</p><p> ?。⊿QL語句見附錄2)</p><p><b>  索引:</b></p>&l

33、t;p><b>  PK_Lodger</b></p><p><b>  存儲(chǔ)過程:</b></p><p>  PROC_INSERT_Lodger</p><p>  PROC_INSERT_Reservation</p><p>  PROC_INSERT_Unsubscribe<

34、;/p><p>  PROC_INSERT_MealOrder</p><p>  PROC_INSERT_MoW</p><p>  PROC_INSERT_Orderdetail</p><p> ?。⊿QL語句見附錄3)</p><p><b>  觸發(fā)器:</b></p><

35、;p>  OrderDetailInsert on OrderDetail</p><p>  OrderDetailInser_2 on OrderDetail</p><p>  LodgerCheckOut on Lodger</p><p>  CheckBill1 on LodgerBill</p><p>  CheckBi

36、ll2 on MoWBill</p><p> ?。⊿QL語句見附錄4)</p><p>  4.1.2 數(shù)據(jù)入庫</p><p>  4.1.3 數(shù)據(jù)庫測(cè)試</p><p><b>  一、存儲(chǔ)過程測(cè)試</b></p><p>  Exec PROC_INSERT_Lodger</p>

37、;<p>  '021','胡亞娟','61374119741205503066',41,0,0,1,'306';</p><p><b>  結(jié)果:</b></p><p><b>  Lodger表:</b></p><p>  CheckO

38、ut表:</p><p><b>  二、觸發(fā)器測(cè)試</b></p><p>  更新OrderDetail表后</p><p>  LodgerBill自動(dòng)更新數(shù)據(jù):</p><p>  MoWBill表自動(dòng)更新數(shù)據(jù):</p><p>  Lodger表自動(dòng)更新數(shù)據(jù):</p>&l

39、t;p>  CheckOut表自動(dòng)更新數(shù)據(jù):</p><p>  4.2 Oracle數(shù)據(jù)庫實(shí)施與測(cè)試</p><p>  4.2.1 數(shù)據(jù)庫及數(shù)據(jù)庫對(duì)象建立</p><p><b>  表:</b></p><p><b>  Room</b></p><p><

40、;b>  Customer</b></p><p><b>  Lodger</b></p><p>  Reservation</p><p>  Unsubscribe</p><p><b>  CheckOut</b></p><p>  Clean

41、Order</p><p>  MealsOnWheels</p><p><b>  MOWBill</b></p><p><b>  MealOrder</b></p><p>  LodgerBill</p><p><b>  Food</b>

42、</p><p><b>  Order</b></p><p> ?。⊿QL語句見附錄5)</p><p><b>  視圖:</b></p><p><b>  Room_view</b></p><p>  Lodger_view</p>

43、;<p>  MealOrder_view</p><p>  LodgerBill_view</p><p><b>  Food_view</b></p><p>  OrderDetail_view</p><p><b>  索引:</b></p><p&g

44、t;<b>  PK_Lodger</b></p><p><b>  存儲(chǔ)過程:</b></p><p>  PROC_INSERT_Lodger</p><p>  PROC_INSERT_Reservation</p><p>  PROC_INSERT_Unsubscribe</p&g

45、t;<p>  PROC_INSERT_MealOrder</p><p>  PROC_INSERT_MoW</p><p>  PROC_INSERT_Orderdetail</p><p> ?。⊿QL語句見附錄6)</p><p><b>  觸發(fā)器:</b></p><p>

46、;  OrderDetailInsert on OrderDetail</p><p>  OrderDetailInser_2 on OrderDetail</p><p>  LodgerCheckOut on Lodger</p><p>  CheckBill1 on LodgerBill</p><p>  CheckBill2 o

47、n MoWBill</p><p> ?。⊿QL語句見附錄7)</p><p>  4.2.2 數(shù)據(jù)入庫</p><p>  4.2.3 數(shù)據(jù)庫測(cè)試</p><p>  右鍵proc_insert_lodger選擇test,測(cè)試數(shù)據(jù)為'021','胡亞娟','61374119741205503066&#

48、39;,41,0,0,1,'306'</p><p>  Lodger表成功更新:</p><p><b>  5.總結(jié)</b></p><p>  一、看似簡(jiǎn)單,其實(shí)不然</p><p>  以前沒有過課程設(shè)計(jì)的經(jīng)驗(yàn),作為第一次課程設(shè)計(jì)課,我抱著試試看的態(tài)度去寫,一開始看了只有這么幾個(gè)模塊是心里挺高興的

49、,但是當(dāng)我真正地去把一個(gè)操作寫成功時(shí),很多意想不到的情況發(fā)生了。有時(shí)候會(huì)為了一個(gè)操作不能調(diào)試成功而整個(gè)晚上都不能去安心做其他的作業(yè)。</p><p>  二、冷靜沉著、兢兢業(yè)業(yè)</p><p>  編程是一個(gè)很繁瑣的過程,要考慮到很多錯(cuò)誤轉(zhuǎn)移情況,在這期間會(huì)有很多以前不曾想過的問題出現(xiàn),次數(shù)多了,不免會(huì)有覺得做不下去的感覺。但是我從中發(fā)現(xiàn),只要一步一步調(diào)試、靜下心來看待問題,再復(fù)雜再微小的

50、問題都會(huì)迎刃而解,當(dāng)一個(gè)程序被調(diào)試出來時(shí),那時(shí)的快樂相比與任何困難都值得的。</p><p>  三、立足程序、回歸書本</p><p>  在著手寫程序時(shí)覺得思路一片混亂,無意間出現(xiàn)的問題會(huì)不知道怎么解決。這時(shí),需要回歸書本,書本是前人總結(jié)的經(jīng)驗(yàn),幾乎所有情況都會(huì)有解決方法。只有把書本“吃透”,在遇到問題是才會(huì)反應(yīng)快。 最后我要感謝我的同窗同學(xué),在此次課程設(shè)計(jì)過程中與他們探討深究,使我

51、受益頗多,在此,我表示衷心的感謝。</p><p><b>  6.附錄</b></p><p><b>  附錄1 </b></p><p>  create table Room</p><p>  (RoomNo varchar(10) not null,</p><p&g

52、t;  RoomType varchar(10),</p><p>  RoomPrice float,</p><p>  CleanCondition varchar(10),</p><p>  primary key (RoomNo));</p><p>  create table Customer</p><p

53、>  (Name varchar(20) not null,</p><p>  IDNo varchar(20) not null,</p><p>  Age int not null,</p><p>  primary key (IDNo));</p><p>  create table Lodger</p>&

54、lt;p>  (CtmNo varchar(10) not null primary key,</p><p>  Name varchar(20) not null,</p><p>  IDNo varchar(20) not null,</p><p><b>  Age int,</b></p><p> 

55、 DiningCost float,</p><p>  MoWCost float,</p><p><b>  Days int,</b></p><p>  RoomNo varchar(10),</p><p>  FOREIGN KEY (IDNo) REFERENCES Customer(IDNo),<

56、/p><p>  FOREIGN KEY (RoomNo) REFERENCES Room(RoomNo),</p><p>  check (Age>=18));</p><p>  create table Reservation</p><p>  (RNo varchar(10) not null primary key,</

57、p><p>  RName varchar(20) not null,</p><p>  RPhone varchar(20),</p><p>  RoomNo varchar(10) not null,</p><p>  RoomType varchar(10),</p><p>  RoomPrice float

58、,</p><p>  FOREIGN KEY (RoomNo) REFERENCES Room(RoomNo));</p><p>  create table Unsubscribe</p><p>  (DNo varchar(10) not null primary key,</p><p>  DName varchar(20) n

59、ot null,</p><p>  DPhone varchar(20),</p><p>  RoomNo varchar(10) not null,</p><p>  RoomType varchar(10),</p><p>  RoomPrice float,</p><p>  FOREIGN KEY (

60、RoomNo) REFERENCES Room(RoomNo));</p><p>  create table CheckOut</p><p>  (CheckOutNo varchar(10) not null primary key,</p><p>  CtmNo varchar(10) not null,</p><p>  Ch

61、eckOutTotal float,</p><p>  FOREIGN KEY (CtmNo) REFERENCES Lodger(CtmNo));</p><p>  create table CleanOrder</p><p>  (CleanOrderNo varchar(10) not null,</p><p>  RoomNo

62、 varchar(10) not null,</p><p>  FOREIGN KEY (RoomNo) REFERENCES Room(RoomNo));</p><p>  create table MealsOnWheels</p><p>  (MoWNo varchar(10) not null primary key,</p><p

63、>  MoWOrderTime smalldatetime,</p><p>  CtmNo varchar(10) not null,</p><p>  ExpectTime smalldatetime,</p><p>  FOREIGN KEY (CtmNo) REFERENCES Lodger(CtmNo));</p><p>

64、;  create table MoWBill</p><p>  (MoWBillNo varchar(10) not null primary key,</p><p>  MoWNo varchar(10) not null,</p><p>  MoWBillTime smalldatetime,</p><p>  MoWBillT

65、otal float,</p><p>  CtmNo varchar(10) not null,</p><p>  FOREIGN KEY (CtmNo) REFERENCES Lodger(CtmNo));</p><p>  create table MealOrder</p><p>  (OrderNo varchar(10) n

66、ot null primary key,</p><p>  TableNo varchar(10) not null,</p><p>  OrderTime date,</p><p>  CtmNo varchar(10) not null,</p><p>  FOREIGN KEY (CtmNo) REFERENCES Lodger

67、(CtmNo));</p><p>  create table LodgerBill</p><p>  (LodgerBillNo varchar(10) not null,</p><p>  OrderNo varchar(10) not null,</p><p>  LodgerBillTime smalldatetime,<

68、;/p><p>  LodgerBillTotal float,</p><p>  CtmNo varchar(10) not null,</p><p>  FOREIGN KEY (CtmNo) REFERENCES Lodger(CtmNo));</p><p>  create table Food</p><p&g

69、t;  (FoodNo varchar(10) not null primary key,</p><p>  FoodName varchar(20) not null,</p><p>  FoodPrice float);</p><p>  create table OrderDetail</p><p>  (OrderNo var

70、char(10) not null,</p><p>  FoodNo varchar(10) not null,</p><p>  FoodNum int);</p><p><b>  附錄2 </b></p><p>  create view Lodger_view as</p><p>

71、;  select CtmNo,Name,RoomNo,Days,MoWCost,DiningCost</p><p>  from Lodger;</p><p>  create view Room_view as</p><p>  SELECT RoomNo, RoomType, RoomPrice, CleanCondition</p>

72、<p>  FROM Room;</p><p>  create view MealOrder_view as</p><p>  SELECT OrderNo, TableNo, OrderTime, CtmNo</p><p>  FROM MealOrder;</p><p>  create view LodgerBi

73、ll_view as</p><p>  SELECT LodgerBillNo, OrderNo, LodgerBillTime, LodgerBillTotal, CtmNo</p><p>  FROM LodgerBill;</p><p>  create view Food_view as</p><p>  SELECT

74、 FoodNo, FoodName, FoodPrice</p><p>  FROM Food;</p><p>  create view OrderDetail_view as</p><p>  SELECT OrderNo, FoodNo, FoodNum</p><p>  FROM OrderDetail;</p>

75、;<p><b>  附錄3 </b></p><p>  CREATE PROCEDURE PROC_INSERT_Lodger</p><p>  @CtmNo varchar(10),</p><p>  @Name varchar(20),</p><p>  @IDNo varchar(20),&

76、lt;/p><p><b>  @Age int,</b></p><p>  @DiningCost float,</p><p>  @MoWCost float,</p><p>  @Days int,</p><p>  @RoomNo varchar(10)</p><

77、p><b>  AS</b></p><p>  insert Lodger (CtmNo,Name,IDNo,Age,DiningCost,MoWCost,Days,RoomNo)</p><p>  Values('C'+@CtmNo,@Name,@IDNo,@Age,@DiningCost,@MoWCost,@Days,@RoomNo)&l

78、t;/p><p>  insert CheckOut</p><p>  values ('CO'+@CtmNo,'C'+@CtmNo,0)</p><p><b>  GO</b></p><p>  CREATE PROCEDURE PROC_INSERT_MealOrder</p&

79、gt;<p>  @OrderNo varchar(10),</p><p>  @TableNo varchar(10),</p><p>  @OrderTime smalldatetime,</p><p>  @CtmNo varchar(10)</p><p><b>  AS</b></p

80、><p>  insert MealOrder(OrderNo,TableNo,OrderTime,CtmNo)</p><p>  values('O'+@OrderNo,'T'+@TableNo,@OrderTime,'C'+@CtmNo)</p><p>  insert LodgerBill(LodgerBillN

81、o,OrderNo,LodgerBillTime,LodgerBillTotal,CtmNo)</p><p>  values('LB'+@OrderNo,'O'+@OrderNo,DATEADD(hh,1,@OrderTime),0,'C'+@CtmNo)</p><p><b>  GO</b></p>

82、<p>  CREATE PROCEDURE PROC_INSERT_MoW</p><p>  @MoWNo varchar(10),</p><p>  @MoWOrderTime smalldatetime,</p><p>  @CtmNo varchar(10)</p><p><b>  AS</b&

83、gt;</p><p>  insert MealsOnWheels(MoWNo,MoWOrderTime,CtmNo,ExpectTime)</p><p>  values('M'+@MoWNo,@MoWOrderTime,'C'+@CtmNo,DATEADD(hh,1,@MoWOrderTime))</p><p>  inse

84、rt MoWBill(MoWBillNo,MoWNo,MoWBillTime,MoWBillTotal,CtmNo)</p><p>  values('MB'+@MoWNo,'M'+@MoWNo,DATEADD(hh,1,@MoWOrderTime),0,'C'+@CtmNo)</p><p><b>  GO</b>

85、</p><p>  CREATE PROCEDURE PROC_INSERT_Reservation</p><p>  @RNo varchar(10),</p><p>  @RName varchar(20),</p><p>  @RPhone varchar(20),</p><p>  @RoomNo v

86、archar(10),</p><p>  @RoomType varchar(10),</p><p>  @RoomPrice float</p><p><b>  AS</b></p><p>  insert Reservation(RNo,RName,RPhone,RoomNo,RoomType,RoomPr

87、ice)</p><p>  Values(@RNo,@RName,@RPhone,@RoomNo,@RoomType,@RoomPrice)</p><p><b>  GO</b></p><p>  CREATE PROCEDURE PROC_INSERT_Unsubscribe</p><p>  @DNo va

88、rchar(10),</p><p>  @DName varchar(20)</p><p><b>  as</b></p><p>  declare @RPhone varchar(20),</p><p>  @RoomNo varchar(10),</p><p>  @RoomTyp

89、e varchar(10),</p><p>  @RoomPrice float</p><p>  select @RPhone=RPhone,@RoomNo=RoomNo,@RoomType=RoomType,@RoomPrice=RoomPrice from Reservation where RName=@DName</p><p>  insert Un

90、subscribe(DNo,DName,DPhone,RoomNo,RoomType,RoomPrice)</p><p>  Values(@DNo,@DName,@RPhone,@RoomNo,@RoomType,@RoomPrice)</p><p><b>  GO</b></p><p>  CREATE PROCEDURE PROC

91、_INSERT_OrderDetail</p><p>  @orderno varchar(10),</p><p>  @foodno varchar(10),</p><p>  @foodnum int</p><p><b>  AS</b></p><p>  insert Order

92、Detail(OrderNo,FoodNo,FoodNum)</p><p>  values (@orderno,@foodno,@foodnum)</p><p><b>  GO</b></p><p><b>  附錄4 </b></p><p>  create trigger Order

93、DetailInsert</p><p>  on OrderDetail</p><p>  for insert,update,delete</p><p><b>  as</b></p><p>  declare @orderno varchar(10), @foodno varchar(10), @foodn

94、um int</p><p>  declare @foodprice float, @total1 float, @temp1 float</p><p>  declare c1 cursor for select OrderNo,FoodNo,FoodNum from OrderDetail</p><p><b>  open c1</b&g

95、t;</p><p>  update LodgerBill</p><p>  set LodgerBillTotal=0</p><p>  fetch next from c1 into @orderno,@foodno,@foodnum</p><p>  while(@@FETCH_STATUS=0)</p><

96、p><b>  begin</b></p><p>  select @foodprice=FoodPrice from Food where FoodNo=@foodno</p><p>  select @total1=LodgerBillTotal from LodgerBill where OrderNo=@orderno</p><

97、p>  set @temp1=@foodprice*@foodnum</p><p>  set @total1=@total1+@temp1</p><p>  update LodgerBill</p><p>  set LodgerBillTotal=@total1</p><p>  where OrderNo=@ordern

98、o</p><p>  fetch next from c1 into @orderno,@foodno,@foodnum</p><p><b>  end</b></p><p><b>  close c1</b></p><p>  deallocate c1</p><

99、p><b>  go</b></p><p>  create trigger OrderDetailInsert_2</p><p>  on OrderDetail</p><p>  for insert,update,delete</p><p><b>  as</b></p&

100、gt;<p>  declare @mowno varchar(10), @foodno varchar(10), @foodnum int</p><p>  declare @foodprice float, @total2 float, @temp2 float</p><p>  declare c2 cursor for select OrderNo,FoodNo,

101、FoodNum from OrderDetail</p><p><b>  open c2</b></p><p>  update MoWBill</p><p>  set MoWBillTotal=0</p><p>  fetch next from c2 into @mowno,@foodno,@foodnu

102、m</p><p>  while(@@FETCH_STATUS=0)</p><p><b>  begin</b></p><p>  select @foodprice=FoodPrice from Food where FoodNo=@foodno</p><p>  select @total2=MoWBill

103、Total from MoWBill where MoWNo=@mowno</p><p>  set @temp2=@foodprice*@foodnum</p><p>  set @total2=@total2+@temp2</p><p>  update MoWBill</p><p>  set MoWBillTotal=@tot

104、al2</p><p>  where MoWNo=@mowno</p><p>  fetch next from c2 into @mowno,@foodno,@foodnum</p><p><b>  end</b></p><p><b>  close c2</b></p>

105、<p>  deallocate c2</p><p><b>  go</b></p><p>  create trigger CheckBill1</p><p>  on LodgerBill</p><p>  for update</p><p><b>  as

106、</b></p><p>  declare @total float, @ctmno varchar(10)</p><p>  declare c3 cursor for select LodgerBillTotal,CtmNo from LodgerBill</p><p><b>  open c3</b></p>

107、;<p>  fetch next from c3 into @total,@ctmno</p><p>  while(@@FETCH_STATUS=0)</p><p><b>  begin</b></p><p>  update Lodger</p><p>  set DiningCost=@t

108、otal</p><p>  where CtmNo=@ctmno</p><p>  fetch next from c3 into @total,@ctmno</p><p><b>  end</b></p><p><b>  close c3</b></p><p>

109、;  deallocate c3</p><p><b>  go</b></p><p>  create trigger CheckBill2</p><p>  on MoWBill</p><p>  for update</p><p><b>  as</b>&l

110、t;/p><p>  declare @total float, @ctmno varchar(10)</p><p>  declare c4 cursor for select MoWBillTotal,CtmNo from MoWBill</p><p><b>  open c4</b></p><p>  fetc

111、h next from c4 into @total,@ctmno</p><p>  while(@@FETCH_STATUS=0)</p><p><b>  begin</b></p><p>  update Lodger</p><p>  set MoWCost=@total</p><p

112、>  where CtmNo=@ctmno</p><p>  fetch next from c4 into @total,@ctmno</p><p><b>  end</b></p><p><b>  close c4</b></p><p>  deallocate c4</

113、p><p><b>  go</b></p><p>  create trigger LodgerCheckOut</p><p><b>  on Lodger</b></p><p>  for update</p><p><b>  as</b>&

114、lt;/p><p>  declare @cus varchar(10), @cost1 float, @cost2 float</p><p>  declare c5 cursor for select CtmNo,DiningCost,MoWCost from Lodger</p><p><b>  open c5</b></p>

115、;<p>  fetch next from c5 into @cus,@cost1,@cost2</p><p>  while(@@FETCH_STATUS=0)</p><p><b>  begin</b></p><p>  update CheckOut</p><p>  set CheckO

116、utTotal=@cost1+@cost2</p><p>  where CtmNo=@cus</p><p>  fetch next from c5 into @cus,@cost1,@cost2</p><p><b>  end</b></p><p><b>  close c5</b>

117、</p><p>  deallocate c5</p><p><b>  go</b></p><p><b>  附錄5</b></p><p>  create table Room</p><p>  (RoomNo varchar2(20) not null,&l

118、t;/p><p>  RoomType varchar2(20),</p><p>  RoomPrice number,</p><p>  CleanCondition varchar2(20),</p><p>  primary key (RoomNo));</p><p>  create table Custo

119、mer</p><p>  (Name varchar2(40) not null,</p><p>  IDNo varchar2(40) not null,</p><p>  Age number not null,</p><p>  primary key (IDNo));</p><p>  create

120、table Lodger</p><p>  (CtmNo varchar2(20) not null primary key,</p><p>  Name varchar2(40) not null,</p><p>  IDNo varchar2(40) not null,</p><p>  Age number,</p>

121、<p>  DiningCost number,</p><p>  MoWCost number,</p><p>  Days number,</p><p>  RoomNo varchar2(20),</p><p>  FOREIGN KEY (IDNo) REFERENCES Customer(IDNo),</

122、p><p>  FOREIGN KEY (RoomNo) REFERENCES Room(RoomNo),</p><p>  check (Age>=18));</p><p>  create table Reservation</p><p>  (RNo varchar2(20) not null primary key,</

123、p><p>  RName varchar2(40) not null,</p><p>  RPhone varchar2(40),</p><p>  RoomNo varchar2(20) not null,</p><p>  RoomType varchar2(20),</p><p>  RoomPrice n

124、umber,</p><p>  FOREIGN KEY (RoomNo) REFERENCES Room(RoomNo));</p><p>  create table Unsubscribe</p><p>  (DNo varchar2(20) not null primary key,</p><p>  DName varchar

125、2(40) not null,</p><p>  DPhone varchar2(40),</p><p>  RoomNo varchar2(20) not null,</p><p>  RoomType varchar2(20),</p><p>  RoomPrice number,</p><p>  FO

126、REIGN KEY (RoomNo) REFERENCES Room(RoomNo));</p><p>  create table CheckOut</p><p>  (CheckOutNo varchar2(20) not null primary key,</p><p>  CtmNo varchar2(20) not null,</p>

127、<p>  CheckOutTotal number,</p><p>  FOREIGN KEY (CtmNo) REFERENCES Lodger(CtmNo));</p><p>  create table CleanOrder</p><p>  (CleanOrderNo varchar2(20) not null,</p>&l

128、t;p>  RoomNo varchar2(20) not null,</p><p>  FOREIGN KEY (RoomNo) REFERENCES Room(RoomNo));</p><p>  create table MealsOnWheels</p><p>  (MoWNo varchar2(20) not null primary key,

129、</p><p>  MoWOrderTime date,</p><p>  CtmNo varchar2(20) not null,</p><p>  ExpectTime date,</p><p>  FOREIGN KEY (CtmNo) REFERENCES Lodger(CtmNo));</p><p>

130、;  create table MoWBill</p><p>  (MoWBillNo varchar2(20) not null primary key,</p><p>  MoWNo varchar2(20) not null,</p><p>  MoWBillTime date,</p><p>  MoWBillTotal nu

131、mber,</p><p>  CtmNo varchar2(20) not null,</p><p>  FOREIGN KEY (CtmNo) REFERENCES Lodger(CtmNo));</p><p>  create table MealOrder</p><p>  (OrderNo varchar2(20) not n

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲(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)論