鐵路售票管理系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)_第1頁(yè)
鐵路售票管理系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)_第2頁(yè)
鐵路售票管理系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)_第3頁(yè)
鐵路售票管理系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)_第4頁(yè)
鐵路售票管理系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)_第5頁(yè)
已閱讀5頁(yè),還剩41頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 大連大學(xué)信息工程學(xué)院數(shù)據(jù)庫(kù)系統(tǒng)課程設(shè)計(jì)報(bào)告 鐵路售票管理系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)作 者 姓 名:趙振東,程行,方仕龍專(zhuān)業(yè)、班級(jí) :軟件121學(xué) 號(hào) :12427023,12427025,10427016指 導(dǎo) 教 師:張敏完 成 日 期:2014.7.844數(shù)據(jù)庫(kù)系統(tǒng)課程設(shè)計(jì)報(bào)告目錄1需求分析11.1 引言11.2 需求分析階段的目標(biāo)與任務(wù)11.2.1處理對(duì)象11.2.2處理功能及要求11.2.3.安全性和完整性要求11.3需求分析階段成果21.3.1 頂層據(jù)流圖:21.3.2 一層數(shù)據(jù)流圖21.3.3 二層數(shù)據(jù)流圖31.3.4 書(shū)店銷(xiāo)售管理系統(tǒng)數(shù)據(jù)字典41.3.5 系統(tǒng)功能模塊圖82數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)

2、92.1 概念設(shè)計(jì)92.1.1 分E-R圖建立102.1.2 全局/整體E-R圖122.2 邏輯設(shè)計(jì)122.2.1 建立關(guān)系模式132.2.2 關(guān)系模式規(guī)范化處理142.2.3 用戶(hù)子模式建立142.2.4 關(guān)系模式邏輯結(jié)構(gòu)定義143 數(shù)據(jù)庫(kù)物理設(shè)計(jì)154數(shù)據(jù)庫(kù)實(shí)施與測(cè)試154.1 數(shù)據(jù)庫(kù)實(shí)施154.1.1 數(shù)據(jù)庫(kù)及數(shù)據(jù)庫(kù)對(duì)象建立154.1.2 數(shù)據(jù)入庫(kù)164.2 數(shù)據(jù)庫(kù)測(cè)試164.2.1 視圖164.2.2存儲(chǔ)過(guò)程測(cè)試175系統(tǒng)功能實(shí)現(xiàn)216總結(jié)297附錄29附錄1 關(guān)系模式說(shuō)明29附錄2 SQl server數(shù)據(jù)定義語(yǔ)句331需求分析1.1 引言 通過(guò)對(duì)實(shí)際火車(chē)站售票處的調(diào)查,本軟件定名為

3、鐵路售票管理系統(tǒng),將系統(tǒng)分為售票系統(tǒng),查詢(xún)系統(tǒng),信息修改,維護(hù),統(tǒng)計(jì)幾大模塊。功能定性為幫助火車(chē)站售票窗口現(xiàn)場(chǎng)售票,退票,改簽。服務(wù)對(duì)象為火車(chē)站售票員,直接作用對(duì)象為火車(chē)票,本軟件將能夠根據(jù)列車(chē)時(shí)刻,天氣,等因素即時(shí)調(diào)整票價(jià)與票數(shù)量,并且提供維護(hù)更新功能。1.2 需求分析階段的目標(biāo)與任務(wù)1.2.1處理對(duì)象火車(chē)票,車(chē)次表,每日車(chē)次票數(shù)表,座位銷(xiāo)售表,座位價(jià)格表,全國(guó)人口身份表,用戶(hù)信息表,臨時(shí)車(chē)票信息表,銷(xiāo)售記錄表。1.2.2處理功能及要求1.能夠存儲(chǔ)大量的火車(chē)票信息,并且可以修改維護(hù)及查詢(xún)火車(chē)票的銷(xiāo)售情況以及相關(guān)信息。2.能夠管理售票員、顧客及火車(chē)票的信息,并且可以做相應(yīng)的查詢(xún),修改,刪除等操

4、作。 3.根據(jù)顧客及售票員等對(duì)象的各種需求、及時(shí)修改火車(chē)票的價(jià)格數(shù)量等信息。4能夠提供一定的安全機(jī)制,提供數(shù)據(jù)信息授權(quán)訪問(wèn),防止隨意刪改、查詢(xún)。1.2.3.安全性和完整性要求1) 安全性要求 系統(tǒng)安全性要求體現(xiàn)在數(shù)據(jù)庫(kù)安全性、信息安全性和系統(tǒng)平臺(tái)的安全性等方面。安全性先通過(guò)視圖機(jī)制,不同的用戶(hù)只能訪問(wèn)系統(tǒng)授權(quán)的視圖,這樣可提供系統(tǒng)數(shù)據(jù)一定程度上的安全性,再通過(guò)分配權(quán)限、設(shè)置權(quán)限級(jí)別來(lái)區(qū)別對(duì)待不同操作者對(duì)數(shù)據(jù)庫(kù)的操作來(lái)提高數(shù)據(jù)庫(kù)的安全性;系統(tǒng)平臺(tái)的安全性體現(xiàn)在操作系統(tǒng)的安全性、計(jì)算機(jī)系統(tǒng)的安全性和網(wǎng)絡(luò)體系的安全性等方面。2) 完整性要求系統(tǒng)完整性要求系統(tǒng)中數(shù)據(jù)的正確性以及相容性??赏ㄟ^(guò)建立主、外

5、鍵,使用check約束,或者通過(guò)使用觸發(fā)器和級(jí)聯(lián)更新。1.3需求分析階段成果1.3.1 頂層數(shù)據(jù)流圖:F1提供購(gòu)票信息F3修改車(chē)票信息 E2 顧客 P0售退改存 E1車(chē)票信息F4提供車(chē)輛信息F2出票F5銷(xiāo)售記錄圖1.1 頂層數(shù)據(jù)流圖1.3.2 一層數(shù)據(jù)流圖S0 車(chē)輛信息表S2 用戶(hù)信息表 F4提供車(chē)輛信息 F7提供用戶(hù)信息 F1提供購(gòu)票信息 F3修改車(chē)票信息 E2 顧客 P1信息查詢(xún)S1 銷(xiāo)售記錄F2出票 F5退票信息F6修改車(chē)票信息 P1 退票圖1.2 一層數(shù)據(jù)流圖1.3.3 二層數(shù)據(jù)流圖S5 座位銷(xiāo)售表S4 每日車(chē)次票數(shù)表 1、二層數(shù)據(jù)流售票圖: S3 車(chē)次表F13提取座位F11提取票數(shù)F

6、9提取車(chē)次F10提供日期P1.2查詢(xún)票數(shù)P1.1查詢(xún)車(chē)次F12確認(rèn)車(chē)次F8提供站點(diǎn)P1.3查詢(xún)座位E2顧客F14確認(rèn)座位P1.4查詢(xún)價(jià)格F18確認(rèn)購(gòu)票P(pán)1.5查詢(xún)姓名F16確認(rèn)價(jià)格S8 車(chē)票表F15提取價(jià)格F17提取姓名S6 座位價(jià)格表S7 身份信息表 圖1.3 二層數(shù)據(jù)流售票圖 2、二層數(shù)據(jù)流管理圖:S5 座位銷(xiāo)售表S4 每日車(chē)次票數(shù)表S10 銷(xiāo)售記錄S9 用戶(hù)信息表F22修改F21修改F20存儲(chǔ)F19提取售票員F24日期車(chē)次P2.4修改F25提取座位F23整合記錄P2.3修改P2.2存儲(chǔ)P2.1買(mǎi)票F26提供信息E2顧客F27提供信息F30P2.8存儲(chǔ)P2.7修改P2.6修改P2.5退票F

7、29F28F34存儲(chǔ)F33提取座位F32日期車(chē)次F31提取記錄S10 銷(xiāo)售記錄S4 每日車(chē)次票數(shù)表S5 座位銷(xiāo)售表S10 銷(xiāo)售記錄 圖1.4 二層數(shù)據(jù)流管理圖1.3.4 鐵路售票管理系統(tǒng)數(shù)據(jù)字典1、數(shù)據(jù)項(xiàng):表1.1 鐵路售票管理系統(tǒng)數(shù)據(jù)字典數(shù)據(jù)項(xiàng)表數(shù)據(jù)項(xiàng)編號(hào)數(shù)據(jù)項(xiàng)名數(shù)據(jù)項(xiàng)含義與其他數(shù)據(jù)項(xiàng)關(guān)系類(lèi)型長(zhǎng)度取值范圍DI-1User_name用戶(hù)姓名Varchar15DI-2workTime工作時(shí)間dataDI-3ticketNum票號(hào)int大于0DI-4Sale_data日期data110DI-5trainID車(chē)次Varchar15DI-6seatNum座位號(hào)smallint2110DI-7S_sta

8、tionID出發(fā)站Varchar15DI-8A_stationID終點(diǎn)站Varchar15DI-9ID_card證件號(hào)int 18DI-10People_name姓名Varchar15DI-11price價(jià)格Varchar15DI-12recordType記錄類(lèi)型smallint101DI-13accountNum帳號(hào)int8DI-14password密碼int6DI-15powerNum權(quán)限smallint101DI-16stationID站點(diǎn)Varchar15DI-17stationNum站次smallint15110DI-18ticketNum票數(shù)intDI-19buyLogo購(gòu)票標(biāo)識(shí)s

9、mallint1012、數(shù)據(jù)結(jié)構(gòu) 表1.2 鐵路售票管理系統(tǒng)數(shù)據(jù)字典數(shù)據(jù)結(jié)構(gòu)表數(shù)據(jù)結(jié)構(gòu)編號(hào)數(shù)據(jù)結(jié)構(gòu)名數(shù)據(jù)結(jié)構(gòu)含義組成DS-1people購(gòu)票人DI-1、DI-2DS-2ticket火車(chē)票DI-3、DI-4、DI-5、DI-6、DI-7、DI-8、DI-9、DI-10、DI-11DS-3User用戶(hù)DI-9、DI-103、數(shù)據(jù)流表1.3 鐵路售票管理系統(tǒng)數(shù)據(jù)字典數(shù)據(jù)流表數(shù)據(jù)流編號(hào)數(shù)據(jù)流名稱(chēng)簡(jiǎn)述數(shù)據(jù)流來(lái)源數(shù)據(jù)流去向數(shù)據(jù)流組成數(shù)據(jù)流量流量高峰F1提供購(gòu)票信息提供購(gòu)票信息顧客車(chē)次表F2出票出票臨時(shí)車(chē)票表銷(xiāo)售記錄F3修改車(chē)票信息修改車(chē)票信息顧客銷(xiāo)售記錄F4提供車(chē)輛信息提供車(chē)輛信息車(chē)次表顧客F5退票信息退

10、票信息顧客票數(shù)表F6修改車(chē)票信息修改車(chē)票信息銷(xiāo)售記錄票數(shù)表F7提供用戶(hù)信息提供用戶(hù)信息用戶(hù)信息表銷(xiāo)售記錄F8提供站點(diǎn)提供站點(diǎn)顧客車(chē)次表F9提取車(chē)次提取車(chē)次車(chē)次表車(chē)票表F10提供日期提供日期車(chē)次表每日車(chē)次票數(shù)表F11提取票數(shù)提取票數(shù)每日車(chē)次票數(shù)表座位銷(xiāo)售表F12確認(rèn)車(chē)次確認(rèn)車(chē)次每日車(chē)次票數(shù)表座位銷(xiāo)售表F13提取座位提取座位座位銷(xiāo)售表座位價(jià)格表F14確認(rèn)座位確認(rèn)座位顧客座位價(jià)格表F15提取價(jià)格提取價(jià)格顧客座位價(jià)格表F16確認(rèn)價(jià)格確認(rèn)價(jià)格顧客座位價(jià)格表F17提取姓名提取姓名顧客身份信息表F18確認(rèn)購(gòu)票確認(rèn)購(gòu)票身份信息表車(chē)票表F19提取售票員提取售票員用戶(hù)信息表銷(xiāo)售記錄F20存儲(chǔ)存儲(chǔ)銷(xiāo)售記錄銷(xiāo)售記錄F

11、21修改修改銷(xiāo)售記錄每日車(chē)次票數(shù)表F22修改修改銷(xiāo)售記錄座位銷(xiāo)售表F23整合記錄整合記錄車(chē)票表銷(xiāo)售記錄F24日期車(chē)次日期車(chē)次銷(xiāo)售記錄每日車(chē)次票數(shù)表F25提取座位提取座位銷(xiāo)售記錄座位銷(xiāo)售表F26提供信息提供信息顧客車(chē)票表F27提供信息提供信息顧客銷(xiāo)售記錄F28日期車(chē)次日期車(chē)次銷(xiāo)售記錄每日車(chē)次票數(shù)表F29提取座位提取座位銷(xiāo)售記錄座位銷(xiāo)售表F30整合記錄整合記錄銷(xiāo)售記錄銷(xiāo)售記錄F31提取記錄提取記錄銷(xiāo)售記錄銷(xiāo)售記錄F32日期車(chē)次日期車(chē)次銷(xiāo)售記錄每日車(chē)次票數(shù)表F33提取座位提取座位銷(xiāo)售記錄座位銷(xiāo)售表F34存儲(chǔ)存儲(chǔ)銷(xiāo)售記錄銷(xiāo)售記錄4、處理邏輯表1.4 鐵路售票管理系統(tǒng)數(shù)據(jù)字典處理邏輯表處理邏輯編號(hào)處理邏

12、輯名稱(chēng)簡(jiǎn)介輸入的數(shù)據(jù)流處理輸出的數(shù)據(jù)流處理頻率P1.1查詢(xún)車(chē)次 顧客提供信息查詢(xún)車(chē)次F8提供站點(diǎn)F9提取車(chē)次查詢(xún)車(chē)次表F10提供日期P1.2查詢(xún)票數(shù)根據(jù)車(chē)次日期查詢(xún)F10提供日期F11提取票數(shù)查詢(xún)每日車(chē)次票數(shù)表F12確認(rèn)車(chē)次P1.3查詢(xún)座位根據(jù)車(chē)次日期查詢(xún)F12確認(rèn)車(chē)次F13提取座位查詢(xún)座位銷(xiāo)售表F14確認(rèn)座位P1.4查詢(xún)價(jià)格根據(jù)車(chē)次和座位號(hào)F14確認(rèn)座位F15提取價(jià)格查詢(xún)座位價(jià)格表F16確認(rèn)價(jià)格P1.5查詢(xún)姓名顧客提供證件號(hào)F16確認(rèn)價(jià)格F17提取姓名查詢(xún)身份信息表F18確認(rèn)購(gòu)票P(pán)2.1買(mǎi)票顧客提供信息F26提供信息F19提取員工整合存儲(chǔ)F32退票記錄P2.2存儲(chǔ)提供車(chē)票信息F23整合記錄存

13、儲(chǔ)進(jìn)入銷(xiāo)售記錄F20存儲(chǔ)F24日期車(chē)次P2.3修改提取日期車(chē)次F24日期車(chē)次修改每日車(chē)次票數(shù)表F21修改F25提取座位P2.4修改提取日期車(chē)次座位F25提取座位修改購(gòu)票標(biāo)識(shí)F22修改P2.5退票顧客提供票號(hào)F27提供信息F31提取記錄查詢(xún)銷(xiāo)售記錄F28日期車(chē)次P2.6修改提取日期車(chē)次F28日期車(chē)次修改每日車(chē)次票數(shù)表F32日期車(chē)次F29提取座位P2.7修改提取日期車(chē)次座位F29提取座位修改購(gòu)票標(biāo)識(shí)F33提取座位F30整合記錄P2.8存儲(chǔ)提取車(chē)票信息F30整合記錄存儲(chǔ)銷(xiāo)售記錄F34存儲(chǔ)1.3.5 系統(tǒng)功能模塊圖圖1.4 系統(tǒng)功能模塊圖鐵路售票管理系統(tǒng) 退票功能模塊退出功能模塊統(tǒng)計(jì)功能模塊查詢(xún)功能模

14、塊維護(hù)功能模塊售票功能模塊登錄功能模塊2數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)包括概念設(shè)計(jì)和邏輯設(shè)計(jì)兩個(gè)部分。2.1 概念設(shè)計(jì)概念設(shè)計(jì)目標(biāo):是產(chǎn)生反映企業(yè)組織信息需求的數(shù)據(jù)庫(kù)概念結(jié)構(gòu)。 概念模式是獨(dú)立于數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu), 獨(dú)立于支持?jǐn)?shù)據(jù)庫(kù)的DBMS,不依賴(lài)于計(jì)算機(jī)系統(tǒng)的。 概念設(shè)計(jì)的方法:(1)選擇中層數(shù)據(jù)流為切入點(diǎn),通常選擇實(shí)際系統(tǒng)中的子系統(tǒng);(2)設(shè)計(jì)分E-R圖,即各子模塊的E-R圖;(3)生成初步E-R圖,通過(guò)合并方法,做到各子系統(tǒng)實(shí)體、屬性、聯(lián)系統(tǒng)一;(4)生成全局E-R圖,通過(guò)消除沖突等方面。先設(shè)計(jì)出幾個(gè)分業(yè)務(wù):售票、管理、的E-R圖,然后進(jìn)行匯總,成為總的E-R圖在合成時(shí)要注意消除存在的一些沖突等。2.1.

15、1 分E-R圖建立以中層數(shù)據(jù)為切入點(diǎn),按照分層次/分模塊思想建立分E-R圖1、售票:站點(diǎn)站次日期車(chē)次車(chē)次票數(shù)車(chē)次表每日車(chē)票數(shù)量表價(jià)格N票號(hào)N日期日期提取提取1車(chē)次車(chē)次1座位號(hào)提取車(chē)票表N1座位銷(xiāo)售表座位號(hào)出發(fā)站11購(gòu)票標(biāo)識(shí)終點(diǎn)站提取證件號(hào)提取N價(jià)格N身份信息表車(chē)次座位價(jià)格表姓名座位號(hào)價(jià)格證件號(hào)圖2.1售票分E-R圖座位號(hào)日期車(chē)次2、管理:購(gòu)票標(biāo)識(shí)日期車(chē)次票數(shù)車(chē)票數(shù)量表座位銷(xiāo)售表用戶(hù)姓名NN工作時(shí)間修改修改退票標(biāo)識(shí)姓名11票號(hào)1N日期提取銷(xiāo)售記錄用戶(hù)信息表車(chē)次1工作時(shí)間座位號(hào)存儲(chǔ) 出發(fā)站N終點(diǎn)站證件號(hào)價(jià)格車(chē)票表姓名姓名證件號(hào)價(jià)格票號(hào)終點(diǎn)站出發(fā)站日期座位號(hào)車(chē)次圖2.2管理分E-R圖 票數(shù)表2.1.

16、2 全局/整體E-R圖NNN車(chē)次表提取提取修改111NN提取存儲(chǔ)身份信息車(chē)票表111N銷(xiāo)售記錄提取用戶(hù)信息111提取提取修改N價(jià)格表NN座位銷(xiāo)售圖2.3全局E-R圖屬性沖突、命名沖突問(wèn)題通過(guò)各部門(mén)協(xié)商解決。對(duì)結(jié)構(gòu)沖突解決方法是使該實(shí)體的屬性取各分E-R圖中屬性的并集,并適當(dāng)?shù)恼{(diào)整,通過(guò)應(yīng)用的語(yǔ)義對(duì)實(shí)體的聯(lián)系進(jìn)行綜合和調(diào)整。2.2 邏輯設(shè)計(jì)1、邏輯設(shè)計(jì)階段目標(biāo)是與選用的DBMS所支持?jǐn)?shù)據(jù)模型相符的邏輯結(jié)構(gòu)。2、設(shè)計(jì)邏輯結(jié)構(gòu)一般分為三步:(1)將概念結(jié)構(gòu)轉(zhuǎn)換為一般的關(guān)系、網(wǎng)狀、層次模型;(2)將轉(zhuǎn)換來(lái)的關(guān)系、網(wǎng)狀、層次模型像特定DBMS所支持?jǐn)?shù)據(jù)模型轉(zhuǎn)換;(3)對(duì)數(shù)據(jù)模型優(yōu)化。2.2.1 建立關(guān)系

17、模式2.2.1.1在將概念模型轉(zhuǎn)換為邏輯模型過(guò)程中依據(jù)的主要準(zhǔn)則: (1)一個(gè)1:1的聯(lián)系與任意一端對(duì)應(yīng)的關(guān)系模式合并,在該關(guān)系模式中加入另一端關(guān)系的碼和聯(lián)系本身的屬性;(2)一個(gè)1:n的關(guān)系與n端對(duì)應(yīng)的關(guān)系模式合并,在n端關(guān)系模式中加入1端關(guān)系的碼和聯(lián)系本身的屬性,合并后關(guān)系的碼為n端關(guān)系的碼;、(3)一個(gè)m:n聯(lián)系轉(zhuǎn)換為一個(gè)關(guān)系模式,與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的碼轉(zhuǎn)換為關(guān)系的屬性,各實(shí)體的碼組成關(guān)系的碼或關(guān)系碼的一部分。2.2.1.2 關(guān)系及函數(shù)依賴(lài):1,車(chē)次表(車(chē)次,站點(diǎn),站次) 車(chē)次,站點(diǎn) 1 站次 2,每日車(chē)次票數(shù)表(日期,車(chē)次,票數(shù)) 日期,車(chē)次 1 票數(shù)3,座位銷(xiāo)售表(

18、日期,車(chē)次,座位,購(gòu)票標(biāo)識(shí)) 日期,車(chē)次,座位 1 購(gòu)票標(biāo)識(shí)4,座位價(jià)格表(車(chē)次,座位號(hào),價(jià)格) 車(chē)次,座位號(hào) 1 價(jià)格5,全國(guó)人口身份表(姓名,證件號(hào)) 姓名 1 證件號(hào)6,用戶(hù)信息表(用戶(hù)姓名,帳號(hào),密碼,權(quán)限,工作時(shí)間) 用戶(hù)姓名 1 帳號(hào) 用戶(hù)姓名 1 密碼 用戶(hù)姓名 1 權(quán)限 用戶(hù)姓名 1 工作時(shí)間7,臨時(shí)車(chē)票信息表(票號(hào),日期,車(chē)次,座位號(hào),出發(fā)站,終點(diǎn)站,證件號(hào),姓名,價(jià)格) 票號(hào) 1 日期 票號(hào) 1 車(chē)次 票號(hào) 1 座位號(hào) 票號(hào) 1 出發(fā)站 票號(hào) 1 終點(diǎn)站 票號(hào) 1 證件號(hào) 票號(hào) 1 姓名 票號(hào) 1 價(jià)格8,銷(xiāo)售記錄表(用戶(hù)姓名,工作時(shí)間,票號(hào),日期,車(chē)次,座位號(hào),出發(fā)站,終

19、點(diǎn)站,證件號(hào),姓名,價(jià)格,記錄類(lèi)型) 用戶(hù)姓名,票號(hào),購(gòu)票標(biāo)識(shí) 1 工作時(shí)間 用戶(hù)姓名,票號(hào),購(gòu)票標(biāo)識(shí) 1 工作時(shí)間 用戶(hù)姓名,票號(hào),購(gòu)票標(biāo)識(shí) 1 工作時(shí)間 用戶(hù)姓名,票號(hào),購(gòu)票標(biāo)識(shí) 1 工作時(shí)間 用戶(hù)姓名,票號(hào),購(gòu)票標(biāo)識(shí) 1 工作時(shí)間 用戶(hù)姓名,票號(hào),購(gòu)票標(biāo)識(shí) 1 工作時(shí)間 用戶(hù)姓名,票號(hào),購(gòu)票標(biāo)識(shí) 1 工作時(shí)間 用戶(hù)姓名,票號(hào),購(gòu)票標(biāo)識(shí) 1 工作時(shí)間2.2.2 關(guān)系模式規(guī)范化處理分析各關(guān)系模式是否存在操作異?,F(xiàn)象,如果采用范式理論將其規(guī)范,使其滿(mǎn)足3范式。經(jīng)分析此模式所有關(guān)系每一個(gè)非主屬性完全函數(shù)依賴(lài)于主碼,也不存在傳遞函數(shù)依賴(lài)。故其滿(mǎn)足3NF。2.2.3 用戶(hù)子模式建立為方便操作人員查詢(xún)

20、相關(guān)數(shù)據(jù)創(chuàng)建如下用戶(hù)子模式:Select_checi_Message(trainID)Select_piaoshu_Message(Num)Select_zuowei_Message(seatNum)Select_jiage_Message(price)Select_xingming_Message(People_name,ID_card)2.2.4 關(guān)系模式邏輯結(jié)構(gòu)定義2.2.4.1關(guān)系模式匯總 表2.1 關(guān)系模式匯總編號(hào)關(guān)系名稱(chēng)模式說(shuō)明T1車(chē)次表(詳見(jiàn)附錄11)(詳見(jiàn)附錄11)T2每日車(chē)次票數(shù)表(詳見(jiàn)附錄12)(詳見(jiàn)附錄12)T3座位銷(xiāo)售表(詳見(jiàn)附錄13)(詳見(jiàn)附錄13)T4座位價(jià)格表(詳

21、見(jiàn)附錄14)(詳見(jiàn)附錄14)T5全國(guó)人口身份表(詳見(jiàn)附錄15)(詳見(jiàn)附錄15)T6用戶(hù)信息表(詳見(jiàn)附錄16)(詳見(jiàn)附錄16)T7臨時(shí)車(chē)票信息表(詳見(jiàn)附錄17)(詳見(jiàn)附錄17)T8銷(xiāo)售記錄(詳見(jiàn)附錄18)(詳見(jiàn)附錄18)2.2.4.1外模式匯總 表2.2 外模式匯總表序號(hào)視圖名稱(chēng)作用備注1Select_checi_Message查詢(xún)車(chē)次2Select_piaoshu_Message查尋票數(shù)3Select_zuowei_Message查詢(xún)座位號(hào)4Select_jiage_Message查詢(xún)價(jià)格5Select_xingming_Message查詢(xún)身份信息3 數(shù)據(jù)庫(kù)物理設(shè)計(jì)3.1 邏輯結(jié)構(gòu)設(shè)計(jì)關(guān)系模式

22、 1,車(chē)次表(車(chē)次,站點(diǎn),站次)2,每日車(chē)次票數(shù)表(日期,車(chē)次,票數(shù))3,座位銷(xiāo)售表(日期,車(chē)次,座位,購(gòu)票標(biāo)識(shí))4,座位價(jià)格表(車(chē)次,座位號(hào),價(jià)格)全國(guó)人口身份表(姓名,證件號(hào))5,用戶(hù)信息表(用戶(hù)姓名,帳號(hào),密碼,權(quán)限,工作時(shí)間)6,全國(guó)人口身份表(姓名,證件號(hào))7,臨時(shí)車(chē)票信息表(票號(hào),日期,車(chē)次,座位號(hào),出發(fā)站,終點(diǎn)站,證件號(hào),姓 名,價(jià)格)8,銷(xiāo)售記錄表(用戶(hù)姓名,工作時(shí)間,票號(hào),日期,車(chē)次,座位號(hào),出發(fā)站,終點(diǎn)站,證件號(hào),姓名,價(jià)格,記錄類(lèi)型)4數(shù)據(jù)庫(kù)實(shí)施與測(cè)試數(shù)據(jù)庫(kù)實(shí)施與測(cè)試包括數(shù)據(jù)庫(kù)實(shí)施和測(cè)試兩個(gè)部分。4.1 數(shù)據(jù)庫(kù)實(shí)施4.1.1 數(shù)據(jù)庫(kù)及數(shù)據(jù)庫(kù)對(duì)象建立SQL server中數(shù)

23、據(jù)庫(kù)及數(shù)據(jù)庫(kù)對(duì)象建立 表4.1 外模式匯總表序號(hào)名稱(chēng)定義語(yǔ)句2-1數(shù)據(jù)庫(kù)(詳見(jiàn)附錄2-1)2-2基本表(詳見(jiàn)附錄2-2)2-3視圖(詳見(jiàn)附錄2-3)2-4存儲(chǔ)過(guò)程(詳見(jiàn)附錄2-4)2-5索引(詳見(jiàn)附錄2-5)4.1.2 數(shù)據(jù)入庫(kù)對(duì)所有數(shù)據(jù)表錄入20條以上的記錄,可使用批量導(dǎo)入,逐條錄入,或整體復(fù)制的方法。4.2 數(shù)據(jù)庫(kù)測(cè)試4.2.1 視圖1,Select_checi_Message 圖4.1 Select_checi_Message視圖2,Select_piaoshu_Message 圖4.2 Select_piaoshu_Message視圖 3,Select_zuowei_Message 圖

24、4.3 Select_zuowei_Message視圖 4,Select_jiage_Message 圖4.4 Select_jiage_Message視圖 5,Select_xingming_Message 圖4.5 Select_xingming_Message視圖4.2.2存儲(chǔ)過(guò)程測(cè)試1.1、Select_checi_Message 測(cè)試代碼: SELECT trainID, stationID, stationNumFROM 鐵路售票管理系統(tǒng).車(chē)次表WHERE stationID=漯河' OR stationID='洛陽(yáng)' 測(cè)試結(jié)果: 圖4.6 Select_c

25、heci_Message1.2、Select_piaoshu_Message 測(cè)試代碼: SELECT NumFROM 鐵路售票管理系統(tǒng).每日車(chē)次票數(shù)表WHERE Sale_data=2014-01-01 AND trainID=k369; 測(cè)試結(jié)果:圖4.7 Select_piaoshu_Message1.3、Select_zuowei_Message 測(cè)試代碼: SELECT seatNumFROM 鐵路售票管理系統(tǒng).座位銷(xiāo)售表WHERE Sale_data=2014-01-01 AND trainID=k369 AND buyLogo=1; 測(cè)試結(jié)果: 圖4.8Select_zuowei

26、_Message1.4、Select_jiage_Message 測(cè)試代碼: SELECT seatNum, priceFROM 鐵路售票管理系統(tǒng).座位價(jià)格表WHERE trainID=k369 AND seatNum=(SELECT seatNumFROM 鐵路售票管理系統(tǒng).座位銷(xiāo)售表WHERE Sale_data=2014-01-01 AND trainID=k369 AND buyLogo=1;); 測(cè)試結(jié)果: 圖4.9Select_jiage_Message1.5、Select_xingming_Message 測(cè)試代碼: SELECT People_name, IDcardFROM

27、鐵路售票管理系統(tǒng).全國(guó)人口身份表WHERE IDcard=*; 測(cè)試結(jié)果: 圖4.10Select_xingming_Message1.6、Insert_dingpiao_Form 測(cè)試代碼: GOCREATE PROC Insert_dingpiao_Form(ticketNum int(10),Sale_data VARCHAR(15),trainID VARCHAR(15),seatNum smallint(6),S_station VARCHAR(15),A_station VARCHAR(15),ID_card int(20),People_name VARCHAR(15),pric

28、e VARCHAR(15)ASBEGIN INSERT INTO 鐵路售票管理系統(tǒng).臨時(shí)車(chē)票信息表 VALUES(ticketNum,Sale_data,trainID,seatNum,S_station,A_station,ID_card,People_name,price CONVERT(DATE,GETDATE()END 測(cè)試結(jié)果: 插入前: 圖4.11Insert_dingpiao_Form 插入后: 圖4.12Insert_dingpiao_Form2.1、Insert_dingpiao_Form 測(cè)試代碼:CREATE VIEW Select_chaxunjilu_Message(

29、seatNum,price)ASSELECT trainID, Sale_data, seatNumFROM 鐵路售票管理系統(tǒng).銷(xiāo)售記錄WHERE ticketNum=*;測(cè)試結(jié)果: 圖4.13Insert_dingpiao_Form2.2、Insert_PiaoshuGOCREATE PROC Insert_Piaoshu(Num int(10)ASBEGININSERT INTO 鐵路售票管理系統(tǒng).每日車(chē)次票數(shù) VALUES(Num)END測(cè)試結(jié)果: 圖4.14Insert_Piaoshu2.3、Insert_zuoweiGOCREATE PROC Insert_zuowei(buyLog

30、o int(10)ASBEGININSERT INTO 鐵路售票管理系統(tǒng).座位銷(xiāo)售表 VALUES(buyLogo)END測(cè)試結(jié)果: 圖4.15Insert_zuowei5. 系統(tǒng)功能實(shí)現(xiàn)5.1登錄功能 圖5.1登錄功能1說(shuō)明:登錄界面,請(qǐng)輸入用戶(hù)名與密碼。圖5.2登錄功能2說(shuō)明:輸入用戶(hù)名與密碼必須正確。圖5.3登錄功能3說(shuō)明:輸入正確,進(jìn)入系統(tǒng)主界面。5.2售票功能圖5.4售票功能1說(shuō)明:選擇日前與線(xiàn)路。圖5.5售票功能2說(shuō)明:查詢(xún)車(chē)次與剩余票數(shù)。圖5.6售票功能3說(shuō)明:選擇座位號(hào)與價(jià)格。圖5.7售票功能4說(shuō)明:輸入證件號(hào)與姓名,訂票結(jié)束圖5.8售票功能5說(shuō)明:生成車(chē)票信息。5.3退票功能

31、圖5.9退票功能1說(shuō)明:查詢(xún)售票記錄。圖5.10退票功能2說(shuō)明:點(diǎn)擊退票,紀(jì)錄刷新,后臺(tái)也刷新。5.4修改價(jià)格功能圖5.11退票功能3說(shuō)明:進(jìn)入管理界面。圖5.12退票功能4說(shuō)明:查詢(xún)所有車(chē)次的座位價(jià)格。圖5.13退票功能5說(shuō)明:點(diǎn)擊修改。5.5修改線(xiàn)路功能圖5.14退票功能6說(shuō)明:進(jìn)入管理界面。圖5.15退票功能7說(shuō)明:查尋所有車(chē)次的線(xiàn)路。圖5.16退票功能8說(shuō)明;點(diǎn)擊修改,修改本次線(xiàn)路。趙振東完成:系統(tǒng)界面設(shè)計(jì),售票功能。方仕龍完成:登錄功能,退票功能。程行完成:價(jià)格修改功能,線(xiàn)路修改功能。6.總結(jié) 經(jīng)過(guò)幾天的勞動(dòng),終于完成了數(shù)據(jù)庫(kù)設(shè)計(jì)環(huán)節(jié),而數(shù)據(jù)庫(kù)的測(cè)試工作因未能完成語(yǔ)句編寫(xiě)而暫時(shí)擱置,

32、余下工作將在數(shù)據(jù)庫(kù)設(shè)計(jì)完成后繼續(xù)補(bǔ)全。 這次設(shè)計(jì)工作使我們熟悉了流程,嚴(yán)謹(jǐn)了我們的設(shè)計(jì)思想,并且對(duì)于實(shí)際操作環(huán)節(jié)有了更深的理解,為以后做世界工作打下了堅(jiān)實(shí)的基礎(chǔ)。 系統(tǒng)的實(shí)現(xiàn)并不只是完成編程工作而已,文檔一樣很重要,之外根據(jù)老師的提出要求,結(jié)合我們小組的文檔實(shí)際情況,討論分析后重新修改設(shè)計(jì)文檔。 從這兩天的編程過(guò)程來(lái)看,因?yàn)楹芏喾椒ú荒芎芎玫恼莆眨瑢?xiě)代碼的整體素質(zhì)不是很熟練,很多地方經(jīng)常敲錯(cuò),致使編程的速度不是很快,并且經(jīng)常出錯(cuò),調(diào)試修改比較浪費(fèi)時(shí)間,尤其在數(shù)據(jù)庫(kù)連接著一塊經(jīng)常出現(xiàn)問(wèn)題,反復(fù)修改檢查錯(cuò)誤。7附錄附錄1 關(guān)系模式說(shuō)明1-1車(chē)次表關(guān)系模式說(shuō)明車(chē)次表(車(chē)次,站點(diǎn),站次)屬性名數(shù)據(jù)類(lèi)型

33、取值范圍是否為主屬性是否為外鍵完整性要求trainIDVarchar(15)是是Not nullstationIDVarchar(15)是Not nullstationNumsmallintNot null1-2每日車(chē)次票數(shù)表關(guān)系模式說(shuō)明每日車(chē)次票數(shù)表(日期,車(chē)次,票數(shù))屬性名數(shù)據(jù)類(lèi)型取值范圍是否為主屬性是否為外鍵完整性要求Sale_datadata是Not nulltrainIDVarchar(15)是是Not nullNumsmallintNot null1-3座位銷(xiāo)售表關(guān)系模式說(shuō)明座位銷(xiāo)售表(日期,車(chē)次,座位,購(gòu)票標(biāo)識(shí))屬性名數(shù)據(jù)類(lèi)型取值范圍是否為主屬性是否為外鍵完整性要求Sale_da

34、tadate是Not nulltrainIDVarchar(15)是是Not nullseatNumsmallint110是是checkbuyLogointNot null1-4座位價(jià)格表關(guān)系模式說(shuō)明座位價(jià)格表(車(chē)次,座位號(hào),價(jià)格)屬性名數(shù)據(jù)類(lèi)型取值范圍是否為主屬性是否為外鍵完整性要求trainIDVarchar(15)是是Not nullseatNumsmallint110是是checkpriceVarchar(15)Not null1-5全國(guó)人口身份表關(guān)系模式說(shuō)明全國(guó)人口身份表(姓名,證件號(hào))屬性名數(shù)據(jù)類(lèi)型取值范圍是否為主屬性是否為外鍵完整性要求People_nameVarchar(15)

35、是Not nullID_cardint是Not null1-6用戶(hù)信息表關(guān)系模式說(shuō)明用戶(hù)信息表(用戶(hù)姓名,帳號(hào),密碼,權(quán)限,工作時(shí)間)屬性名數(shù)據(jù)類(lèi)型取值范圍是否為主屬性是否為外鍵完整性要求User_nameVarchar(15)是Not nullaccountNumintNot nullpasswordintNot nullpowerNumsmallint01checkworkTimedata是Not null1-7臨時(shí)車(chē)票信息表關(guān)系模式說(shuō)明臨時(shí)車(chē)票信息表(票號(hào),日期,車(chē)次,座位號(hào),出發(fā)站,終點(diǎn)站,證件號(hào),姓名,價(jià)格)屬性名數(shù)據(jù)類(lèi)型取值范圍是否為主屬性是否為外鍵完整性要求ticketNumin

36、t大于0是是Not nullSale_datadata110是Not nulltrainIDVarchar(15)是Not nullseatNumsmallint110是checkS_stationIDVarchar(15)Not nullA_stationIDVarchar(15)Not nullID_cardint是Not nullPeople_nameVarchar(15)Not nullpriceVarchar(15)是Not null1-8銷(xiāo)售記錄表關(guān)系模式說(shuō)明銷(xiāo)售記錄表(用戶(hù)姓名,工作時(shí)間,票號(hào),日期,車(chē)次,座位號(hào),出發(fā)站,終點(diǎn)站,證件號(hào),姓名,價(jià)格,記錄類(lèi)型)屬性名數(shù)據(jù)類(lèi)型取值范

37、圍是否為主屬性是否為外鍵完整性要求User_nameVarchar(15)是是Not nullworkTimedata是Not nullticketNumint大于0是是Not nullSale_datadata110Not nulltrainIDVarchar(15)Not nullseatNumsmallint110checkS_stationIDVarchar(15)Not nullA_stationIDVarchar(15)Not nullID_cardintNot nullPeople_nameVarchar(15)Not nullpriceVarchar(15)Not nullre

38、cordTypesmallint01是check附錄2 SQl server數(shù)據(jù)定義語(yǔ)句2-1、創(chuàng)建數(shù)據(jù)庫(kù)/*創(chuàng)建數(shù)據(jù)庫(kù)*/CREATE DATABASE 鐵路售票管理系統(tǒng);2-2、基本表定義:/*1、車(chē)次表*/CREATE TABLE 車(chē)次表 ( trainID VARCHAR(15) NOT NULL, stationID VARCHAR(15) NOT NULL, stationNum SMALLINT(6) UNSIGNED NOT NULL, PRIMARY KEY (trainID,stationID) ENGINE=INNODB DEFAULT CHARSET=gbk/*2、臨時(shí)

39、車(chē)票信息表*/CREATE TABLE 臨時(shí)車(chē)票信息表 ( ticketNum INT(10) UNSIGNED NOT NULL, Sale_data DATE NOT NULL, trainID VARCHAR(15) NOT NULL, seatNum SMALLINT(6) UNSIGNED NOT NULL, S_stationID VARCHAR(15) NOT NULL, A_statiomID VARCHAR(15) NOT NULL, ID_card INT(10) UNSIGNED NOT NULL, People_name VARCHAR(15) NOT NULL, pr

40、ice VARCHAR(15) NOT NULL, PRIMARY KEY (ticketNum), KEY FK_座位外鍵 (Sale_data,trainID,seatNum), KEY FK_購(gòu)票人外鍵 (People_name), KEY FK_價(jià)格外鍵 (trainID,seatNum), CONSTRAINT FK_價(jià)格外鍵 FOREIGN KEY (trainID, seatNum) REFERENCES 座位價(jià)格表 (trainID, seatNum), CONSTRAINT FK_購(gòu)票人外鍵 FOREIGN KEY (People_name) REFERENCES 全國(guó)人口身

41、份表 (people_name), CONSTRAINT FK_車(chē)次外鍵 FOREIGN KEY (trainID) REFERENCES 車(chē)次表 (trainID), CONSTRAINT FK_座位外鍵 FOREIGN KEY (Sale_data, trainID, seatNum) REFERENCES 座位銷(xiāo)售表 (Sale_data, trainID, seatNum), CONSTRAINT FK_日期外鍵 FOREIGN KEY (Sale_data) REFERENCES 每日車(chē)次票數(shù)表 (Sale_data) ENGINE=INNODB DEFAULT CHARSET=gb

42、k/*3、每日車(chē)次票數(shù)表*/CREATE TABLE 每日車(chē)次票數(shù)表 ( Sale_data DATE NOT NULL, trainID VARCHAR(15) NOT NULL, Num SMALLINT(6) UNSIGNED NOT NULL, PRIMARY KEY (Sale_data,trainID) ENGINE=INNODB DEFAULT CHARSET=gbk/*4、全國(guó)人口身份表*/CREATE TABLE 全國(guó)人口身份表 ( people_name VARCHAR(15) NOT NULL, ID_card INT(10) UNSIGNED NOT NULL, PRI

43、MARY KEY (people_name) ENGINE=INNODB DEFAULT CHARSET=gbk/*5、銷(xiāo)售記錄表*/CREATE TABLE 銷(xiāo)售記錄表 ( User_name VARCHAR(15) NOT NULL, workTime DATE NOT NULL, ticketNum INT(10) UNSIGNED NOT NULL, Sale_data DATE NOT NULL, trainID VARCHAR(15) NOT NULL, seatNum SMALLINT(6) NOT NULL, S_stationID VARCHAR(15) NOT NULL, A_stationID VARCHAR(15) NOT NULL, ID_card INT(10) UNSIGNED NOT NULL, People_name VARCHAR(15) NOT NULL, Price VARCHAR(15) NOT NULL, recordType SMALLINT(5) UNSIGNED NOT NULL, PRIMARY KEY

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論