電影院售票數(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頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

計算機實驗報告課程:ORACLE班級:學號:姓名:儀器編號實驗日期實驗:四電影院售票數(shù)據(jù)庫系統(tǒng)設計實驗目的:進一步熟悉oracle的各種操作。能夠在實際的實例中靈活運用學到的有關知識。實驗環(huán)境:裝有oracle10g的計算機且操作系統(tǒng)為Windowsxp。實驗內(nèi)容:(可用附頁)見附頁實驗結(jié)果:(可用附頁)見附頁

實驗內(nèi)容:電影院售票數(shù)據(jù)庫系統(tǒng)設計數(shù)據(jù)庫設計是對于一個給定的應用環(huán)境,構(gòu)建一個最優(yōu)的數(shù)據(jù)庫模式,并據(jù)此建立既能有效、完整、安全存儲數(shù)據(jù)的數(shù)據(jù)庫,又能滿足多個用戶的信息要求和處理要求的應用系統(tǒng),本數(shù)據(jù)庫設計就是為了能夠在很好的保存商品進銷存的所有數(shù)據(jù)而進行設計。(結(jié)合數(shù)據(jù)庫設計和你要完成的系統(tǒng)進行陳述)。數(shù)據(jù)庫設計的過程包含需求分析、概念結(jié)構(gòu)設計、邏輯結(jié)構(gòu)設計、物理結(jié)構(gòu)設計、應用的設計。下面就按照數(shù)據(jù)庫設計的過程進行逐一陳述需求分析系統(tǒng)設計的意義電影院售票系統(tǒng)的數(shù)據(jù)庫設計適用于電影院的售票,訂票,退票服務。利用數(shù)據(jù)庫實現(xiàn)規(guī)范、方便的管理。從而提升工作的效率,達到增長營利的效果。數(shù)據(jù)庫對象介紹余票表售票表訂票表退票表電影票綜合表系統(tǒng)相關對象電影院售票人員及管理人員,消費者(購票者)數(shù)據(jù)庫對象分析余票表—>>可以出售給消費者的所有電影票的表單售票表—>>已經(jīng)在售票處出售給消費者電影票的表單訂票表—>>通過電話、網(wǎng)絡等途徑訂購電影票的表單退票表—>>消費者(因某些原因)要求退還金錢的表單電影票綜合表—>>包括電影院所有的電影票的表單功能分析電影院的售票人員根據(jù)余票表單出售電影票,然后在售票表中記錄。通過訂票表相應的在余票表中更新記錄,減少一張票數(shù)。通過退票表相應的在余票表中更新記錄,增加一張票數(shù)。根據(jù)表單實現(xiàn)查看總營利的功能查看已經(jīng)和未拿走訂票的情況查看當日上映電影及當日營利查看已過期的未出售電影表單…………進階分析每張電影票都有自己唯一的編號ID,同一類型的電影票用片名來區(qū)分(同一片名的不同影片在片名后加入文字說明區(qū)分。)有一個電影綜合表,可以根據(jù)某個元素查出其他的各元素。如:根據(jù)片名可以查看所有該影片的電影票的每張編號,座位,票價,片映時間,該影片的票數(shù)等其他各種信息。概念結(jié)構(gòu)設計各對象屬性余票表:編號,片名,片映日期,影片時間,影廳,座位,票價,余票數(shù)。售票表:編號,片名,片映日期,影片時間,影廳,座位,票價,實收,找零,售票日期,售票數(shù)。訂票表:編號,片名,片映日期,影片時間,影廳,座位,票價,手續(xù)費,售票日期,取票時間。退票表:編號,片名,片映日期,票價,售票日期,手續(xù)費,實退金額。電影票綜合表:編號,片名,片映日期,影片時間,影廳,座位,票價,總票數(shù)。(編號為每張電影票的區(qū)別號碼,片名來區(qū)別不同的電影,影片時間單位為分鐘)畫出E-r圖局部e-r圖座位影廳影片時間片映日期座位影廳影片時間片映日期票價片名票價片名余票數(shù)余票表編號余票數(shù)余票表編號座位影廳影片時間片映日期座位影廳影片時間片映日期票價片名票價片名售票表實收編號售票表實收編號售票數(shù)售票日期找零售票數(shù)售票日期找零座位影廳影片時間片映日期座位影廳影片時間片映日期票價片名票價片名取票時間售票日期訂票表編號取票時間售票日期訂票表編號手續(xù)費手續(xù)費手續(xù)費票價售票日期片映日期手續(xù)費票價售票日期片映日期實收金額片名實收金額片名退票表編號退票表編號影廳片名片映日期影廳片名片映日期總票數(shù)座位編號總票數(shù)座位編號影片時間電影票綜合表票價影片時間電影票綜合表票價邏輯結(jié)構(gòu)設計表的設計余票表(remain_ticket):列名列名表示數(shù)據(jù)類型寬度約束編號movie_idnumber20主鍵片名movie_namevarchar2100片映日期movie_datedate影片時間movie_timenumber影廳movie_roomvarchar220座位movie_seatvarchar220票價movie_pricenumber20余票數(shù)remain_countnumber20售票表(sale_ticket):列名列名表示數(shù)據(jù)類型寬度約束編號movie_idnumber20主鍵片名movie_namevarchar2100片映日期movie_datedate影片時間movie_timenumber影廳movie_roomvarchar220座位movie_seatvarchar220票價movie_pricenumber20實收movie_price_getnumber20找零movie_changenumber20售票日期movie_saledatedate售票數(shù)sale_countnumber20訂票表(book_ticket):列名列名表示數(shù)據(jù)類型寬度約束編號movie_idnumber20主鍵片名movie_namevarchar2100片映日期movie_datedate影片時間movie_timenumber影廳movie_roomvarchar220座位movie_seatvarchar220票價movie_pricenumber20手續(xù)費movie_poundagenumber20售票日期movie_saledatedate取票時間movie_picktimedate退票表(back_ticket):列名列名表示數(shù)據(jù)類型寬度約束編號movie_idnumber20主鍵片名movie_namevarchar2100片映日期movie_datedate票價movie_pricenumber20售票日期movie_saledatedate手續(xù)費movie_poundagenumber20實退金額movie_refundnumber20電影票綜合表(movie_ticket):列名列名表示數(shù)據(jù)類型寬度約束編號movie_idnumber20主鍵片名movie_namevarchar2100片映日期movie_datedate影廳movie_roomvarchar220座位movie_seatvarchar220票價movie_pricenumber20總票數(shù)all_countnumber20影片時間movie_timenumber四、物理結(jié)構(gòu)設計創(chuàng)建表空間createtablespacemovie_tbsdatafile'D:\app\other_tablespace\movie_tbs01.dbf'size32m;在oracle中創(chuàng)建用戶movie并使用上面的表空間createusermovieidentifiedbymoviedefaulttablespacemovie_tbs;給movie用戶授權并使用movie用戶完成下列步驟grantcreatesession,dbatomovie;創(chuàng)建各對象表余票表:createtableremain_ticket(movie_idnumber(20)PRIMARYKEY,movie_namevarchar2(100),movie_datedate,movie_timenumber(20),movie_roomvarchar2(20),movie_seatvarchar2(20),movie_pricenumber(20),remain_countnumber(20));售票表:createtablesale_ticket(movie_idnumber(20)PRIMARYKEY,movie_namevarchar2(100),movie_datedate,movie_timenumber(20),movie_roomvarchar2(20),movie_seatvarchar2(20),movie_pricenumber(20),movie_price_getnumber(20),movie_changenumber(20),movie_saledatedate,sale_countnumber(20));訂票表:createtablebook_ticket(movie_idnumber(20)PRIMARYKEY,movie_namevarchar2(100),movie_datedate,movie_timenumber(20),movie_roomvarchar2(20),movie_seatvarchar2(20),movie_pricenumber(20),movie_poundagenumber(20),movie_saledatedate,movie_picktimedate);退票表:createtableback_ticket(movie_idnumber(20)PRIMARYKEY,movie_namevarchar2(100),movie_datedate,movie_pricenumber(20),movie_saledatedate,movie_poundagenumber(20),movie_refundnumber(20));電影綜合表:createtablemovie_ticket(movie_idnumber(20)PRIMARYKEY,movie_namevarchar2(100),movie_datedate,movie_roomvarchar2(20),movie_seatvarchar2(20),movie_pricenumber(20),all_countnumber(20),movie_timenumber(20));創(chuàng)建視圖根據(jù)余票表中電影片名、余票數(shù)、票價和電影綜合表中的總票數(shù)創(chuàng)建銷售視圖createviewsale_conditionasselectr.movie_name,r.movie_price,r.remain_count,m.all_countfromremain_ticketr,movie_ticketm;根據(jù)售票表中的片名、票價、售票數(shù)創(chuàng)建營利視圖createviewget_condition(片名,票價,售票數(shù),收益)asselectmovie_name,movie_price,sale_count,movie_price*sale_countfromsale_ticket;訂票表中已經(jīng)拿走票的視圖createviewtake_condition(編號,片名,片映時間,售票時間,取票時間)asselectmovie_id,movie_name,movie_date,movie_saledate,to_number(to_char(movie_picktime,'yyyy-mon-dd,hh24:mi:ss'))frombook_ticketwhereto_number(to_char(movie_picktime,'yyyy-mon-dd,hh24:mi:ss'))<=to_number(to_char(sysdate,'yyyy-mon-dd,hh24:mi:ss'));訂票表中未拿走票的視圖createviewuntake_conditionasselectmovie_id,movie_name,movie_date,movie_saledate,movie_picktimefrombook_ticketwheremovie_picktime=null;查看當天上映電影的表單(片名、片映時間、影片時間、票價、余票數(shù))createviewtoday_movie(片名,片映時間,影片時間,票價,余票數(shù))asselectmovie_name,to_char(movie_date,'yyyy-mon-dd'),movie_time,movie_price,remain_countfromremain_ticketwhereto_char(movie_date,'yyyy-mon-dd')=to_char(sysdate,'yyyy-mon-dd');查看電影票銷售排行(片名、片映時間、票價、總票數(shù)-余票數(shù)、票價*(總票數(shù)-余票數(shù)))createviewsale_range(片名,片映時間,票價,售票數(shù),收益)asselectr.movie_name,r.movie_date,r.movie_price,m.all_count-r.remain_count,r.movie_price*(m.all_count-r.remain_count)fromremain_ticketr,movie_ticketm;查看已過期的未出售的電影表單(片名、片映時間、票價、余票數(shù))createviewunsale_condition(片名,片映時間,票價,余票數(shù))asselectmovie_name,to_number(to_char(movie_date,'yyyy-mon-dd,hh24:mi:ss')),movie_price,remain_countfromremain_ticketwhereto_number(to_char(movie_date,'yyyy-mon-dd,hh24:mi:ss'))<=to_number(to_char(sysdate,'yyyy-mon-dd,hh24:mi:ss'));創(chuàng)建觸發(fā)器訂票表+1的同時,余票表-1createtriggerbook_ticket_addafterinsertofmovie_idonbook_ticketforeachrowbegindeletefromremain_ticketwhereremain_ticket.movie_id=book_ticket.movie_id;end;退票表+1的同時,余票表+1,售票表-1createtriggerback_ticket_addafterinsertofmovie_idonback_ticketbforeachrowbeginselect m.movie_id,m.movie_name,m.movie_date,m.movie_time,m.movie _room,m.movie_seat,m.movie_pricefrommovie_ticketwhereb.movie_id=m.movie_idinsertintoremain_ticketvalues(m.movie_id,m.movie_name,m.movie_date,m.movie_time,m.movi e_room,m.movie_seat,m.movie_price,remain_ticket=remain_ticke t+1);deletefromsale_ticketwheresale_ticket.movie_id=b.movie_id;end;電影綜合表+1的同時,余票表+1createtriggermovie_ticket_addafterinsertonmovie_ticketmbegininsertintoremain_ticket(movie_id,movie_name,movie_date,movie_time,movie_room,movi e_seat,movie_price,movie_count)values(m.movie_id,m.movie_name,m.movie_date,m.movie_time, m.movie_room,m.movie_seat,m.movie_price,m.movie_count+1);end;創(chuàng)建過程輸入一個元素,輸出整列的其他信息createorreplaceproceduremovie_id_lookup(p_movie_idinnumber,p_movie_nameoutmovie_ticket.movie_name%type,p_movie_dateoutmovie_ticket.movie_date%type,p_movie_roomoutmovie_ticket.movie_room%type,p_movie_seatoutmovie_ticket.movie_seat%type,p_movie_priceoupricemovie_ticket.movie_price%type,p_all_countoutmovie_ticket.all_count%type,p_movie_timeoutmovie_ticket.all_count%type)asbeginselect movie_name,movie_date,movie_room,movie_seat,movie_price,mo vie_time,all_countfrommovie_ticketwheremovie_id=p_movie_id;exceptionwhenno_data_foundthenp_movie_name:='null';p_movie_date:='null';p_movie_room:='null';p_movie_seat:='null';p_movie_price:='null';p_movie_time:='null';p_all_count:='null';endmovie_id_lookup;variablenamevarchar2(100);variablemovie_datedate;variableroomvarchar2(20);variableseatvarchar2(20);variablenamevarchar2(100);variablepricenumber(20);variablecountnum

溫馨提示

  • 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

提交評論