




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、黃河科技學(xué)院畢業(yè)論文 第 II 頁(yè)單位代碼 01 學(xué) 號(hào) 1403010001 分 類 號(hào) TP315 密 級(jí) 畢業(yè)設(shè)計(jì)說(shuō)明書(shū)網(wǎng)上航空訂票系統(tǒng)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 院(系)名稱信息工程學(xué)院 專業(yè)名稱14計(jì)科專升本 學(xué)生姓名鄭智杰 指導(dǎo)教師杜獻(xiàn)峰2016年5月15日黃河科技學(xué)院畢業(yè)設(shè)計(jì)說(shuō)明書(shū) 第IV頁(yè) 網(wǎng)上航空訂票系統(tǒng)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘 要隨著人們生活質(zhì)量的提升,物質(zhì)文化需求的提高及各類交通工具也應(yīng)運(yùn)而生?,F(xiàn)階段出外旅行及出差的人越來(lái)越多,而飛機(jī)快速、價(jià)低、便捷等優(yōu)點(diǎn)開(kāi)始成為越來(lái)越多人的選擇。從而一個(gè)好的航空信息管理系統(tǒng)變得越來(lái)越重要。管理信息系統(tǒng)的實(shí)施在技術(shù)上已逐步成熟、越來(lái)越深入而廣泛的應(yīng)用,管
2、理信息系統(tǒng)是一個(gè)不斷發(fā)展的新型學(xué)科,就要高效率地建立與自身特點(diǎn)相適應(yīng)的管理信息系統(tǒng),該系統(tǒng)是完成一個(gè)基于票務(wù)管理、飛機(jī)航線航班管理、幫助出行等特殊服務(wù)以及查詢業(yè)務(wù)的航空信息管理系統(tǒng)。使用C#語(yǔ)言進(jìn)行代碼的編寫(xiě),對(duì)于底層平臺(tái)的依賴更少,其組件具有更強(qiáng)的實(shí)用性;系統(tǒng)框架使用MVC框架,MVC架構(gòu)完全支持松耦合,高可維護(hù)性的開(kāi)發(fā)模式。數(shù)據(jù)庫(kù)使用 SQL Server2014版本進(jìn)行數(shù)據(jù)的管理,SQL Server的數(shù)據(jù)庫(kù)服務(wù)器具有快速、可靠和易于使用、穩(wěn)定性高、可移植性強(qiáng)的特點(diǎn)。系統(tǒng)最終達(dá)到的效效果遠(yuǎn)遠(yuǎn)高于用戶的需求,快捷方便的為用戶服務(wù),既能提高工作人員的效率,又降低人為出錯(cuò)的幾率。數(shù)據(jù)方便統(tǒng)計(jì)與
3、管理,大大節(jié)約了數(shù)據(jù)存儲(chǔ)的成本。關(guān)鍵詞: C#,MVC,SQL ServerThe Design and implementation of online airline booking systemAuthor:Zheng ZhijieTutor:Du XianfengAbstractWith the enhancement of people's quality of life, and to improve the material and cultural needs of all types of vehicles have emerged. Present to trave
4、l on business and more and more people, and the plane fast, low price, convenience and other advantages became more and more people to choose from. Thus a good aeronautical information management system becomes increasingly important.Implementation of management information system has gradually matu
5、red technically, more in-depth and extensive application of new management information system is an evolving discipline, it is necessary to establish efficient management information system with its own characteristics, the system is based on the completion of ticketing management, management of air
6、craft flight routes, travel assistance and other special services and querying business aviation information management system. Use C # language to write code, and less dependence on the underlying platform, the assembly has a more practical; system framework using MVC framework, MVC architecture fu
7、lly supports loosely coupled, maintainable development model. Use version of SQL Server2014 database to manage the data, the database server SQL Server has a fast, reliable and easy to use, high stability, portability features. System and ultimately achieve the effect is much higher than the efficie
8、ncy of the user's needs, fast and convenient services for users, both to improve the efficiency of the staff, but also reduce the chance of human error. To facilitate data management and statistics, a significant reduction in the cost of data storage.Keywords: C#,MVC,SQL Server 目 錄 1 引 言11.1 項(xiàng)目背
9、景11.2 研究現(xiàn)狀21.3 項(xiàng)目意義22 需求分析32.1 系統(tǒng)環(huán)境需求32.2 功能需求分析33 系統(tǒng)功能設(shè)計(jì)53.1概念結(jié)構(gòu)設(shè)計(jì)53.1.1概念模型53.1.2物理模型73.2數(shù)據(jù)庫(kù)分析83.2.1數(shù)據(jù)庫(kù)描述83.2.2數(shù)據(jù)表設(shè)計(jì)83.2.3數(shù)據(jù)庫(kù)優(yōu)化方法124 系統(tǒng)功能實(shí)現(xiàn)154.1 系統(tǒng)登陸與注冊(cè)界面實(shí)現(xiàn)154.2 網(wǎng)站首頁(yè)及機(jī)票展示界面實(shí)現(xiàn)184.3 提交訂單及訂單列表界面實(shí)現(xiàn)234.4 賬戶充值及資產(chǎn)動(dòng)態(tài)界面實(shí)現(xiàn)295 系統(tǒng)測(cè)試3551 測(cè)試方法3552 測(cè)試過(guò)程355.2.1 登錄界面測(cè)試355.2.2 系統(tǒng)功能測(cè)試3553 測(cè)試總結(jié)36結(jié) 論37致 謝38參考文獻(xiàn)39附 錄4
10、0源程序代碼40黃河科技學(xué)院畢業(yè)設(shè)計(jì)說(shuō)明書(shū) 第48頁(yè)1 引 言1.1 項(xiàng)目背景隨著人們生活質(zhì)量的提升,物質(zhì)文化需求的提高及各類交通工具也應(yīng)運(yùn)而生?,F(xiàn)階段出外旅行及出差的人越來(lái)越多,而飛機(jī)快速、價(jià)低、便捷等優(yōu)點(diǎn)開(kāi)始成為越來(lái)越多人的選擇。從而一個(gè)好的航空信息管理系統(tǒng)變得越來(lái)越重要。管理信息系統(tǒng)的實(shí)施在技術(shù)上已逐步成熟、越來(lái)越深入而廣泛的應(yīng)用,管理信息系統(tǒng)是一個(gè)不斷發(fā)展的新型學(xué)科,就要高效率地建立與自身特點(diǎn)相適應(yīng)的管理信息系統(tǒng),該系統(tǒng)是完成一個(gè)基于票務(wù)管理、飛機(jī)航線航班管理、幫助出行等特殊服務(wù)以及查詢業(yè)務(wù)的航空信息管理系統(tǒng)。網(wǎng)上航空訂票系統(tǒng)將可以為用戶提供在網(wǎng)上訂購(gòu)機(jī)票,航班信息查詢、航班時(shí)間等一系
11、列功能,這些都是開(kāi)拓航空機(jī)票業(yè)務(wù)能力的十分有效的手段,不僅能夠提高常用戶的方便、快捷的使用,還能夠提高公司效率以及降低運(yùn)營(yíng)成本,同時(shí)非常適應(yīng)現(xiàn)在越來(lái)越進(jìn)步的互聯(lián)網(wǎng)時(shí)代,所以網(wǎng)上航空訂票系統(tǒng)的開(kāi)發(fā)應(yīng)用將是未來(lái)航空訂票服務(wù)的趨勢(shì)。隨著,社會(huì)的進(jìn)步,互聯(lián)網(wǎng)、計(jì)算機(jī)等技術(shù)的飛速發(fā)展并與社會(huì)各個(gè)方面領(lǐng)域的深度融合,已經(jīng)融入了人們的生活之中,成為了必不可分的一部分。目前,我國(guó)對(duì)信息化的基礎(chǔ)建設(shè)的加大以及信息化基礎(chǔ)建設(shè)的普及,在這種國(guó)家大力發(fā)展信息化基礎(chǔ)建設(shè)的大背景、大環(huán)境下,網(wǎng)上航空訂票系統(tǒng)的信息化建設(shè)也在朝著越來(lái)越嚴(yán)密、越來(lái)越科學(xué)、越來(lái)越完善的管理體系進(jìn)行更高、更快的發(fā)展。這是一個(gè)十分具有意義的項(xiàng)目,這
12、個(gè)項(xiàng)目的開(kāi)發(fā)與實(shí)現(xiàn)不僅可以使用戶更加的方便訂票出行,而且可以減輕銷售機(jī)票人員的工作強(qiáng)度,更加提高公司的業(yè)務(wù)效率和拓寬企業(yè)銷售渠道以及知名程度,從而提高了整個(gè)公司的整體營(yíng)運(yùn)能力,盈利水平和增強(qiáng)企業(yè)競(jìng)爭(zhēng)力。隨著互聯(lián)網(wǎng)更進(jìn)一步發(fā)展和應(yīng)用,越來(lái)越融入人們生活的同時(shí),加強(qiáng)通過(guò)網(wǎng)上訂票等越來(lái)越高方便,快捷的訂票方式和越來(lái)越便捷的服務(wù)方式,為企業(yè)的發(fā)展提供了方向,只有迎合消費(fèi)者的利益,讓消費(fèi)者滿意,才會(huì)為公司將來(lái)的競(jìng)爭(zhēng)中取得越來(lái)越大的知名度和經(jīng)濟(jì)效益。這個(gè)系統(tǒng)的特點(diǎn)十分的鮮明:一是消費(fèi)者直接網(wǎng)上進(jìn)行訂票十分方便、便捷,可以不需要去售票點(diǎn)買(mǎi)票,工作繁忙沒(méi)有空閑時(shí)間的時(shí)候,直接就可以買(mǎi)到機(jī)票了。二是可以選擇各個(gè)
13、航空公司的機(jī)票,可以根據(jù)消費(fèi)者乘坐經(jīng)驗(yàn),選擇消費(fèi)自己認(rèn)為服務(wù)周到的航空公司。目前網(wǎng)上航空訂票系統(tǒng)存在著許多的不足:版本兼容性、拓展性、軟件版本低、復(fù)用率低、不夠方便靈活,對(duì)于上面的這些不足之處,以網(wǎng)上的攜程、途牛、去哪兒等網(wǎng)上電子商務(wù)網(wǎng)上航空訂票系統(tǒng)就很好的解決了這些問(wèn)題。1.2 研究現(xiàn)狀管理信息系統(tǒng)的實(shí)施在技術(shù)上已逐步成熟、越來(lái)越深入而廣泛的應(yīng)用,管理信息系統(tǒng)是一個(gè)不斷發(fā)展的新型學(xué)科,就要高效率地建立與自身特點(diǎn)相適應(yīng)的管理信息系統(tǒng),該系統(tǒng)是完成一個(gè)基于票務(wù)管理、飛機(jī)航線航班管理、幫助出行等特殊服務(wù)以及查詢業(yè)務(wù)的航空信息管理系統(tǒng)。根據(jù)目前電子商務(wù)公司以及航空公司各種各樣的開(kāi)發(fā)平臺(tái)與管理系統(tǒng)、軟
14、件系統(tǒng)互相之間不配套、不兼容,不能進(jìn)行互聯(lián)互通。例如:分布式對(duì)象技術(shù)在跨平臺(tái)以及對(duì)網(wǎng)上一些應(yīng)用軟件伸縮性的適應(yīng)會(huì)出現(xiàn)很多問(wèn)題,防火墻如何通過(guò),協(xié)議怎么匹配。比如:當(dāng)消費(fèi)者遇見(jiàn)航空機(jī)票日期更改,改簽等問(wèn)題的時(shí)候,由于各個(gè)系統(tǒng)之間的不兼容導(dǎo)致了不能進(jìn)行更改,為消費(fèi)者帶來(lái)了不便,所以,首先我們就要對(duì)如何解決網(wǎng)上航空的票系統(tǒng)的兼容性問(wèn)題進(jìn)行研究。本系統(tǒng)使用C#語(yǔ)言進(jìn)行代碼的編寫(xiě),對(duì)于底層平臺(tái)的依賴更少,其組件具有更強(qiáng)的實(shí)用性;系統(tǒng)框架使用MVC框架,MVC架構(gòu)完全支持松耦合,高可維護(hù)性的開(kāi)發(fā)模式。數(shù)據(jù)庫(kù)使用 SQL Server2014版本進(jìn)行數(shù)據(jù)的管理,SQL Server的數(shù)據(jù)庫(kù)服務(wù)器具有快速、可
15、靠和易于使用、穩(wěn)定性高、可移植性強(qiáng)的特點(diǎn)。系統(tǒng)最終達(dá)到的效效果遠(yuǎn)遠(yuǎn)高于用戶的需求,快捷方便的為用戶服務(wù),既能提高工作人員的效率,又降低人為出錯(cuò)的幾率。數(shù)據(jù)方便統(tǒng)計(jì)與管理,大大節(jié)約了數(shù)據(jù)存儲(chǔ)的成本。1.3 項(xiàng)目意義這個(gè)項(xiàng)目的意義就在于這個(gè)項(xiàng)目的開(kāi)發(fā)與實(shí)現(xiàn)不僅可以使用戶更加的方便訂票出行,而且可以減輕銷售機(jī)票人員的工作強(qiáng)度,更加提高公司的業(yè)務(wù)效率和拓寬企業(yè)銷售渠道以及知名程度,從而提高了整個(gè)公司的整體營(yíng)運(yùn)能力,盈利水平和增強(qiáng)企業(yè)競(jìng)爭(zhēng)力。這個(gè)系統(tǒng)主要是進(jìn)行對(duì)網(wǎng)上消費(fèi)者訂票服務(wù)的后臺(tái)管理,主要涉及航班、飛機(jī)、機(jī)場(chǎng)信息,查票、訂票信息,客戶信息等多種數(shù)據(jù)信息。這個(gè)系統(tǒng)要求能夠?qū)崿F(xiàn)實(shí)時(shí),高效,便捷等特點(diǎn)。
16、2 需求分析2.1 系統(tǒng)環(huán)境需求開(kāi)發(fā)環(huán)境需求:硬件要求:1.6 GHz 或更快的處理器,1 GB RAM(如果在虛擬機(jī)上運(yùn)行,則為 1.5 GB)20 GB 可用硬盤(pán)空間, 5400 RPM 硬盤(pán)驅(qū)動(dòng)器, 與 DirectX 9 兼容的視頻卡,其顯示分辨率為 1024 x 768 或更高軟件要求:Windows 7以上其他要求:Internet Explorer 10需要 KB2883200(可通過(guò) Windows 更新獲得)開(kāi)發(fā)工具要求:Visual Studio 2015 SQL Server 20142.2 功能需求分析機(jī)票信息管理:主要實(shí)現(xiàn)機(jī)票基本信息的顯示和查詢,在該功能模塊中,點(diǎn)擊
17、預(yù)定可以顯示航空公司,飛機(jī)型號(hào),起飛機(jī)場(chǎng),降落機(jī)場(chǎng),機(jī)艙類型,單程票價(jià),往返票價(jià)以及起飛時(shí)間,降落時(shí)間等基本信息的顯示功能,在訂單中,實(shí)現(xiàn)了客戶姓名、聯(lián)系方式、證件號(hào)碼等基本信息填寫(xiě)的功能。航班查詢:主要用戶查詢航班的起飛時(shí)間和飛行時(shí)間。航班動(dòng)態(tài):主要讓用戶清楚的看到各個(gè)航班運(yùn)行的路線以及時(shí)間。幫助中心:一些常見(jiàn)問(wèn)題(如:行李托運(yùn)重量物品限制)網(wǎng)上機(jī)票預(yù)訂等等。建議和投訴:主要實(shí)現(xiàn)客戶對(duì)機(jī)票價(jià)格以及業(yè)務(wù)服務(wù)的建議和評(píng)價(jià)。根據(jù)我對(duì)本系統(tǒng)功能的要求和它的特點(diǎn),通過(guò)對(duì)系統(tǒng)的分析,制作完成如圖1-1所示的系統(tǒng)功能模塊結(jié)構(gòu)圖。圖1-1 系統(tǒng)功能模塊圖3 系統(tǒng)功能設(shè)計(jì)3.1概念結(jié)構(gòu)設(shè)計(jì)3.1.1概念模型(
18、1)客機(jī)實(shí)體屬性圖,如圖3-1所示。客機(jī)客機(jī)編號(hào)座位數(shù)客機(jī)名圖3-1 客機(jī)實(shí)體屬性圖(2)客戶實(shí)體屬性圖,如圖3-2所示。地址旅客姓名性別身份證號(hào)號(hào)碼碼旅客編號(hào)圖3-2 客戶實(shí)體屬性圖(3)航班實(shí)體屬性圖,如圖3-3所示。航班起飛地航班編號(hào)起飛時(shí)間到達(dá)時(shí)間目的地圖3-3 航班實(shí)體屬性圖(4)機(jī)票實(shí)體屬性圖,如圖3-4所示。機(jī)票航班號(hào)票價(jià)座位類型座位號(hào)客戶姓名當(dāng)前預(yù)售狀態(tài)圖3-4 機(jī)票實(shí)體屬性圖根據(jù)分析,可得到本系統(tǒng)總實(shí)體屬性圖,如圖3-5所示。n航班旅客包含機(jī)票購(gòu)買(mǎi)n姓名身份證號(hào)碼聯(lián)系電話起飛時(shí)間航班編號(hào)目的地起飛地座位號(hào)當(dāng)前預(yù)售狀態(tài)客戶姓名票價(jià)姓名密碼1mmn有客機(jī)11客機(jī)編號(hào)折扣到達(dá)時(shí)間付
19、款狀態(tài)數(shù)量座位數(shù)包含1n航班號(hào)+號(hào)實(shí)付款業(yè)務(wù)員旅客編號(hào)客機(jī)名機(jī)票類型+號(hào)圖3-5 系統(tǒng)總實(shí)體屬性圖3.1.2物理模型將生成的概念模型通過(guò)PowerDesigner工具欄中的Generate Physical DataModel命令來(lái)轉(zhuǎn)換成物理模型,生成結(jié)果如下圖3-6所示:圖3-6 航空機(jī)票預(yù)訂系統(tǒng)物理模型圖3.2數(shù)據(jù)庫(kù)分析3.2.1數(shù)據(jù)庫(kù)描述航空數(shù)據(jù)庫(kù)(AirlineReservation)保存了所有用戶的數(shù)據(jù)以及網(wǎng)站航空信息,以及第三方接口調(diào)用數(shù)據(jù)庫(kù)記錄及數(shù)據(jù),SQL數(shù)據(jù)庫(kù)的使用可以很多數(shù)據(jù)進(jìn)行控制和管理,利用各大數(shù)據(jù)使得它們產(chǎn)生聯(lián)系。SQL可以及時(shí)對(duì)各種數(shù)據(jù)出現(xiàn)的問(wèn)題進(jìn)行恢復(fù),防止程序出
20、現(xiàn)故障,即使發(fā)生了故障也能及時(shí)恢復(fù)正常。3.2.2數(shù)據(jù)表設(shè)計(jì)表3.1 Tbl_Address (客戶地址表)字段類型是否為空備注AddressIDString不可為空地址IDMemberIDString不可為空客戶編號(hào)CountryCodeint不可為空國(guó)家編碼StateCodeint不可為空省份編碼CityCodeint不可為空城市編碼AddressString不可為空詳細(xì)地址ZipCodeint可為空郵編EmailString可為空郵箱TelString可為空電話Mobileint不可為空手機(jī)號(hào)碼表3.2 Tbl_ Member (客戶信息表)字段類型是否為空備注MemberIDStrin
21、g不可為空客戶編號(hào)MemberNameString不可為空客戶名稱PasswordString不可為空密碼StatusCodeInt不可為空客戶狀態(tài)(1/2/3)StatusNameString不可為空正常/凍結(jié)/異常MemberGradeCodeInt不可為空會(huì)員等級(jí)MemberGradeNameString不可為空SexString不可為空性別1-男2-女IDNuberString不可為空身份證號(hào)TelString不可為空電話MobileInt不可為空手機(jī)號(hào)EmailString不可為空郵箱IPString不可為空IPOrderNumInt不可為空訂單數(shù)量AvatarString不可為空頭
22、像CommentsString不可為空備注RegisterDateDatetime不可為空注冊(cè)時(shí)間LastLoginDateDatetime不可為空最后一次登錄時(shí)間表3.3 tbl_City (城市表)字段類型是否為空備注CityCodeInt不可為空城市CodeCityNameSting不可為空城市名稱CountryCodeInt不可為空國(guó)家編號(hào)StateCodeInt不可為空省份Code表3.4 tbl_Country (國(guó)家表)字段類型是否為空備注CountryCodeInt不可為空國(guó)家CodeCountryNameSting不可為空國(guó)家名稱StandardCodeString不可為空國(guó)
23、家編號(hào)CreateDateDatetime不可為空創(chuàng)建時(shí)間表3.5 tbl_ State(省份表)字段類型是否為空備注StateCodeInt不可為空省份CodeStateNameSting不可為空省份名稱CountryCodeInt不可為空國(guó)家編號(hào)StateNa5 meEn不可為空省份簡(jiǎn)稱CreateDateInt不可為空創(chuàng)建時(shí)間表3.6 Tbl_AirplanesInfo (客機(jī)信息表)字段類型是否為空備注AirplanesIDnchar不可為空客機(jī)編號(hào)AirplanesNamenchar不可為空客機(jī)名稱EconomyClassNumint不可為空經(jīng)濟(jì)艙座位FirstClassNumint
24、不可為空頭等艙座位BusinessClassNumint不可為空商務(wù)艙座位Commentsnchar不可為空備注表3.7 Tbl_ Complaints (客戶申訴表)字段類型是否為空備注ComplaintsIDuniqueidentifier不可為空申訴IDMemberIDnchar不可為空客戶IDMemberNamenchar不可為空客戶名稱ComplaintsContentnvarchar不可為空申訴內(nèi)容Emailnchar不可為空郵箱Telnchar不可為空電話Mobileint不可為空手機(jī)號(hào)碼CreateDatedatetime不可為空申述時(shí)間表3.8 Tbl_ OrderInfo(
25、訂單信息表)字段類型是否為空備注OrderIDnvarchar不可為空訂單IDMemberIDnchar不可為空客戶IDAirlineIDnvarchar不可為空航線IDShippingSpacenchar不可為空艙位等級(jí)TicketPricesdecimal不可為空機(jī)票價(jià)格PaymentAmountdecimal不可為空支付金額OrderRemarksnvarchar不可為空訂單備注CouponIDnvarchar不可為空優(yōu)惠券ID表3.9 Tbl_ Airline(航線信息表)字段類型是否為空備注AirlineIDnvarchar不可為空航線IDStartingCityCodeint不可為
26、空起始站CodeStartingCityNamenchar不可為空起始站CodeTerminusCityCodeint不可為空終點(diǎn)站CodeTerminusCityNamenchar不可為空終點(diǎn)站StartingDatedatetime不可為空起飛時(shí)間ArrivingDatedatetime不可為空到達(dá)時(shí)間FlightTimedatetime不可為空航飛時(shí)間AirlineRemarksnvarchar可為空航線備注s表3.10 Tbl_ Counpon(優(yōu)惠券)字段類型是否為空備注CouponIDuniqueidentifier不可為空優(yōu)惠券IDCouponNamenvarchar不可為空優(yōu)惠
27、券名稱CouponAmountdecimal不可為空優(yōu)惠金額MemberIDnchar不可為空客戶IDTypeint不可為空優(yōu)惠券類型TypeNamenvarchar不可為空優(yōu)惠券類型名稱BeginDatedatetime不可為空開(kāi)始時(shí)間EndDatedatetime不可為空結(jié)束時(shí)間IsUsebit不可為空是否使用sCommentsnvarchar可為空優(yōu)惠券備注3.2.3數(shù)據(jù)庫(kù)優(yōu)化方法一、語(yǔ)句的優(yōu)化(1)減少對(duì)數(shù)據(jù)庫(kù)的查詢次數(shù);(2)數(shù)據(jù)庫(kù)對(duì)數(shù)據(jù)有約束性;(3)數(shù)據(jù)庫(kù)數(shù)據(jù)執(zhí)行中,可以進(jìn)行過(guò)濾。1、通過(guò)使用in描述數(shù)據(jù)簡(jiǎn)單易懂,優(yōu)化的時(shí)候,要用exists替換它2、NOT IN操作符強(qiáng)列推薦不
28、使用的,因?yàn)樗荒軕?yīng)用表的索引。用NOT EXISTS或(外連接+判斷為空)方案代替,因?yàn)镺racle在處理In時(shí)是按Or的方式做的,即使使用了索引也會(huì)很慢。3、通過(guò)替換,這是一條簡(jiǎn)單易記的規(guī)則, 低效:SELECFROM LOCATION WHERE LOC_ID =10OR LOC_ID=20OR LOC_ID=30高效:SELECTFROM LOCATION WHERE LOC_IN IN (10,20,30);二、結(jié)構(gòu)的優(yōu)化1、DELETE以TRUNCATE替代:如果你沒(méi)有CO
29、MMIT事務(wù)2、用Where子句替換HAVING子句:避免使用HAVING子句, 當(dāng)刪除表中的記錄時(shí),在通常情況下檢索結(jié)果出來(lái)后進(jìn)行過(guò)濾。如果能通過(guò)WHERE子句限制記錄的數(shù)目,那就能減少這方面的開(kāi)銷.過(guò)濾之后可以減少有需要處理的數(shù)據(jù)。3、語(yǔ)句的格式 先將語(yǔ)句進(jìn)行進(jìn)行解析,再更改格式在執(zhí)行4、不要改變索引類型通過(guò)對(duì)不同數(shù)據(jù)類型進(jìn)行比對(duì)是,可以自行進(jìn)行轉(zhuǎn)換。5、特殊語(yǔ)句優(yōu)化提高GROUP BY語(yǔ)句的效率,不需要的記錄在GROUP BY之前過(guò)濾掉.下面兩個(gè)查詢返回相同結(jié)果低效:1SELECT JOB,AVG(SAL)FROM EMP GROUPby JOBH
30、AVING JOB= 'PRESIDENT' OR JOB ='MANAGER'高效:1SELECT JOB,AVG(SAL)FROM EMP WHERE JOB ='PRESIDENT'OR JOB='MANAGER'GROUPby JOB優(yōu)化方案1進(jìn)行表分區(qū)通過(guò)對(duì)數(shù)據(jù)進(jìn)行分區(qū),似的如果我們對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)查詢時(shí)我們只需要對(duì)特定的表進(jìn)行查詢即可。這樣不僅可以優(yōu)化時(shí)間,還可以將數(shù)據(jù)分別保存在自己需要的特定位置方便查詢
31、可按月自動(dòng)建表分區(qū)。2.別名的使用別名的使用就是將表分區(qū)命名成特定的名字方便查詢,加快查詢速度。3.索引優(yōu)化設(shè)計(jì)通過(guò)優(yōu)化設(shè)計(jì)將表里的數(shù)據(jù)映射到特定的位置,因此來(lái)迅速找到需要的數(shù)據(jù),減少所需要的時(shí)間。當(dāng)你對(duì)一個(gè)龐大的數(shù)據(jù)進(jìn)行查詢時(shí),建立索引分區(qū)優(yōu)化資源配置。頻繁的使用會(huì)導(dǎo)致數(shù)據(jù)發(fā)生分裂,所以要進(jìn)行維護(hù)。4 系統(tǒng)功能實(shí)現(xiàn)4.1 系統(tǒng)登陸與注冊(cè)界面實(shí)現(xiàn)首頁(yè)點(diǎn)擊注冊(cè)按鈕,會(huì)跳轉(zhuǎn)到注冊(cè)頁(yè)面,注冊(cè)需要填寫(xiě)賬戶(手機(jī)號(hào)/郵箱)及密碼,密碼需要輸入2次校驗(yàn),如果一直會(huì)提示登陸成功,登陸成功后會(huì)自動(dòng)跳轉(zhuǎn)到個(gè)人中心。注冊(cè)頁(yè)面效果圖如下圖4-1所示。圖4-1注冊(cè)頁(yè)面效果圖實(shí)現(xiàn)注冊(cè)功能核心代碼如下: public A
32、ctionResult UserRegister(string userName, string password) Tbl_Member m = new Tbl_Member(); m.MemberID = userName; m.Password = password; m.StatusCode = "1"狀態(tài)默認(rèn)1正常 m.Balance = 0;/賬戶金額默認(rèn)0元 bool fig = bll.AddAccount(m); if (fig) /注冊(cè)成功后把用戶名存到Session Session"UserName" = userName; ret
33、urn Json(new status = fig ); public bool AddAccount(Tbl_Member m) try return dal.AddAccount(m); catch (Exception) return false; public bool AddAccount(Tbl_Member m) using (var context = LinqDBHelper.WebDataContext) context.Tbl_Member.InsertOnSubmit(m); context.SubmitChanges(); return true; 在登錄界面用戶,輸
34、入帳號(hào)和密碼,如果輸入的帳戶和密碼的用戶不存在,則顯示錯(cuò)誤信息;若輸入的帳戶和密碼的用戶存在,則跳轉(zhuǎn)到個(gè)人中心,登陸頁(yè)面效果圖,如下圖4-2所示:圖4- 2登陸頁(yè)面效果圖實(shí)現(xiàn)登陸功能核心代碼如下: public ActionResult Login(string UserName, string PassWord) bool fig = false; fig = bll.Login(UserName, PassWord); if (fig) /注冊(cè)成功后把用戶名存到Session Session"UserName" = UserName; return Json(new s
35、tatus = fig ); public bool Login(string UserName,string PassWord) try Tbl_Member m = dal.GetAccountInfo(UserName); if (m != null && m.Password = PassWord) return true; return false; catch (Exception) return false; / <summary> / 查詢賬號(hào)信息 / </summary> / <param name="UserName&
36、quot;></param> / <returns></returns> public Tbl_Member GetAccountInfo(string UserName) using (var context = LinqDBHelper.WebDataContext) return context.Tbl_Member.Where(i => i.MemberID = UserName).SingleOrDefault(); 4.2 網(wǎng)站首頁(yè)及機(jī)票展示界面實(shí)現(xiàn)網(wǎng)站首頁(yè)主要功能有機(jī)票查詢,特價(jià)機(jī)票的展示,熱品推薦,特殊服務(wù)等,搜索功能用戶輸入出發(fā)
37、城市或者終點(diǎn)城市,點(diǎn)擊查詢后系統(tǒng)會(huì)到數(shù)據(jù)庫(kù)里面查詢對(duì)應(yīng)的機(jī)票,查詢出對(duì)應(yīng)的機(jī)票后會(huì)現(xiàn)在頁(yè)面,若沒(méi)查到對(duì)應(yīng)的機(jī)票信息,會(huì)提醒暫無(wú)該航班機(jī)票,網(wǎng)站首頁(yè)及特價(jià)機(jī)票效果圖,如下圖4-3和4-4所示:圖4- 3首頁(yè)效果圖圖4-4 特價(jià)機(jī)票頁(yè)面效果圖實(shí)現(xiàn)首頁(yè)查詢及機(jī)票信息功能核心代碼如下: public ActionResult Index(string type) List<Tbl_Airline> AirlineList = new AirlineBLL().GetAirlineList(type); ViewBag.AirlineList = AirlineList; return Vi
38、ew(); public List<Tbl_Airline> GetAirlineList(string Search) try return dal.GetAirlineList(Search); catch (Exception) return null; / 根據(jù)搜索條件查詢機(jī)票信息 / </summary> / <param name="Search"></param> / <returns></returns> public List<Tbl_Airline> GetAirline
39、List(string Search) using (var context = LinqDBHelper.WebDataContext) return context.Tbl_Airline.Where(i => (string.IsNullOrWhiteSpace(Search) | i.StartingCityName.Contains(Search) | i.TerminusCityName.Contains(Search).ToList(); / <summary> / 根據(jù)出發(fā)城市or終點(diǎn)城市or時(shí)間查詢機(jī)票信息 / </summary> / <
40、param name="Search">關(guān)鍵詞</param> / <param name="CF">出發(fā)地點(diǎn)</param> / <param name="DD">到達(dá)地點(diǎn)</param> / <param name="CFT">出發(fā)時(shí)間</param> / <param name="DDT">到達(dá)時(shí)間</param> / <returns></returns&g
41、t; public List<Tbl_Airline> GetAirlineList(string Search, string CF, string DD, DateTime CFT, DateTime DDT) using (var context = LinqDBHelper.WebDataContext) if (!string.IsNullOrWhiteSpace(Search) return context.Tbl_Airline.Where(i => (string.IsNullOrWhiteSpace(Search) | i.StartingCityName.
42、Contains(Search) | i.TerminusCityName.Contains(Search).ToList(); else if (CFT != null && DDT != null) return context.Tbl_Airline.Where(i => (string.IsNullOrWhiteSpace(CF) | i.StartingCityName.Contains(CF) && (string.IsNullOrWhiteSpace(DD) | i.TerminusCityName.Contains(DD) ).ToList
43、(); else return context.Tbl_Airline.Where(i => (string.IsNullOrWhiteSpace(CF) | i.StartingCityName.Contains(CF) && (string.IsNullOrWhiteSpace(DD) | i.TerminusCityName.Contains(DD) ).ToList(); 4.3 提交訂單及訂單列表界面實(shí)現(xiàn)首頁(yè)選擇機(jī)票后,進(jìn)入到提交訂單頁(yè)面,提交訂單需要輸入乘坐人姓名,身份證信息,聯(lián)系電話,可以根據(jù)自己情況購(gòu)買(mǎi)延誤險(xiǎn)和意外險(xiǎn),提交訂單頁(yè)面和訂單列表如圖4-5和4-
44、6圖4-5提交訂單頁(yè)面效果圖圖4-6我的訂單頁(yè)面效果圖實(shí)現(xiàn)提交訂單及訂單列表功能核心代碼如下: public ActionResult AddOrder() /獲取乘坐人信息 string MemberID = string.Empty; string AirlineID = Request.Form"AirlineID" string TicketPrices = Request.Form"TicketPrices" string Mobile = Request.Form"Mobile" string IDCard = Reque
45、st.Form"IDCard" string Name = Request.Form"Name" string yanwx = Request.Form"yanwx" string yiwx = Request.Form"yiwx" string StartingCityName = string.Empty; string TerminusCityName = string.Empty; bool fig = false; /判斷用戶是否登陸 if (Session"UserName" !=
46、null) MemberID = Session"UserName".ToString(); else return Json(new Status = fig ); /獲取航班信息 if (!string.IsNullOrWhiteSpace(AirlineID) Tbl_Airline a = new AirlineBLL().GetAirlineInfo(AirlineID); if (a != null) StartingCityName = a.StartingCityName; TerminusCityName = a.TerminusCityName; try Tbl_OrderInfo order = new Tbl_OrderInfo(); order.OrderID = DateTime.Now.ToSt
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 安全生產(chǎn)及崗位操作資格證明書(shū)(7篇)
- 2025年中學(xué)教師資格《綜合素質(zhì)》教育研究方法基礎(chǔ)理論與案例分析試題解析試卷
- 養(yǎng)殖禽畜繁育與產(chǎn)品銷售協(xié)議
- 家用燃?xì)庠O(shè)備安全監(jiān)測(cè)合作協(xié)議
- 2025年勞動(dòng)爭(zhēng)議處理與勞動(dòng)關(guān)系協(xié)調(diào)員(中級(jí))考試試卷
- 2025美甲師(美甲行業(yè)可持續(xù)發(fā)展)考試試卷分析
- 一次難忘的集體出游作文15篇范文
- 2025年洗板機(jī)項(xiàng)目提案報(bào)告
- 農(nóng)村社區(qū)生態(tài)保護(hù)補(bǔ)償協(xié)議
- 經(jīng)典古詩(shī)文閱讀感悟作文(14篇)
- 數(shù)學(xué)史簡(jiǎn)介課件可編輯全文
- 研學(xué)旅行市場(chǎng)營(yíng)銷智慧樹(shù)知到答案2024年青島酒店管理職業(yè)技術(shù)學(xué)院
- 金川公司社會(huì)招聘試題
- 起重吊車(chē)吊裝施工方案
- 12G614-1 砌體填充墻結(jié)構(gòu)構(gòu)造
- 廣東省汕頭市金平區(qū)2024年統(tǒng)編版小升初考試語(yǔ)文試卷(解析版)
- DL∕T 1474-2021 交、直流系統(tǒng)用高壓聚合物絕緣子憎水性測(cè)量及評(píng)估方法
- 勞動(dòng)合同中止執(zhí)行協(xié)議
- 福建省初中歷史八年級(jí)期末下冊(cè)通關(guān)試卷詳細(xì)答案和解析
- 基于排隊(duì)網(wǎng)絡(luò)理論的集裝箱碼頭設(shè)備配置優(yōu)化研究
- 2024CSCO結(jié)直腸癌診療指南解讀
評(píng)論
0/150
提交評(píng)論