數(shù)據(jù)庫大作業(yè)(火車訂票系統(tǒng))_第1頁
數(shù)據(jù)庫大作業(yè)(火車訂票系統(tǒng))_第2頁
數(shù)據(jù)庫大作業(yè)(火車訂票系統(tǒng))_第3頁
數(shù)據(jù)庫大作業(yè)(火車訂票系統(tǒng))_第4頁
數(shù)據(jù)庫大作業(yè)(火車訂票系統(tǒng))_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

數(shù)據(jù)庫大作業(yè)(火車訂票系統(tǒng))數(shù)據(jù)庫大作業(yè)(火車訂票系統(tǒng))數(shù)據(jù)庫大作業(yè)(火車訂票系統(tǒng))數(shù)據(jù)庫大作業(yè)(火車訂票系統(tǒng))編制僅供參考審核批準(zhǔn)生效日期地址:電話:傳真:郵編:中國地質(zhì)大學(xué)(北京)數(shù)據(jù)庫系統(tǒng)概論火車票網(wǎng)上訂票系統(tǒng)實驗報告小組成員:董威、韋飛陽、李建同、劉厚今學(xué)號:20、25、19、13聯(lián)系方式:(董威)使用數(shù)據(jù)庫管理系統(tǒng):SQLserver2012指導(dǎo)老師:宋莉2013年12月28日目錄TOC\o"1-3"\h\u205031.小組成員及分工 1312462.需求分析 116768功能需求 118134查詢 124773訂票 17766退票 126616注冊 122210用戶登陸 128480修改密碼 124417添加車次 127037數(shù)據(jù)需求 125789性能需求 226834準(zhǔn)確性和及時性 229544易用性 227034安全性 230167數(shù)據(jù)流圖 212950頂層數(shù)據(jù)流圖 236171層數(shù)據(jù)流圖 2254953.概念結(jié)構(gòu)設(shè)計 34771系統(tǒng)結(jié)構(gòu)簡述 337數(shù)據(jù)處理 327865生成E-R圖 3224024邏輯結(jié)構(gòu)設(shè)計 521483關(guān)系模式 5268195物理結(jié)構(gòu)設(shè)計 5101466數(shù)據(jù)庫實施 720467建立數(shù)據(jù)庫 7912建立基本表 727005建立索引 1025114創(chuàng)建視圖 1113058創(chuàng)建存儲過程 118767創(chuàng)建觸發(fā)器 1214364插入數(shù)據(jù) 1228536關(guān)系圖 1327191訂購車票 1320165退票 14124877實驗小結(jié) 141.小組成員及分工董威:數(shù)據(jù)庫的實施,即在查詢分析器下編寫代碼建立數(shù)據(jù)庫,創(chuàng)建基本表,建立 基本表之間的關(guān)系、索引,創(chuàng)建存儲過程等工 作。韋飛陽:主要負(fù)責(zé)邏輯結(jié)構(gòu)的設(shè)計,即確定關(guān)系模式。李建同:只要負(fù)責(zé)物理結(jié)構(gòu)的設(shè)計,即確定各個基本表之間的 關(guān)系,確定主外鍵。劉厚今:需求分析模塊,主要負(fù)責(zé)尋找需求,繪制數(shù)據(jù)流圖。2.需求分析功能需求查詢:用戶、管理員都可以對車次進行查詢:可以按照發(fā)車車次進行查 詢;可以按照出發(fā)地、目的地進行查詢;可以按照類車類型、座 位類型查詢。車次信息包括:車次ID,車號,出發(fā)地,目的地,列車類型,座 位類型,票價,票數(shù),車次信息只允許用戶查詢,不能修改。訂票:用戶登陸后,通過訂票系統(tǒng),根據(jù)自己你的需求找到自己的車次, 輸入要預(yù)訂的票數(shù)進行訂票。要求訂票記錄應(yīng)包括:訂票記錄ID, 車次ID,用戶ID,訂票數(shù)量。退票:用戶登錄后,通過退票系統(tǒng),找到自己的訂票信息,輸入要退的票 數(shù)進行退票。注冊:想要訂票的用戶必須先注冊然后登陸訂票。用戶信息包括:用戶 ID,用戶名,密碼,郵箱。用戶登陸:主要完成用戶和管理員的登陸。用戶想訂票必須登陸后才能進 行訂票,如果沒有注冊的用戶應(yīng)該與注冊頁面相連接。修改密碼:用戶和管理員登陸后可以修改個人信息。添加車次:管理員登陸后可以添加新的車次。數(shù)據(jù)需求信息輸入信息處理信息輸出用戶輸入所需車次檢索系統(tǒng)數(shù)據(jù)庫符合用戶需求的車次及相關(guān)信息用戶管理員輸入用戶名、密碼進行登錄檢索系統(tǒng)數(shù)據(jù)庫成功登陸后的首頁用戶輸入個人信息進行注冊將輸入信息存入系統(tǒng)數(shù)據(jù)庫操作反饋用戶輸入訂票數(shù)量操作反饋檢索系統(tǒng)數(shù)據(jù)庫已得到訂票記錄,添加用戶請求的訂票記錄,更新系統(tǒng)數(shù)據(jù)庫用戶輸入退票數(shù)量檢索系統(tǒng)數(shù)據(jù)庫已得到訂票記錄,刪除用戶請求的訂票記錄,更新系統(tǒng)數(shù)據(jù)庫操作反饋用戶管理員輸入新密碼更新系統(tǒng)數(shù)據(jù)庫操作反饋管理員輸入添加車次信息將新信息存入數(shù)據(jù)庫操作反饋性能需求準(zhǔn)確性和及時性系統(tǒng)應(yīng)能及時準(zhǔn)確的根據(jù)用戶權(quán)限及所輸入的信息作出響應(yīng)。由于查詢功 能對于用戶來講很重要,因為這直接影響了用戶的訂票決策,所以系統(tǒng)的 準(zhǔn)確性和及時性很重要。易用性本系統(tǒng)是針對用戶直接開放的,所以應(yīng)該提供良好的接口。安全性 網(wǎng)上訂票的數(shù)據(jù)是很重要的信息,系統(tǒng)應(yīng)該保證用戶的權(quán)限,對于車次的 信息不能更改。同時還應(yīng)該保證管理人員進行正常的維護、更新等工作, 保證數(shù)據(jù)的一致性。數(shù)據(jù)流圖頂層數(shù)據(jù)流圖1層數(shù)據(jù)流圖3.概念結(jié)構(gòu)設(shè)計系統(tǒng)結(jié)構(gòu)簡述本系統(tǒng)包括六個實體:訂票人,訂票單信息,車票信息,車次信息,操作員,余票信息。訂票人與訂票單、訂票單與車票信息這兩個關(guān)系是一對一的聯(lián)系;車票信息與車次信息、 訂票單信息與操作員這兩個關(guān)系是1對多的聯(lián)系。數(shù)據(jù)處理查詢所有訂票人信息:輸入:身份證號輸出:訂票單號,訂票人身份證號,訂單時間,付款取票與否,車次號,車票號, 票價,員工號。查詢訂票人的已定車票的信息:輸入:身份證號輸出:車票號,始發(fā)站,車次號,發(fā)車時間,終點站,車票種類。查詢某一車上乘坐的乘客的信息:輸入:車次號 輸出:姓名,身份證號,聯(lián)系電話,目的城市,始發(fā)城市。查詢余票數(shù)量輸入:乘車區(qū)間和車次號輸出:余票數(shù)量。生成E-R圖始發(fā)站目的站訂票人始發(fā)站目的站訂票人聯(lián)系電話聯(lián)系電話姓名姓名11n1n11111出發(fā)日期余票張數(shù)出發(fā)站目的站車次號余票信息查詢終點站車次號始發(fā)站途徑車站票價員工號車次信息屬于車票種類發(fā)車時間訂單號車票號始發(fā)站終點站車廂號座位號取票與否車票信息屬于訂票點號姓名電話性別票價操作員操作訂單時間車票號員工號身份證號車次號訂單號訂單號訂票信息屬于身份證號 11n1n11111出發(fā)日期余票張數(shù)出發(fā)站目的站車次號余票信息查詢終點站車次號始發(fā)站途徑車站票價員工號車次信息屬于車票種類發(fā)車時間訂單號車票號始發(fā)站終點站車廂號座位號取票與否車票信息屬于訂票點號姓名電話性別票價操作員操作訂單時間車票號員工號身份證號車次號訂單號訂單號訂票信息屬于身份證號車票種類車次號訂票人表(身份證車票種類車次號訂票人表(身份證號,姓名,聯(lián)系電話,始發(fā)城市,目的城市,訂單號)操作員表(員工號,訂票點號,姓名,性別,電話)車次信息表(車次號,始發(fā)站,終點站,途徑站)訂票單表(訂單號,身份證號,訂單時間,付款取票與否,車次號,車票號,票價,員工號)車票信息表(車票號,車次號,始發(fā)站,發(fā)車時間,終點站,車票種類,訂單號,車廂號,座位號)說明:車票種類為:“無座”或“硬座”或“硬臥”或“軟臥”車次號訂票人表(身份證號,姓名,聯(lián)系電話,始發(fā)城市,目的城市,訂單號)操作員表(員工號,訂票點號,姓名,性別,電話)車次信息表(車次號,始發(fā)站,終點站,途徑站)訂票單表(訂單號,身份證號,訂單時間,付款取票與否,車次號,車票號,票價,員工號)車票信息表(車票號,車次號,始發(fā)站,發(fā)車時間,終點站,車票種類,訂單號,車廂號,座位號)說明:車票種類為:“無座”或“硬座”或“硬臥”或“軟臥”車次號訂票人表(身份證號,姓名,聯(lián)系電話,始發(fā)城市,目的城市,訂單號)操作員表(員工號,訂票點號,姓名,性別,電話)車次信息表(車次號,始發(fā)站,終點站,途徑站)訂票單表(訂單號,身份證號,訂單時間,付款取票與否,車次號,車票號,票價,員工號)車票信息表(車票號,車次號,始發(fā)站,發(fā)車時間,終點站,車票種類,訂單號,車廂號,座位號)說明:車票種類為:“無座”或“硬座”或“硬臥”或“軟臥”車次號訂票人表(身份證號,姓名,聯(lián)系電話,始發(fā)城市,目的城市,訂單號)操作員表(員工號,訂票點號,姓名,性別,電話)車次信息表(車次號,始發(fā)站,終點站,途徑站)訂票單表(訂單號,身份證號,訂單時間,付款取票與否,車次號,車票號,票價,員工號)車票信息表(車票號,車次號,始發(fā)站,發(fā)車時間,終點站,車票種類,訂單號,車廂號,座位號)說明:車票種類為:“無座”或“硬座”或“硬臥”或“軟臥”4邏輯結(jié)構(gòu)設(shè)計關(guān)系模式訂票人表(身份證號,姓名,聯(lián)系電話,始發(fā)城市,目的城市,訂單號)操作員表(員工號,訂票點號,姓名,性別,電話)車次信息表(車次號,始發(fā)站,終點站,途徑站)訂票單表(訂單號,身份證號,訂單時間,付款取票與否,車次號,車票號,票價, 員工號)車票信息表(車票號,車次號,始發(fā)站,發(fā)車時間,終點站,車票種類,訂單號, 車廂號,座位號) 說明:車票種類為:“無座”或“硬座”或“硬臥”或“軟臥”余票信息表(車次號,車票種類,出發(fā)站,目的站,出發(fā)時間)5物理結(jié)構(gòu)設(shè)計訂票人表字段類型特殊屬性身份證char(18)主鍵,非空姓名char(10)NOTNULL聯(lián)系電話varchar(12)NOTNULL始發(fā)城市varchar(10)NOTNULL目的城市varchar(10)NOTNULL訂單號char(20)外鍵訂票單表字段類型特殊屬性訂單號char(20)主鍵身份證號char(18)外鍵訂票時間datetimeNOTNULL付款取票與否char(2)NOTNULL,默認(rèn)‘是’或“否”車次號varchar(10)LIKE‘[A-Z]%’車票號char(20)外鍵票價intNOTNULL員工號char(20)外鍵車票表字段字段特殊屬性車票號char(20)主鍵車次號varchar(10)外鍵始發(fā)站varchar(10)NOTNULL發(fā)車時間datetimeNOTNULL車廂號intNOTNULL座位號intNOTNULL終點站varchar(10)NOTNULL車票種類char(20)IN(‘軟臥’,‘硬臥’,‘軟座’,‘硬座’,‘站票’)訂單號char(20)NOTNULL車次表字段類型特殊屬性車次號char(20)主鍵始發(fā)站varchar(10)NOTNULL終點站varchar(10)NOTNULL途徑站varchar(10)NOTNULL操作員表字段類型特殊屬性員工號char(20)主鍵訂票點號char(20)NOTNULL姓名varchar(10)NOTNULL性別char(2)NOTNULL,默認(rèn)‘男’或‘女’電話varchar(12)NOTNULL余票信息表字段類型特殊屬性車次號varchar(10)主鍵車票種類char(10)主鍵出發(fā)站varchar(10)NOTNULL目的站varchar(10)NOTNULL出發(fā)時間datatimeNOTNULL余票張數(shù)intNOTNULL6數(shù)據(jù)庫實施建立數(shù)據(jù)庫createdatabase網(wǎng)上訂票數(shù)據(jù)庫onprimary(name=網(wǎng)上訂票數(shù)據(jù)庫,filename='E:\數(shù)據(jù)庫\網(wǎng)上訂票數(shù)據(jù)庫.mdf',size=5MB,FILEGROWTH=10%)logon(name=網(wǎng)上訂票數(shù)據(jù)庫_log,filename='E:\數(shù)據(jù)庫\網(wǎng)上訂票數(shù)據(jù)庫',size=5MB,FILEGROWTH=2MB)建立基本表創(chuàng)建訂票人表:createtable訂票人表(身份證號char(18)notnullprimarykey,姓名varchar(10)notnull,聯(lián)系電話varchar(12)notnull,始發(fā)城市varchar(10)notnull,目的城市varchar(10)notnull,訂單號char(20))創(chuàng)建操作員表:createtable操作員表(員工號char(10)primarykey,訂票點varchar(10)notnull,姓名varchar(10)notnull,性別char(2)check(性別in('男','女')),電話varchar(12)notnull)創(chuàng)建車次信息表:createtable車次信息表(車次號varchar(10)check(車次號LIKE'[A-Z]%')primarykey,始發(fā)站varchar(10)notnull,終點站varchar(10)notnull,途經(jīng)站varchar(100))創(chuàng)建訂票單表:createtable訂票單表(訂單號char(20)primarykey,身份證號char(18)references訂票人表(身份證號),訂票時間datetimenotnull,付款取票與否char(2)check(付款取票與否in('是','否')),車次號varchar(10)check(車次號LIKE'[A-Z]%'),車票號char(20)notnull,票價intnotnull,員工號char(10)references操作員表(員工號))創(chuàng)建車票信息表:createtable車票信息表(車票號char(20)primarykey,車次號varchar(10)check(車次號LIKE'[A-Z]%'),始發(fā)站varchar(10)notnull,發(fā)車時間datetimenotnull,終點站varchar(10)notnull,車票種類char(4)check(車票種類in('無座','硬座','硬臥','軟臥')),訂單號char(20)references訂票單表(訂單號),車廂號intnotnull,座位號intnotnull)創(chuàng)建余票信息表: createtable余票信息表 (車次號varchar(10)check(車次號LIKE'[A-Z]%')primarykey, 出發(fā)站varchar(10)notnull,目的站varchar(10)notnull, 余票張數(shù)intnotnull, 車票種類char(20)primarykey, 出發(fā)日期datatime)建立索引訂票人表:IFexists(select*fromsysindexeswherename='pID_index')dropindex訂票人表.pID_indexcreateuniqueindexpID_indexon訂票人表(身份證號)withfillfactor=30訂票單表:IFexists(select*fromsysindexeswherename='piaoDanNO_index')dropindex訂票單表.piaoDanNO_indexcreateindexpiaoDanNO_indexon訂票單表(訂單號)車票信息表:IFexists(select*fromsysindexeswherename='piaoNO_index')dropindex車票信息表表.piaoNO_indexcreateindexpiaoNO_indexon車票信息表(車票號)車次信息表:IFexists(select*fromsysindexeswherename='cheCiNO_index')dropindex車次信息表.cheCiNO_indexcreateindexcheCiNO_indexon車次信息表(車次號)操作員表:IFexists(select*fromsysindexeswherename='yuanGongNO_index')dropindex操作員表.yuanGongNO_indexcreateindexyuanGongNO_indexon操作員表(員工號)創(chuàng)建視圖createviewallInfo_viewasselect訂票人表.姓名,訂票人表.身份證號,訂票單表.車次號, 車票信息表.車票號,車票信息表.發(fā)車時間,車票信息表.始發(fā)站, 車票信息表.終點站,訂票單表.票價from訂票人表innerjoin訂票單表on訂票人表.身份證號=訂票單表.身份證號innerjoin車票信息表on訂票單表.車票號=車票信息表.車票號innerjoin車次信息表on車票信息表.車次號=車次信息表.車次號創(chuàng)建存儲過程 創(chuàng)建存儲過程,通過身份證號查詢訂票人信息:createprocedurepInfo_proc@pIDchar(18)asselect身份證號,姓名,聯(lián)系電話,始發(fā)城市,目的城市,訂單號from訂票人表where身份證號=@pID創(chuàng)建存儲過程,通過身份證號查詢訂票人訂票信息:createprocedureticket_proc@pIDchar(18)asselect姓名,訂票單表.訂單號,訂票人表.身份證號,訂票時間,付款取票與 否,車次號,車票號,票價,員工號from訂票單表innerjoin訂票人表on訂票人表.身份證號=訂票單表.身份證號where訂票單表.身份證號=@pID創(chuàng)建觸發(fā)器createtrigger余票更新on車票信息表forinsertasdeclare@車次號varchar(10)select@車次號=車次號frominsertedupdate余票信息表set余票張數(shù)=余票張數(shù)-1where車次號=@車次號createtrigger余票更新2on車票信息表fordeleteasdeclare@車次號varchar(10)select@車次號=車次號fromdeletedupdate余票信息表set余票張數(shù)=余票張數(shù)+1where車次號=@車次號插入數(shù)據(jù)向操作員表中插入數(shù)據(jù):insertinto操作員

溫馨提示

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

評論

0/150

提交評論