機(jī)票預(yù)訂系統(tǒng)課程設(shè)計(jì)報(bào)告_第1頁(yè)
機(jī)票預(yù)訂系統(tǒng)課程設(shè)計(jì)報(bào)告_第2頁(yè)
機(jī)票預(yù)訂系統(tǒng)課程設(shè)計(jì)報(bào)告_第3頁(yè)
機(jī)票預(yù)訂系統(tǒng)課程設(shè)計(jì)報(bào)告_第4頁(yè)
機(jī)票預(yù)訂系統(tǒng)課程設(shè)計(jì)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩13頁(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)介

?數(shù)據(jù)庫(kù)原理及應(yīng)用課程設(shè)計(jì)?系統(tǒng)開(kāi)發(fā)報(bào)告學(xué)號(hào):姓名:題目:機(jī)票預(yù)訂系統(tǒng)指導(dǎo)教師:提交時(shí)間:2021年12月計(jì)算機(jī)工程系目錄TOC\o"1-3"\h\u一.概述 21.1課程實(shí)訓(xùn)目的與要求 31.2機(jī)票預(yù)訂系統(tǒng) 31.2.1系統(tǒng)功能的根本要求 31.2.2數(shù)據(jù)庫(kù)要求 4二.需求分析 4背景分析 42.2功能分析 52.3數(shù)據(jù)詞典 6三.概念構(gòu)造設(shè)計(jì) 8概念構(gòu)造設(shè)計(jì)的方法與步驟 83.2局部E-R圖設(shè)計(jì) 8總體概念E-R圖構(gòu)造 11四.邏輯構(gòu)造設(shè)計(jì) 124.1邏輯構(gòu)造設(shè)計(jì) 134.2數(shù)據(jù)庫(kù)表的建立 16五.物理構(gòu)造設(shè)計(jì) 175.1表的建立與數(shù)據(jù)載入 175.2視圖建立 175.3索引建立 185.4存儲(chǔ)過(guò)程 185.5觸發(fā)器 195.6創(chuàng)立登陸賬戶(hù)和添加數(shù)據(jù)庫(kù)用戶(hù) 20六.數(shù)據(jù)流圖及程序構(gòu)造框圖 216.1功能模塊圖 21數(shù)據(jù)流圖 22七.界面設(shè)計(jì)與功能測(cè)試 23登錄界面及代碼 237.2進(jìn)入系統(tǒng)界面 257.3訂票過(guò)程 28八.總結(jié) 35一.概述應(yīng)用對(duì)數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用的理論學(xué)習(xí)通過(guò)上機(jī)實(shí)踐的方式將理論知識(shí)與實(shí)踐更好的結(jié)合起來(lái)穩(wěn)固所學(xué)知識(shí)。實(shí)踐和穩(wěn)固在課堂教學(xué)中學(xué)習(xí)的關(guān)于數(shù)據(jù)庫(kù)的有關(guān)知識(shí)熟練掌握對(duì)于給定實(shí)訓(xùn)任務(wù)的數(shù)據(jù)庫(kù)的創(chuàng)立、根本操作、程序系統(tǒng)的建立和調(diào)試以及系統(tǒng)評(píng)價(jià)。實(shí)踐和穩(wěn)固在課堂教學(xué)中學(xué)習(xí)的關(guān)于關(guān)系數(shù)據(jù)庫(kù)原理的有關(guān)知識(shí)和數(shù)據(jù)庫(kù)系統(tǒng)的建立方法熟練掌握對(duì)于給定實(shí)際問(wèn)題為了建立一個(gè)關(guān)系數(shù)據(jù)庫(kù)信息管理系統(tǒng)必須得經(jīng)過(guò)系統(tǒng)調(diào)研、需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì)、系統(tǒng)調(diào)試、維護(hù)以及系統(tǒng)評(píng)價(jià)的一般過(guò)程為將來(lái)在學(xué)習(xí)工作中的應(yīng)用打下根底。1.1課程實(shí)訓(xùn)目的與要求課程實(shí)訓(xùn)的目的是本次課程實(shí)訓(xùn)的主要任務(wù)是運(yùn)用在?數(shù)據(jù)庫(kù)原理及應(yīng)用?課程中學(xué)到的理論知識(shí)來(lái)指導(dǎo)實(shí)踐了解數(shù)據(jù)庫(kù)設(shè)計(jì)過(guò)程及其實(shí)現(xiàn)方法學(xué)會(huì)用數(shù)據(jù)庫(kù)建模的方法解決實(shí)際問(wèn)題。掌握數(shù)據(jù)庫(kù)原理、范式理論、標(biāo)準(zhǔn)化等相關(guān)知識(shí)掌握數(shù)據(jù)庫(kù)分析設(shè)計(jì)的具體步驟與根本方法掌握SQL語(yǔ)言的根本語(yǔ)法和根本內(nèi)容并能運(yùn)用SQLServer2005實(shí)現(xiàn)設(shè)計(jì)數(shù)據(jù)庫(kù)掌握SQLServer2005數(shù)據(jù)庫(kù)、表、視圖、約束、索引、存儲(chǔ)過(guò)程、觸發(fā)器的使用利用一種前臺(tái)開(kāi)發(fā)工具實(shí)現(xiàn)數(shù)據(jù)庫(kù)管理系統(tǒng)的開(kāi)發(fā)實(shí)現(xiàn)特定的業(yè)務(wù)功能。通過(guò)綜合課程實(shí)訓(xùn)提高實(shí)踐動(dòng)手技能培養(yǎng)獨(dú)立分析分析問(wèn)題和解決問(wèn)題的能力。課程實(shí)訓(xùn)的要求本次課程實(shí)訓(xùn)的選題比擬靈活可以是自主選題也可以自己選擇比擬感興趣的題目重點(diǎn)是完成數(shù)據(jù)庫(kù)的分析、設(shè)計(jì)與實(shí)現(xiàn)題目要符合?數(shù)據(jù)庫(kù)原理及應(yīng)用?的要求并且具備一定的難度和深度除此以外可以從備選題目之外選擇一個(gè)題目完成。1.2機(jī)票預(yù)訂系統(tǒng)在所給的實(shí)訓(xùn)題目中我選擇的是機(jī)票預(yù)訂系統(tǒng)的設(shè)計(jì)。1.2.1系統(tǒng)功能的根本要求每個(gè)航班信息的輸入每個(gè)航班的坐位信息的輸入當(dāng)旅客進(jìn)展機(jī)票預(yù)定時(shí)輸入旅客根本信息系統(tǒng)為旅客安排航班打印取票通知和帳單旅客在飛機(jī)起飛前一天憑取票通知交款取票旅客能夠退訂機(jī)票能夠查詢(xún)每個(gè)航班的預(yù)定情況、計(jì)算航班的滿(mǎn)座率。1.2.2數(shù)據(jù)庫(kù)要求在數(shù)據(jù)庫(kù)中至少應(yīng)該包含以下數(shù)據(jù)表航班信息表航班坐位情況表旅客訂票信息表取票通知表帳單。二.需求分析背景分析隨著社會(huì)開(kāi)展的不斷進(jìn)步民航事業(yè)的壯大人們消費(fèi)水平的提高乘坐民航的消費(fèi)者也越來(lái)越多旅游也逐漸成為普通老百姓的生活組成局部飛機(jī)票預(yù)定查詢(xún)系統(tǒng)在各機(jī)票預(yù)定網(wǎng)點(diǎn)中的作用也越顯重要。目前我國(guó)一些旅行社和酒店的機(jī)票預(yù)定還停留在人工處理階段這已經(jīng)嚴(yán)重制約了工作效率在計(jì)算機(jī)技術(shù)高速開(kāi)展的今天有必要引入高效的計(jì)算機(jī)系統(tǒng)來(lái)協(xié)助處理機(jī)票預(yù)定工作。因此開(kāi)發(fā)一套具有完整的存儲(chǔ)查詢(xún)核對(duì)打印機(jī)票功能的實(shí)時(shí)機(jī)票預(yù)定系統(tǒng)勢(shì)在必行。機(jī)票預(yù)定系統(tǒng)是為機(jī)場(chǎng)工作人員和客戶(hù)提供訂票退票等與機(jī)票相關(guān)內(nèi)容和管理的系統(tǒng)它具有開(kāi)放體系構(gòu)造的、易擴(kuò)大的、易維護(hù)的、具有良好人機(jī)界面的優(yōu)點(diǎn).它除克制了存儲(chǔ)乘客信息少查詢(xún)效率低下等問(wèn)題外更重要的是其安全性可靠性實(shí)現(xiàn)航空公司的機(jī)票銷(xiāo)售的自動(dòng)化。它為企業(yè)的決策層提供準(zhǔn)確、精細(xì)、迅速的機(jī)票銷(xiāo)售信息為乘客出行提供方便便于機(jī)場(chǎng)工作人員對(duì)機(jī)票信息進(jìn)展管理提高了機(jī)場(chǎng)工作人員對(duì)機(jī)票管理的工作效率。2.2功能分析經(jīng)過(guò)綜合分析確定了機(jī)票預(yù)訂系統(tǒng)主要包括以下功能(1)航班信息管理功能主要實(shí)現(xiàn)航班的一些根本信息航班編號(hào)、票價(jià)、起飛地、目的地、起飛時(shí)間的添加、修改、刪除和查詢(xún)。(2)航班座位信息管理功能主要實(shí)現(xiàn)航班座位也就是機(jī)票的一些根本信息航班編號(hào)、座位號(hào)、座位信息、機(jī)票類(lèi)型的添加、修改、刪除和查詢(xún)。(3)旅客信息管理功能此模塊的主要實(shí)現(xiàn)旅客一些根本信息姓名、性別、聯(lián)系方式、證件號(hào)碼、的查詢(xún)功能。(4)取票信息管理功能此模塊用于取票信息的管理包括對(duì)航班根本信息航班編號(hào)等旅客根本信息旅客姓名、座位號(hào)、取票時(shí)間的查詢(xún)。(5)退票信息管理功能此模塊用于退票信息的管理包括對(duì)訂單號(hào)、旅客姓名、聯(lián)系方式、證件號(hào)碼的查詢(xún)。2.3數(shù)據(jù)詞典經(jīng)分析之后,本系統(tǒng)要用到五個(gè)根本表:航班信息表、航班座位情況表、旅客訂票信息表、取票和賬單信息表、退票信息表。數(shù)據(jù)構(gòu)造定義如表數(shù)據(jù)構(gòu)造名含義說(shuō)明組成航班信息表定義了航班航班號(hào)起飛地目的地起飛時(shí)間航班座位情況定義了航班座位有關(guān)信息航班號(hào)座位號(hào),座位信息機(jī)票類(lèi)型表旅客訂票信息定義了旅客有關(guān)信息旅客姓名身份證號(hào)性別號(hào)表取票和賬單信定義了取票通知相關(guān)有關(guān)信息旅客姓名取票時(shí)間航班號(hào)座位息表號(hào)機(jī)票類(lèi)型退票信息表定義了退票旅客的有關(guān)信息旅客姓名身份證號(hào)訂單號(hào)機(jī)票預(yù)訂系統(tǒng)的主要數(shù)據(jù)字典如下1航班信息數(shù)據(jù)流來(lái)源航班管理數(shù)據(jù)流去向航班安排數(shù)據(jù)項(xiàng)組成航班號(hào)起飛地目的地起飛時(shí)間票價(jià)2航班座位情況數(shù)據(jù)流來(lái)源航班管理和訂票情況數(shù)據(jù)流去向旅客座位數(shù)據(jù)項(xiàng)組成航班號(hào)座位號(hào),座位信息機(jī)票類(lèi)型3旅客信息數(shù)據(jù)流來(lái)源確定旅客信息后管理人員輸入系統(tǒng)數(shù)據(jù)流去向安排顧客的航班數(shù)據(jù)項(xiàng)組成旅客姓名身份證號(hào)性別號(hào)4取票通知和賬單信息數(shù)據(jù)流來(lái)源打印取票通知和賬單數(shù)據(jù)流去向核對(duì)訂票信息數(shù)據(jù)項(xiàng)組成旅客姓名取票時(shí)間航班號(hào)座位號(hào)機(jī)票類(lèi)型5退票信息數(shù)據(jù)流來(lái)源旅客退票申請(qǐng)數(shù)據(jù)流去向訂票信息申請(qǐng)退票數(shù)據(jù)項(xiàng)組成旅客姓名身份證號(hào)訂單號(hào)號(hào)三.概念構(gòu)造設(shè)計(jì)概念構(gòu)造設(shè)計(jì)的方法與步驟1概念構(gòu)造設(shè)計(jì)的方法概念設(shè)計(jì)階段我采用自底向上的方法即自頂向下的進(jìn)展需求分析然后再自底向上的進(jìn)展概念構(gòu)造設(shè)計(jì)。對(duì)已經(jīng)細(xì)化到無(wú)法再分的階段逐步集成在一起最終合成一個(gè)全局概念模式。2概念構(gòu)造設(shè)計(jì)的步驟第一步是進(jìn)展局部視圖的設(shè)計(jì)由于高層的數(shù)據(jù)流圖只能反映系統(tǒng)的概貌而中層流圖能較好的反映系統(tǒng)中各局部應(yīng)用的子系統(tǒng)組成。因此我們先逐一的設(shè)計(jì)分E-R圖。第二步是進(jìn)展視圖的集成各子系統(tǒng)的E-R圖設(shè)計(jì)好之后下一步就是要將所有的分E-R圖合成一個(gè)系統(tǒng)的總E-R圖一般有兩個(gè)方式多個(gè)分E-R圖一次集成另一種是一次集成兩個(gè)分E-R圖。我想采用一次集成兩個(gè)分E-R圖的方式。3.2局部E-R圖設(shè)計(jì)根據(jù)需求分析抽象出信息構(gòu)造可得該系統(tǒng)的E-R圖。(1)航班信息E-R圖如圖3.1所示。起飛地起飛時(shí)間目的地航班編號(hào) 票價(jià)航班信息圖航班信息E-R圖(2)航班座位信息E-R圖如圖3.2所示。座位號(hào) 座位信息機(jī)票類(lèi)型航班編號(hào)航班座位信息3.2機(jī)票信息E-R圖旅客E-R圖如圖所示。身份證號(hào) 性別號(hào)姓名旅客圖旅客E-R圖(4)取票通知E-R圖如圖3.4所示。機(jī)票類(lèi)型旅客姓名座位號(hào)取票時(shí)間航班編號(hào)取票通知和賬單3.4取票通知E-R圖退票信息E-R圖如圖所示。訂單號(hào) 身份證號(hào)號(hào)旅客姓名退票信息3.5退票信息E-R圖總體概念E-R圖構(gòu)造經(jīng)過(guò)逐步細(xì)化再進(jìn)展每?jī)蓚€(gè)一集成初步形成一個(gè)E-R圖最后得到圖總體概念構(gòu)造E-R圖。邏輯構(gòu)造設(shè)計(jì)4.1邏輯構(gòu)造設(shè)計(jì)1E-R圖向關(guān)系模型的轉(zhuǎn)換將圖總體概念構(gòu)造E-R圖轉(zhuǎn)化成關(guān)系模型。退票信息訂單號(hào)旅客姓名聯(lián)系方式證件號(hào)碼旅客旅客姓名證件號(hào)碼聯(lián)系方式性別)航班信息表航班號(hào)票價(jià)起飛地目的地起飛時(shí)間取票通知單旅客姓名取票時(shí)間證件號(hào)碼航班號(hào)座位號(hào)機(jī)票信息表座位號(hào)航班號(hào)座位信息機(jī)票類(lèi)型2數(shù)據(jù)模型的優(yōu)化將轉(zhuǎn)化的關(guān)系模式進(jìn)展優(yōu)化最終到達(dá)第三范式。確定數(shù)據(jù)依賴(lài)退票信息訂單號(hào)旅客姓名聯(lián)系方式證件號(hào)碼根據(jù)這個(gè)關(guān)系寫(xiě)出數(shù)據(jù)依賴(lài)訂單號(hào)→旅客姓名訂單號(hào)→聯(lián)系方式訂單號(hào)→證件號(hào)碼旅客旅客姓名證件號(hào)碼聯(lián)系方式性別)旅客姓名→證件號(hào)碼旅客姓名→聯(lián)系方式旅客姓名→性別航班信息表航班號(hào)票價(jià)起飛地目的地起飛時(shí)間航班號(hào)→起飛地航班號(hào)→票價(jià)航班號(hào)→目的地航班號(hào)→起飛時(shí)間取票通知單旅客姓名取票時(shí)間航班號(hào)座位號(hào)旅客姓名→取票時(shí)間旅客姓名→航班號(hào)旅客姓名→座位號(hào)機(jī)票信息表座位號(hào)航班號(hào)座位信息機(jī)票類(lèi)型座位號(hào)航班號(hào)→艙位類(lèi)型座位號(hào)航班號(hào)座位信息→機(jī)票類(lèi)型對(duì)各關(guān)系模式間數(shù)據(jù)依賴(lài)進(jìn)展極小化處理消除冗余訂單號(hào)→旅客姓名訂單號(hào)→聯(lián)系方式訂單號(hào)→證件號(hào)碼旅客姓名→性別旅客姓名→取票時(shí)間旅客姓名→航班號(hào)旅客姓名→座位號(hào)旅客姓名→機(jī)票類(lèi)型航班號(hào)→起飛地航班號(hào)→目的地航班號(hào)→起飛時(shí)間座位號(hào)航班號(hào)→座位信息看這些模式是否符合要求確定是否要對(duì)某些模式進(jìn)展合并或者分解最終分解成第三范式訂單號(hào)聯(lián)系方式證件號(hào)碼訂單號(hào)旅客姓名旅客姓名取票時(shí)間性別機(jī)票類(lèi)型旅客姓名航班號(hào)旅客姓名座位號(hào)航班號(hào)座位號(hào)票價(jià)航班號(hào)起飛地目的地起飛時(shí)間3數(shù)據(jù)庫(kù)的構(gòu)造根據(jù)總體構(gòu)造圖設(shè)計(jì)機(jī)票預(yù)定系統(tǒng)根本表構(gòu)造其相應(yīng)標(biāo)的定義如下4.2數(shù)據(jù)庫(kù)表的建立需要明確數(shù)據(jù)庫(kù)需要建幾張表,以及每張表包括的屬性。在建立每張表的過(guò)程中,需要對(duì)表進(jìn)展字段屬性的設(shè)置。在機(jī)票預(yù)訂管理系統(tǒng)中,要建立六張表,分別是:訂單信息表,旅客信息表,航班信息表,機(jī)票信息表,取票通知單表,退票通知表。表4.2.1訂單信息表Table5-1ofthebookinginformationform表4.2.2旅客信息表Table5-2passengersinformationtable表4.2.3航班信息表Table5-3flightinformationtable表4.2.4機(jī)票信息表Tableticketinformationtable表退票信息表Tablerefundinformationtable視圖的建立視圖是查看數(shù)據(jù)庫(kù)的一種方式,視圖提供了存儲(chǔ)預(yù)定義的查詢(xún)語(yǔ)句作為數(shù)據(jù)庫(kù)中的對(duì)象,具備以后使用的能力。視圖是一種邏輯對(duì)象,是一種虛擬表。五.物理構(gòu)造設(shè)計(jì)數(shù)據(jù)庫(kù)物理設(shè)計(jì)是指設(shè)計(jì)出數(shù)據(jù)庫(kù)的物理數(shù)據(jù)模型它是數(shù)據(jù)庫(kù)在物理設(shè)備上的具體實(shí)現(xiàn)即數(shù)據(jù)庫(kù)效勞器物理空間上的表空間、表、字段、索引、視圖、存儲(chǔ)過(guò)程、觸發(fā)器以及相應(yīng)的數(shù)字字典的設(shè)計(jì)。經(jīng)過(guò)數(shù)據(jù)庫(kù)的需求分析和概念模型設(shè)計(jì)得到數(shù)據(jù)庫(kù)的邏輯構(gòu)造現(xiàn)在可以設(shè)計(jì)好的邏輯構(gòu)造在SQLserver中建立數(shù)據(jù)庫(kù)及數(shù)據(jù)庫(kù)的數(shù)據(jù)表。5.1表的建立與數(shù)據(jù)載入需要明確數(shù)據(jù)庫(kù)需要建立幾張表以及每個(gè)表中所要包括的屬性。在建立表的過(guò)程中。要對(duì)每個(gè)表進(jìn)展字段屬性的設(shè)置。至少包括5張表每個(gè)表都有主鍵根據(jù)實(shí)際情況建立視圖在機(jī)票預(yù)訂系統(tǒng)中主要建立了5個(gè)表分別是航班信息表航班座位情況表旅客訂票信息表取票和賬單信息表退票信息表。5.2視圖建立視圖是查看數(shù)據(jù)庫(kù)表中數(shù)據(jù)的一種方式。視視圖提供了存儲(chǔ)預(yù)定義的查詢(xún)語(yǔ)句作為數(shù)據(jù)庫(kù)中的對(duì)象以備以后使用的能力。視圖是一種邏輯對(duì)象是一種虛擬表。在機(jī)票預(yù)訂系統(tǒng)中我建立了兩個(gè)視圖。分別是航班和座位視圖和旅客和取票信息視圖。他們分別通過(guò)飛機(jī)編號(hào)也就是flightnumber項(xiàng)和旅客信息也就是passagename項(xiàng)聯(lián)系起來(lái)。5.3索引建立索引是一個(gè)單獨(dú)的、物理的數(shù)據(jù)庫(kù)構(gòu)造它是某個(gè)表中一列或假設(shè)干列值的集合和相應(yīng)的指向表中物理標(biāo)識(shí)這些值的數(shù)據(jù)頁(yè)的邏輯指針清單。索引依賴(lài)于表建立它提供了數(shù)據(jù)庫(kù)中編排表中數(shù)據(jù)的內(nèi)部方法。在機(jī)票預(yù)訂系統(tǒng)中我建立了三個(gè)索引分別是在航班信息表中建立了flightnumber索引在旅客信息表中建立passagename索引在航班座位信息表中建立了seatnumber索引。索引類(lèi)型為唯一性的非聚集索引。5.4存儲(chǔ)過(guò)程我創(chuàng)立了三個(gè)存儲(chǔ)過(guò)程輸出三個(gè)表的全部信息。分別是航班信息表、航班座位信息表、旅客信息表。命令為CREATEPROCaaaASSELECT*FROMFlightnumberCREATEPROCbbbASSELECT*FROMSeatnumberCREATEPROCcccASSELECT*FROMPassagename5.5觸發(fā)器觸發(fā)器是一種實(shí)施復(fù)雜的完整性約束的特殊存儲(chǔ)過(guò)程它在SQLserver進(jìn)行某個(gè)特定的表修改時(shí)由SQLServer自動(dòng)執(zhí)行。觸發(fā)器一般用于加強(qiáng)數(shù)據(jù)庫(kù)的某些使用規(guī)那么。在機(jī)票管理系統(tǒng)中我建立了一個(gè)DDL觸發(fā)器用于保護(hù)當(dāng)前SQLServer效勞器里的所有數(shù)據(jù)庫(kù)不被刪除。具體代碼為CREATETRIGGERnotdeleteONallserverFORDROP_DATABASEASPRINT’不能刪除數(shù)據(jù)庫(kù)’ROLLBACKGO另外分別在航班信息表、航班座位信息表、旅客信息表、取票通知和賬單這四個(gè)表中建立了四個(gè)觸發(fā)器對(duì)于表中的添加和更改數(shù)據(jù)提示錯(cuò)誤信息。代碼為CREATETRIGGERaONflightnumberFORINSERT,UPDATEASRAISERROR('不能添加和更新數(shù)據(jù)',16,1)ROLLBACKTRANSACTIONGOCREATETRIGGERbONflightnumberFORINSERT,UPDATEASRAISERROR('不能添加和更新數(shù)據(jù)',16,1)ROLLBACKTRANSACTIONGOCREATETRIGGERcONpassagenumberFORINSERT,UPDATEASRAISERROR('不能添加和更新數(shù)據(jù)',16,1)ROLLBACKTRANSACTIONGOCREATETRIGGERdONGettickettimeFORINSERT,UPDATEASRAISERROR('不能添加和更新數(shù)據(jù)',16,1)ROLLBACKTRANSACTIONGO5.6創(chuàng)立登陸賬戶(hù)和添加數(shù)據(jù)庫(kù)用戶(hù)在實(shí)訓(xùn)中我利用SQL創(chuàng)立了一個(gè)“l(fā)ogin1〞的登陸賬號(hào)。密碼為123456。在一個(gè)數(shù)據(jù)庫(kù)中用戶(hù)賬號(hào)唯一標(biāo)識(shí)一個(gè)用戶(hù)用戶(hù)對(duì)數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)權(quán)限以及對(duì)數(shù)據(jù)庫(kù)對(duì)象的所有關(guān)系都是通過(guò)用戶(hù)賬號(hào)來(lái)控制的。在機(jī)票預(yù)訂系統(tǒng)中我創(chuàng)立了一個(gè)用戶(hù)名為user1的用戶(hù)。六.數(shù)據(jù)流圖及程序構(gòu)造框圖6.1功能模塊圖根據(jù)所需的功能可以設(shè)計(jì)出系統(tǒng)的總體功能模塊如圖所示。機(jī)票預(yù)訂系統(tǒng)航機(jī)旅取退班票客票票信信信信信息息息息息管管管管管理理理理理模模模模模圖機(jī)票預(yù)訂系統(tǒng)功能模塊示意圖取票信息管理模塊的細(xì)化功能模塊如圖所示。數(shù)據(jù)流圖取票信息管理旅客根本信息查詢(xún) 機(jī)票根本信息查詢(xún)圖取票信息管理模塊退票信息管理模塊的細(xì)化功能模塊如圖所示。取票信息管理旅客根本信息查詢(xún)訂單信息查詢(xún)6.3退票信息管理模塊訂票信息旅客機(jī)票預(yù)訂系統(tǒng)旅客機(jī)票付費(fèi)信息圖6.40層數(shù)據(jù)流圖通知、賬單信息旅客信息訂票旅客旅客取票 通知、賬單信息圖6.51層數(shù)據(jù)流圖七.界面設(shè)計(jì)與功能測(cè)試登錄界面及代碼usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Data.SqlClient;namespaceWindowsApplication2publicpartialclassForm6:FormpublicForm6()InitializeComponent();publicSqlConnectionconn;privatevoidlabel3_Click(objectsender,EventArgse)privatevoidbutton1_Click(objectsender,EventArgse)Form1f=newForm1();conn.Open();stringuname=this.textBox1.Text.ToString();stringupassword=this.textBox2.Text.ToString();SqlCommandthiscommand=conn.CreateCommand();thiscommand.CommandText="select管理員賬號(hào),管理員密碼from管理員where管理員賬號(hào)='"+uname+"'";SqlDataReaderthisreader=thiscommand.ExecuteReader();if(thisreader.Read())if(thisreader["管理員密碼"].ToString().Trim()==upassword)MessageBox.Show("恭喜您登陸成功!","登陸成功!",MessageBoxButtons.OK,MessageBoxIcon.Information);//yhxxtt=newyhxx();//tt.Show();//this.Close();//關(guān)閉當(dāng)前窗體//newForm1().Hide();this.Visible=false;//當(dāng)前窗口不可見(jiàn)f.Show();//newForm2().Show();//form2顯示newForm2().Show();}elseMessageBox.Show("密碼錯(cuò)誤,請(qǐng)重新輸入!","錯(cuò)誤",MessageBoxButtons.OK,MessageBoxIcon.Information);conn.Close();privatevoidForm6_Load(objectsender,EventArgse)stringMyConn="server=.;DataSource=,7788;InitialCatalog=機(jī)票預(yù)訂系統(tǒng);IntegratedSecurity=True";conn=newSqlConnection(MyConn);7.2進(jìn)入系統(tǒng)界面usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;namespaceWindowsApplication2publicpartialclassForm1:FormpublicForm1()InitializeComponent();privatevoidForm1_Load(objectsender,EventArgse)privatevoidbutton1_Click(objectsender,EventArgse)Form2f=newForm2();f.Show();privatevoidbutton2_Click(objectsender,EventArgse)Form2A=newForm2();A.Show();//Afrm2=newA();//frm2.Show();7.3訂票過(guò)程usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;namespaceWindowsApplication2publicpartialclassForm2:FormpublicForm2()InitializeComponent();privatevoidbutton1_Click(objectsender,EventArgse)Form3f=newForm3();f.Show();privatevoidbutton2_Click(objectsender,EventArgse)Form4f=newForm4();f.Show();privatevoidbutton3_Click(objectsender,EventArgse)privatevoidForm2_Load(objectsender,EventArgse)usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Data.SqlClient;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;namespaceWindowsApplication2publicpartialclassForm3:FormpublicForm3()InitializeComponent();publicSqlConnectionconn;privatevoidbutton1_Click(objectsender,EventArgse)stringMyInsert="insertinto訂單信息表values('"+textBox1.Text+"','"+textBox2.Text+"','"+textBox3.Text+"','"+textBox4.Text+"','"+textBox5.Text+"','"+textBox6.Text+"','"+textBox7.Text+"','"+textBox8.Text+"','"+textBox9.Text+"','"+textBox10.Text+"','"+textBox11.Text+"','"+textBox12.Text+"','"+textBox13.Text+"')";SqlCommandMyCommand=newSqlCommand(MyInsert,conn);conn.Open();MyCommand.ExecuteNonQuery();conn.Close();MessageBox.Show("成功","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);//stringMyConn="server=.;DataSource=,7788;InitialCatalog=機(jī)票預(yù)訂系統(tǒng);IntegratedSecurity=True";//SqlConnectionconn=newSqlConnection(MyConn);//try////conn.Open();//catch{MessageBox.Show("數(shù)據(jù)庫(kù)連接失敗");return;}//stringsql="insertinto訂單信息表(訂單號(hào),身份證號(hào),航班號(hào),座位號(hào),旅客姓名,性別,工作單位,號(hào)碼,起飛地,目的地,起飛時(shí)間,訂單時(shí)間,訂單數(shù)量)values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}','{12}')",textBox1.Text.Trim(),textBox2.Text.Trim(),textBox3.Text.Trim(),textBox4.Text.Trim(),textBox5.Text.Trim(),textBox6.Text.Trim(),textBox7.Text.Trim(),textBox8.Text.Trim(),textBox9.Text.Trim(),textBox10.Text.Trim(),textBox11.Text.Trim(),textBox12.Text.Trim(),textBox13.Text.Trim());//SqlCommandsqlCmd=newSqlCommand(sql,conn);//SqlDataAdapterda=newSqlDataAdapter(sql,conn);;//實(shí)例化sqldataadpter//DataSetds1=newDataSet();//實(shí)例化dataset//da.Fill(ds1);//把數(shù)據(jù)填充到dataset//dataGridView1.DataSource=ds1.Tables[0];//將數(shù)據(jù)集綁定datagridview,完成顯//conn.Close();privatevoidForm3_Load(objectsender,EventArgse)//stringMyConn="server=.;DataSource=,7788;InitialCatalog=機(jī)票預(yù)訂系統(tǒng);IntegratedSecurity=True";//SqlConnectionconn=newSqlConnection(MyConn);stringMyConn="server=.;DataSource=,7788;InitialCatalog=機(jī)票預(yù)訂系統(tǒng);IntegratedSecurity=True";conn=newSqlConnection(MyConn);privatevoidlabel14_Click(objectsender,EventArgse)usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Data.SqlClient;namespaceWindowsApplication2publicpartialclassForm4:FormpublicstaticForm4f=null;publicForm4()InitializeComponent();f=this;publicSqlConnectionconn;publicstringtoos()stringa=textBox1.Text;returna;privatevoidbutton1_Click(objectsender,EventArgse)//stringMyConn="server=.;DataSource=,7788;InitialCatalog=機(jī)票預(yù)訂系統(tǒng);IntegratedSecurity=True";//conn=newSqlConnection(MyConn);stringMyInsert="select*from訂單信息表where訂單號(hào)='"+textBox1.Text+"'";SqlCommandMyCommand=newSqlCommand(MyInsert,conn);tryconn.Open();catch{MessageBox.Show("數(shù)據(jù)庫(kù)連接失敗");return;}objecto=MyCommand.ExecuteScalar();if(o==null)MessageBox.Show("不存在此記錄","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);elseSqlDataAdapterDA=newSqlDataAdapter(MyInsert,conn);DataSetdsl=newDataSet();DA.Fill(dsl);dataGridView1.DataSource=dsl.Tables[0];tryconn.Close();catch{return;}//MyCommand.ExecuteNonQuery();//conn.Close();//MessageBox.Show("成功","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);//stringMyConn="server=.;DataSource=,7788;InitialCatalog=機(jī)票預(yù)訂系統(tǒng);IntegratedSecurity=True";//SqlConnectionconn=newSqlConnection(MyConn);privatevoiddataGridView1_CellContentClick(objectsender,DataGridViewCellEventArgse)privatevoidForm4_Load(objectsender,EventArgse)stringMyConn="server=.;DataSource=,7788;InitialCatalog=機(jī)票預(yù)訂系統(tǒng);IntegratedSecurity=True";conn=newSqlConnection(MyConn);privatevoidbutton2_Click(objectsender,EventArgse)stringMyInsert="deletefrom訂單信息表where訂單號(hào)='"+textBox1.Text+"'";

溫馨提示

  • 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)論