C#課程設(shè)計(jì)報(bào)告 高速公路收費(fèi)系統(tǒng)

上傳人:痛*** 文檔編號:84844349 上傳時(shí)間:2022-05-04 格式:DOC 頁數(shù):46 大?。?30.50KB
收藏 版權(quán)申訴 舉報(bào) 下載
C#課程設(shè)計(jì)報(bào)告 高速公路收費(fèi)系統(tǒng)_第1頁
第1頁 / 共46頁
C#課程設(shè)計(jì)報(bào)告 高速公路收費(fèi)系統(tǒng)_第2頁
第2頁 / 共46頁
C#課程設(shè)計(jì)報(bào)告 高速公路收費(fèi)系統(tǒng)_第3頁
第3頁 / 共46頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《C#課程設(shè)計(jì)報(bào)告 高速公路收費(fèi)系統(tǒng)》由會員分享,可在線閱讀,更多相關(guān)《C#課程設(shè)計(jì)報(bào)告 高速公路收費(fèi)系統(tǒng)(46頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。

1、. . 優(yōu)選 . - 課程設(shè)計(jì)報(bào)告書 專業(yè):信息管理與信息系統(tǒng) 課程設(shè)計(jì)名稱:"可視化編程技術(shù)課程設(shè)計(jì)" 題目:高速公路收費(fèi)系統(tǒng) 班級: 學(xué)號: 設(shè)計(jì)者: 指導(dǎo)教師: 完成時(shí)間: 摘要 在現(xiàn)代交通越來越便利的同時(shí),高速公路也發(fā)揮著越來越重要的作用。中國已經(jīng)有4萬多公里的高速公路,在未來還將翻倍。修建高速公路被各地官員拉入地方經(jīng)濟(jì)工作日常首要位置,與1950年后的美國相

2、似,越來越密集的高速網(wǎng)正在促使著中國發(fā)生巨大的變化。 高速公路收費(fèi)系統(tǒng)是高速公路管理的重要組成局部。建立智能化的收費(fèi)系統(tǒng)是加強(qiáng)高速公路管理的一個(gè)重要環(huán)節(jié)。高速公路收費(fèi)系統(tǒng)解決了高速公路收費(fèi)業(yè)務(wù)中由于采取傳統(tǒng)方法和手段出現(xiàn)的難以處理的問題,并把管理對象轉(zhuǎn)向信息對象的信息管理系統(tǒng),把高速公路收費(fèi)系統(tǒng)推向另一個(gè)高度。 利用計(jì)算機(jī)進(jìn)展高速公路收費(fèi)系統(tǒng)設(shè)計(jì),本文是采用C*作為前臺開發(fā)工具,SQL Server2021 R2作為后臺數(shù)據(jù)庫平臺的基于C/S的三層模式的高速公路收費(fèi)系統(tǒng)。 關(guān)鍵詞:C*;數(shù)據(jù)庫表; -

3、 .word.zl . - 目錄 目錄1 第一章開發(fā)環(huán)境和開發(fā)工具1 1.1C*語言簡介1 1.2 開發(fā)背景1 1.3 開發(fā)環(huán)境2 第二章人事管理信息系統(tǒng)的分析與設(shè)計(jì)3 2.1 系統(tǒng)需求分析3 2.2 系統(tǒng)總體設(shè)計(jì)3 2.2.1 系統(tǒng)設(shè)計(jì)目標(biāo)3 2.2.2 開發(fā)設(shè)計(jì)思想4 2.2.3 系統(tǒng)功能模塊設(shè)計(jì)4 第三章數(shù)據(jù)庫設(shè)計(jì)6 3.1

4、引入背景6 3.2 數(shù)據(jù)庫需求分析6 3.2.1 數(shù)據(jù)流圖7 3.2.2. 數(shù)據(jù)字典7 3.3 數(shù)據(jù)庫概念構(gòu)造設(shè)計(jì)10 3.4 數(shù)據(jù)庫邏輯構(gòu)造設(shè)計(jì)14 3.5 數(shù)據(jù)庫物理構(gòu)造設(shè)計(jì)15 3.5.1 索引的建立〔主鍵、外鍵〕15 3.5.2 觸發(fā)器16 第四章系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)17 4.1 實(shí)體類庫設(shè)計(jì)與實(shí)現(xiàn)17 4.2 數(shù)據(jù)訪問層類庫設(shè)計(jì)與實(shí)現(xiàn)22 4.3 業(yè)務(wù)邏輯層類庫設(shè)計(jì)與實(shí)現(xiàn)32 4.4 界面設(shè)計(jì)及實(shí)現(xiàn)37 4.4.1 登陸界面及代碼37 4.4.2 主界面及代碼38 結(jié)論50 心得體會51 參考文獻(xiàn)52 -

5、 .word.zl . - 第一章 開發(fā)環(huán)境和開發(fā)工具 1.1 C*語言簡介 C*是微軟公司發(fā)布的一種面向?qū)ο蟮?、運(yùn)行于.NET Framework之上的高級程序設(shè)計(jì)語言。并定于在微軟職業(yè)開發(fā)者論壇(PDC)上登臺亮相。C*是微軟公司研究員Anders Hejlsberg的最新成果。C*看起來與Java有著驚

6、人的相似;它包括了諸如單一繼承、接口、與Java幾乎同樣的語法和編譯成中間代碼再運(yùn)行的過程。但是C*與Java有著明顯的不同,它借鑒了Delphi的一個(gè)特點(diǎn),與COM〔組件對象模型〕是直接集成的,而且它是微軟公司 .NET windows網(wǎng)絡(luò)框架的主角。 C*是一種平安的、穩(wěn)定的、簡單的、優(yōu)雅的,由C和C++衍生出來的面向?qū)ο蟮木幊陶Z言。它在繼承C和C++強(qiáng)大功能的同時(shí)去掉了一些它們的復(fù)雜特性〔例如沒有宏以及不允許多重繼承〕。C*綜合了VB簡單的可視化操作和C++的高運(yùn)行效率,以其強(qiáng)大的操作能力、優(yōu)雅的語法風(fēng)格、創(chuàng)新的語言特性和便捷的面向組件編程的支持成為.NET開發(fā)的首選語言。 C*是一

7、種面向?qū)ο蟮恼Z言,它使得程序員可以快速地編寫各種基于MICROSOFT .NET平臺的應(yīng)用程序,MICROSOFT .NET提供了一系列的工具和效勞來最大程度地開發(fā)利用計(jì)算與通訊領(lǐng)域。 1.2 開發(fā)背景 二十年來,收費(fèi)公路在中國從無到有,彌補(bǔ)了傳統(tǒng)公共交通的缺乏,滿足了人們快捷、平安、舒適的交通需要,為中國經(jīng)濟(jì)的蓬勃開展做出了巨大奉獻(xiàn)。正確提醒收費(fèi)公路在公共效勞方面的標(biāo)準(zhǔn)和限度,處理費(fèi)用的各種數(shù)據(jù),對中國公路建立事業(yè)安康開展有重要意義。 如今,高速公路的飛速開展,高速公路的行路暢通,正因?yàn)檫@樣,高速公路在各種交通運(yùn)輸渠道中占據(jù)了主要的地位,這就造成了高速公路收費(fèi)管理出現(xiàn)了一些問題,不但增

8、加了運(yùn)營的強(qiáng)度,也增加了高速公路收費(fèi)工作人員的工作壓力。所以,這對現(xiàn)有的收費(fèi)管理和收費(fèi)人員提出更多的要求:提高收費(fèi)效率、降低收費(fèi)過失,提高收費(fèi)站管理效勞水平。而以手工為主的傳統(tǒng)收費(fèi)方式已經(jīng)不能滿足當(dāng)前收費(fèi)的實(shí)際需要。 在當(dāng)今信息化的社會里,作為高新技術(shù)之一的C*可視化編程技術(shù)和數(shù)據(jù)庫應(yīng)用技術(shù)已成為高速公路信息資源利用和高速公路建立及其現(xiàn)代化管理不可缺少的重要工具,高速公路收費(fèi)系統(tǒng)便是基于C*和數(shù)據(jù)庫所產(chǎn)生的,相較于傳統(tǒng)手工的收費(fèi)方式它的效率高、過失少,能使管理人員隨時(shí)查閱數(shù)據(jù)信息。并能對各種違規(guī)行為進(jìn)展一定的制止,對于各種各樣的逃票行為提供證據(jù)。高速公路收費(fèi)系統(tǒng)能夠滿足我國對于高速公路所提出

9、的大多數(shù)要求。 1.3 開發(fā)環(huán)境 本文所采用的開發(fā)環(huán)境主要是基于數(shù)據(jù)庫系統(tǒng)的SQL Server 2021R2和基于面向?qū)ο蟪绦蛟O(shè)計(jì)的C*。SQL Server 2021 R2在Microsoft的數(shù)據(jù)平臺上發(fā)布,可以組織管理任何數(shù)據(jù),可以將構(gòu)造化、半構(gòu)造化和非構(gòu)造化文檔的數(shù)據(jù)直接存儲到數(shù)據(jù)庫中。它可以對數(shù)據(jù)進(jìn)展查詢、搜索、同步、報(bào)告和分析之類的操作引進(jìn)了一系列新功能幫助各種規(guī)模的業(yè)務(wù)從信息中獲取更多價(jià)值。經(jīng)過改進(jìn)的SQL Server 2021 R2增強(qiáng)了開發(fā)能力,提高了可管理性,強(qiáng)化了商業(yè)智能及數(shù)據(jù)倉庫。 本系統(tǒng)是利用SQL Server 2021R2創(chuàng)立高速收費(fèi)站上的收費(fèi)站信息表、

10、職工信息表、收費(fèi)查詢表、道路表、進(jìn)出站信息表、車輛信息表、車輛流動表、收費(fèi)卡信息表、收費(fèi)標(biāo)準(zhǔn)表以及用C*連接數(shù)據(jù)庫用的登錄系統(tǒng)表。利用C*和數(shù)據(jù)庫建立連接之后,利用C*中的控件按鈕以及一些程序代碼實(shí)現(xiàn)一些特定的功能,例如員工信息查詢、員工信息編輯、車輛信息查詢、收費(fèi)標(biāo)準(zhǔn)查詢、收費(fèi)情況查詢等,極提高了高速公路收費(fèi)管理的效率。 第二章 人事管理信息系統(tǒng)的分析與設(shè)計(jì) 隨著計(jì)算機(jī)技術(shù)的飛速開展,計(jì)算機(jī)在各種收費(fèi)和管理應(yīng)用的普及,利用計(jì)算機(jī)實(shí)現(xiàn)高速公路收費(fèi)的管理勢在必行。當(dāng)前高速公路收費(fèi)系統(tǒng)正在從C/S構(gòu)造向B/S構(gòu)造轉(zhuǎn)移,但是由于平安性等方面的因素,C/S構(gòu)造的高速公路收費(fèi)系統(tǒng)仍然占據(jù)收費(fèi)系統(tǒng)

11、的主流。本文所論述的系統(tǒng)也是C/S構(gòu)造的高速公路收費(fèi)系統(tǒng)。 高速公路收費(fèi)系統(tǒng)是適應(yīng)現(xiàn)代化制度要求,推動高速公路收費(fèi)走向科學(xué)化、規(guī)化的必要條件。 2.1 系統(tǒng)需求分析 在現(xiàn)代運(yùn)輸?shù)蔫F路、公路、水運(yùn)、航運(yùn)和管理五種方式中,目前我國公路運(yùn)輸約占全國客、貨運(yùn)輸總量的一半以上。近年來,我國高速公路的開展很快,高速公路總里程躍居世界第二位,從而大大改善了公路路網(wǎng)構(gòu)造,緩解了交通旅游業(yè)的開展,推動沿線產(chǎn)業(yè)構(gòu)造調(diào)整,加快了中小城鎮(zhèn)的發(fā)。 隨著高速公路的建立,收費(fèi)站數(shù)目的不斷增加,對現(xiàn)有的收費(fèi)管理和收費(fèi)人員提出了新的要求:提高收費(fèi)效率、降低收費(fèi)過失,提高收費(fèi)站管理效勞水平。高速公路收費(fèi)系統(tǒng)提供了一種理想

12、的解決上述問題的方案,能適應(yīng)新的收費(fèi)管理要求。 在當(dāng)今信息化的社會里,如何運(yùn)用計(jì)算機(jī)技術(shù)、運(yùn)用好有限的資金,加快速度、高質(zhì)量地建立高等級公路收費(fèi)系統(tǒng),是擺在廣闊科技工作者面前一個(gè)有待解決的課題。今為解決這一些問題特別寫了高速公路收費(fèi)系統(tǒng),利用計(jì)算機(jī)的存取功能及其計(jì)算機(jī)數(shù)據(jù)庫的功能來實(shí)現(xiàn)對數(shù)據(jù)的有效、高速管理。 2.2 系統(tǒng)總體設(shè)計(jì) 2.2.1 系統(tǒng)設(shè)計(jì)目標(biāo) 本文研究開發(fā)的高速公路收費(fèi)系統(tǒng)用于支持高速公路的收費(fèi)管理工作,有如下三個(gè)方面的目標(biāo): ●支持收費(fèi)站實(shí)現(xiàn)規(guī)化的管理。 ●支持收費(fèi)人員高效率完成車輛收費(fèi)和信息查詢的日常業(yè)務(wù),包括車輛的道路信息、車輛信息、增加收費(fèi)的具體信息和收費(fèi)詳情

13、查看等。 ●支持收費(fèi)站進(jìn)展勞動人事管理及其相關(guān)方面的科學(xué)決策,如領(lǐng)導(dǎo)根據(jù)現(xiàn)有的員工情況增加或減少員工人數(shù)、修改員工信息等。 開發(fā)設(shè)計(jì)思想 基于以上系統(tǒng)設(shè)計(jì)目標(biāo),本文在開發(fā)高速公路收費(fèi)系統(tǒng)時(shí)遵循了以下開發(fā)設(shè)計(jì)思想: ●采用現(xiàn)有的軟硬件環(huán)境及先進(jìn)的系統(tǒng)開發(fā)方案,從而到達(dá)充分利用現(xiàn)有資源,提高系統(tǒng)開發(fā)水平和應(yīng)用效果的目的。 ●盡量到達(dá)操作過程中的直觀、方便、實(shí)用、平安等要求。 ●系統(tǒng)采用C/S體系構(gòu)造,Clinet(客戶端)負(fù)責(zé)提供表達(dá)邏輯、顯示用戶界面信息、訪問數(shù)據(jù)庫效勞器;Server(效勞器端)那么用于提供數(shù)據(jù)效勞。 ●系統(tǒng)采用三層架構(gòu)的設(shè)計(jì)思想,即界面層〔User Inte

14、rface layer〕、業(yè)務(wù)邏輯層〔Business Logic Layer〕、數(shù)據(jù)訪問層〔Data access layer〕。界面層:主要對用戶的請求承受,以及數(shù)據(jù)的返回,為客戶端提供應(yīng)用程序的訪問。業(yè)務(wù)邏輯層:是系統(tǒng)架構(gòu)中表達(dá)核心價(jià)值的局部,主要負(fù)責(zé)對數(shù)據(jù)層的操作。數(shù)據(jù)訪問層:主要是對數(shù)據(jù)的操作,具體為業(yè)務(wù)邏輯層或表示層提供數(shù)據(jù)效勞。 ●系統(tǒng)采用模塊化程序設(shè)計(jì)方法,既便于系統(tǒng)功能的各種組合和修改,又便于未參與開發(fā)的技術(shù)維護(hù)人員補(bǔ)充、維護(hù)。 ●系統(tǒng)應(yīng)具備數(shù)據(jù)庫維護(hù)功能,及時(shí)根據(jù)用戶需求進(jìn)展數(shù)據(jù)的添加、刪除、修改、備份等操作。 系統(tǒng)功能模塊設(shè)計(jì) 本系統(tǒng)分為四個(gè)模塊:系統(tǒng)模塊、職工信

15、息管理、收費(fèi)站信息管理、車輛信息管理。 本系統(tǒng)的具體功能模塊圖如圖3-1所示: 高速公路收費(fèi)系統(tǒng) 系統(tǒng)設(shè)置 職工信息 收費(fèi)站信息 車輛信息 修改密碼 退出 員工信息查詢及修改 領(lǐng)導(dǎo)信息查詢 收費(fèi)站信息查詢及更新 車輛信息查詢及添加 收費(fèi)信息查詢及添加 各站距離情況查詢及更新 添加用戶 收費(fèi)標(biāo)準(zhǔn)的查詢及更新 收費(fèi)卡信息的查詢及添加 圖3-1系統(tǒng)功能模塊圖 第三章 數(shù)據(jù)庫設(shè)計(jì) 3.1 引入背景 高速公路收費(fèi)系統(tǒng)是一個(gè)數(shù)據(jù)庫應(yīng)用系統(tǒng),有關(guān)車輛和收費(fèi)的所有信息都保存在數(shù)據(jù)庫中。數(shù)據(jù)庫構(gòu)造設(shè)計(jì)是高速公路收費(fèi)系統(tǒng)數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)過程中一個(gè)非常重要的環(huán)節(jié),

16、設(shè)計(jì)的好壞將直接對所開發(fā)的高速公路收費(fèi)系統(tǒng)的效率以及實(shí)現(xiàn)的效果產(chǎn)生影響。好的數(shù)據(jù)庫構(gòu)造設(shè)計(jì)會減少數(shù)據(jù)庫的存儲量,數(shù)據(jù)的完整性和一致性比較高,系統(tǒng)具有較快的響應(yīng)速度,簡化基于此數(shù)據(jù)庫的應(yīng)用程序的實(shí)現(xiàn)等等。數(shù)據(jù)庫構(gòu)造設(shè)計(jì)主要就是要設(shè)計(jì)好數(shù)據(jù)庫中各個(gè)表的構(gòu)造,包括信息保存在哪些表格中、各個(gè)表的構(gòu)造如何以及各個(gè)表之間的關(guān)系。數(shù)據(jù)庫的存在能夠完善地管理各種數(shù)據(jù)庫對象,具有強(qiáng)大的數(shù)據(jù)組織、用戶管理、平安檢查等功能;可以方便地生成各種數(shù)據(jù)對象,利用存儲的數(shù)據(jù)建立窗體和報(bào)表,可視性較好。由于數(shù)據(jù)庫設(shè)計(jì)的重要性,人們提出了許多數(shù)據(jù)庫構(gòu)造設(shè)計(jì)的技術(shù)。 3.2 數(shù)據(jù)庫需求分析 數(shù)據(jù)庫需求分析是數(shù)據(jù)庫構(gòu)造設(shè)計(jì)

17、的第一個(gè)階段,也是非常重要的一個(gè)階段。在這個(gè)階段主要工作是收集根本數(shù)據(jù)以及數(shù)據(jù)處理的流程,為以后進(jìn)一步設(shè)計(jì)一打下根底。需求分析主要解決兩個(gè)問題:: . ● 容要求。調(diào)查應(yīng)用系統(tǒng)用戶所需要操作的數(shù)據(jù),決定在數(shù)據(jù)庫中存儲什么數(shù)據(jù)。 ●處理要求。調(diào)查應(yīng)用系統(tǒng)用戶要求對數(shù)據(jù)庫進(jìn)展什么樣的處理,理清數(shù)據(jù)庫中各種數(shù)據(jù)之間的關(guān)系。 3.2.1 數(shù)據(jù)流圖 高速公路收費(fèi)系統(tǒng) 頂層圖: 領(lǐng)導(dǎo) 車子 提供信息 查看 進(jìn) 入 員工 收費(fèi)標(biāo)準(zhǔn) 一層圖: 收費(fèi)卡 提供信息 查詢、 修改 出站處理 得

18、到 交還、讀卡 進(jìn)站處理 提供信息 查看 員工 員工 提供收費(fèi)信息 權(quán)限距離情況 權(quán)限 信息 登錄 各站距離情況改動 進(jìn)入數(shù)據(jù) 讀取信息 員工信息 3.2.2.數(shù)據(jù)字典 數(shù)據(jù)字典是對系統(tǒng)中數(shù)據(jù)的詳細(xì)描述,是各類數(shù)據(jù)構(gòu)造和屬性的清單。它與數(shù)據(jù)流圖互為注釋。包括五個(gè)局部:數(shù)據(jù)項(xiàng)、數(shù)據(jù)構(gòu)造、數(shù)據(jù)流、數(shù)據(jù)

19、存儲和處理過程。 數(shù)據(jù)項(xiàng): 車輛信息: 屬性 別名 類型 長度 取值圍 含義說明 車輛類別 車型號 char 6 主鍵 not null 用于識別車輛的類型,用于收費(fèi)計(jì)算 車牌號 車牌編號 char 8 唯一 唯一標(biāo)識一輛汽車的關(guān)鍵域 職工信息: 屬性 別名 類型 長度 取值圍 含義說明 職工編號 工作號 char 8 主鍵 唯一 用于唯一標(biāo)識一位職工信息的關(guān)鍵域 職工 char 10 not null 用于識別不同的員工 性別 char 2 男或女 標(biāo)識職工的性別 年

20、齡 nchar 2 18~50 表示每位職工生存的年限 職位 char 4 領(lǐng)導(dǎo)或員工 用于標(biāo)識職工的不同分工 系統(tǒng)登錄: 屬性 別名 類型 長度 取值圍 含義說明 職位 角色類別 char 4 領(lǐng)導(dǎo)或員工 用于標(biāo)識登錄后的不同權(quán)限 職工編號 用戶名 char 8 主鍵 唯一 唯一標(biāo)識一位職工的關(guān)鍵域 密碼 登錄密碼 char 6 not null 用戶登錄所需要的通行證 收費(fèi)站信息: 屬性 別名 類型 長度 取值圍 含義說明 收費(fèi)站號 進(jìn)出站編號 char 6 主鍵 唯一 唯一標(biāo)識一座收費(fèi)站

21、的關(guān)鍵域 收費(fèi)站名 varchar 30 not null 標(biāo)識收費(fèi)站的存在信息 地址 varchar 50 not null 標(biāo)識收費(fèi)站的位置信息 聯(lián)系方式 char 8 not null 收費(fèi)站的聯(lián)系信息 車輛收費(fèi)標(biāo)準(zhǔn): 屬性 別名 類型 長度 取值圍 含義說明 車輛類別 車型號 char 6 not null 用于標(biāo)識車輛的類別 收費(fèi)單價(jià) real not null 標(biāo)識每類車每公里所收單價(jià) 備注 varchar 50 not null 對于所填容進(jìn)展解釋 收費(fèi)卡信息: 屬性 別名

22、 類型 長度 取值圍 含義說明 收費(fèi)卡號 char 10 主鍵 唯一 標(biāo)識唯一收費(fèi)卡的 進(jìn)站編號 收費(fèi)站號 char 6 not null 登上高速公路的起始收費(fèi)站 進(jìn)站時(shí)間 Date time 8 not null 標(biāo)識車輛進(jìn)入起始收費(fèi)站的時(shí)間 車輛類別 車型號 char 6 not null 車輛的類型,用于收費(fèi)計(jì)算 收費(fèi)查詢: 屬性 別名 類型 長度 取值圍 含義說明 收費(fèi)ID 進(jìn)出站ID char 12 唯一 進(jìn)入收費(fèi)站的通道位置及收費(fèi)次序 車輛類別 車型號 char 6 not null

23、 標(biāo)識車輛的類型,用于收費(fèi)計(jì)算 道路編號 道路ID char 2 01~99 表示兩個(gè)收費(fèi)站間的道路 應(yīng)收費(fèi)用 收費(fèi)數(shù)目 float 6 not null 應(yīng)收費(fèi)用=收費(fèi)單價(jià)*行駛路程 收費(fèi)人 職工編號 char 8 唯一 用于唯一標(biāo)識一位職工信息的關(guān)鍵域 各站距離情況: 屬性 別名 類型 長度 取值圍 含義說明 道路編號 道路ID char 2 01~~99 標(biāo)識兩個(gè)收費(fèi)站間的不同道路 進(jìn)站編號 收費(fèi)站號 char 6 取值唯一 唯一標(biāo)識進(jìn)入高速的收費(fèi)站 出站編號 收費(fèi)站號 char 6 取值唯一 唯一標(biāo)識

24、出高速公路的收費(fèi)站 距離 real 8 not null 兩個(gè)收費(fèi)站間不同道路的長度 道路通行 可否通行 char 2 是或否 該路是否可以通行 數(shù)據(jù)構(gòu)造: 數(shù)據(jù)構(gòu)造名 含義說明 車輛信息 定義了一輛車的相關(guān)信息 職工信息 定義了一位職工的相關(guān)信息 系統(tǒng)登錄 定義了登錄高速公路收費(fèi)系統(tǒng)的用戶和密碼 收費(fèi)站信息 介紹了一座收費(fèi)站的相關(guān)信息 車輛收費(fèi)標(biāo)準(zhǔn) 介紹了我國及我省規(guī)定的高速公路收費(fèi)標(biāo)準(zhǔn) 收費(fèi)卡信息 定義了進(jìn)站所獲通行卡的相關(guān)信息 車輛收費(fèi)信息 定義了一輛車的具體收費(fèi)情況 各站距離情況 不同收費(fèi)站間的不同道路及距離 數(shù)據(jù)流:

25、 數(shù)據(jù)流名稱 輸入 輸出 員工信息查詢 職工編號、密碼 員工信息 員工信息更新 更新的員工信息 員工信息 收費(fèi)卡信息更新 車輛提供收費(fèi)卡 收費(fèi)卡信息 收費(fèi)標(biāo)準(zhǔn)信息查詢 收費(fèi)標(biāo)準(zhǔn)信息 進(jìn)站處理 各站距離情況查詢 各站距離信息提供 進(jìn)站處理 收費(fèi)信息查詢 進(jìn)站處理 收費(fèi)信息 數(shù)據(jù)存儲 數(shù)據(jù)存儲名 輸入數(shù)據(jù)流 輸出數(shù)據(jù)流 存取方式 員工信息 更新的員工信息 員工信息 存到指定位置 收費(fèi)卡 更新的收費(fèi)卡信息 收費(fèi)卡信息 存到指定位置 收費(fèi)標(biāo)準(zhǔn) 收費(fèi)標(biāo)準(zhǔn)信息 存到指定位置 各站距離 各站距離信息 存到指定位置 收費(fèi)信

26、息 收費(fèi)信息 存到指定位置 處理過程: 處理過程名 處理過程 輸入數(shù)據(jù)流 輸出數(shù)據(jù)流 根本信息查詢 輸入關(guān)鍵屬性 信息查詢 根本信息 根本信息修改 根據(jù)所需進(jìn)展修改 信息修改 根本信息 根本信息添加 輸入新的信息 信息添加 根本信息 根本信息刪除 根據(jù)所需進(jìn)展刪減 信息刪除 根本信息 3.3 數(shù)據(jù)庫概念構(gòu)造設(shè)計(jì) 概念構(gòu)造是對現(xiàn)實(shí)世界的一種抽象,就是對實(shí)際的人、物、事和概念進(jìn)展進(jìn)展人為處理,它抽取人民關(guān)心的共同特性,忽略非本質(zhì)的細(xì)節(jié),并把這些特性用各種概念準(zhǔn)確地加以描述,這些概念組成了某種模型。概念構(gòu)造設(shè)計(jì)就是根據(jù)需求分析得到的結(jié)果對現(xiàn)實(shí)世界

27、進(jìn)展抽象,設(shè)計(jì)各個(gè)局部E-R模型。 n 局部E-R圖 1) 車輛的E-R圖 車輛 車牌號 車輛類別 年齡 性別 2) 職工的E-R圖 職工編號 職工姓名 職工 職位 3) 收費(fèi)站的E-R圖 聯(lián)系方式 地址 收費(fèi)站名 收費(fèi)站號 收費(fèi)站 4) 收費(fèi)卡的E-R圖 進(jìn)站編號 進(jìn)站時(shí)間 車輛類別 收費(fèi)卡號 收費(fèi)卡 備注 5) 車輛收費(fèi)標(biāo)準(zhǔn)E-R圖 收費(fèi)標(biāo)準(zhǔn) 收費(fèi)單價(jià) 車輛類型 6) 各站距離情況E-R圖 進(jìn)站編號 出站編號 道路通行 道路編號 各站距離情況 距離 性別 7) 員工

28、管理局部的E-R圖 年齡 領(lǐng)導(dǎo) 職工姓名 職工編號 1 管理 年齡 性別 n 職工編號 員工 職工姓名 領(lǐng)導(dǎo) 8) 收費(fèi)站與職工的實(shí)體聯(lián)系圖 1 管理 n 員工 系統(tǒng)登錄 nn 收費(fèi)查詢 收費(fèi)站

29、11 9) 收費(fèi)站功能的實(shí)體聯(lián)系圖 收費(fèi)站 1 顯示 n1 1 顯示 顯示 n 收費(fèi) n 收費(fèi)卡 1 11 收、還 收費(fèi)標(biāo)準(zhǔn) 各站距離情況 m 車輛 1 n 全局E-R圖 1 n n

30、 n 1 1 1

31、 n 1 n 1 1 n

32、 1 1 m 1 1

33、 1 m 職工編號 職工姓名 領(lǐng)導(dǎo) 職工編號 職工姓名 性別 年齡 管理 年齡 性別 車輛類別 員工 職位 道路編號 收費(fèi)ID 收費(fèi)查詢 密碼 系統(tǒng)登錄 收費(fèi)人 收費(fèi)時(shí)間 應(yīng)收費(fèi)用 職工編號 收費(fèi)站 收費(fèi)站號 地址 進(jìn)站時(shí)間 收費(fèi)站名 聯(lián)系方式 道路編號

34、顯示 顯示 顯示 出站編號 收費(fèi)卡號 車輛類型 收費(fèi) 距離 收費(fèi)卡 進(jìn)站編號 各站距離情況 車輛類別 收、交 進(jìn)站編號 道路通行 車輛類別 收費(fèi)標(biāo)準(zhǔn) 車牌號 收費(fèi)單價(jià) 備注 車輛 3.4 數(shù)據(jù)庫邏輯構(gòu)造設(shè)計(jì) 概念構(gòu)造是獨(dú)立于實(shí)際數(shù)據(jù)模型的信息構(gòu)造,必須將其轉(zhuǎn)化為邏輯構(gòu)造后才能進(jìn)展數(shù)據(jù)庫應(yīng)用的設(shè)計(jì)。也就是要將概念上的構(gòu)造轉(zhuǎn)化為BP數(shù)據(jù)庫系統(tǒng)所支持的實(shí)際數(shù)據(jù)庫。數(shù)據(jù)庫邏輯構(gòu)造管設(shè)計(jì)的任務(wù)是將概念模型轉(zhuǎn)換成特定DBMS所支持的數(shù)據(jù)模型的過程。 一般的邏輯構(gòu)造分為三步: i. 初始關(guān)系模式設(shè)計(jì); ii

35、. 關(guān)系模式規(guī)化; iii. 模式的評價(jià)與改進(jìn); 本系統(tǒng)所對應(yīng)的關(guān)系模式: 車輛信息〔車牌號,車輛類別〕 職工信息〔職工編號,職工,性別,年齡,職位〕 登錄系統(tǒng)〔職工編號,職工,職位〕 收費(fèi)查詢〔收費(fèi)ID,車輛類別,道路編號,應(yīng)收費(fèi)用,收費(fèi)人〕 收費(fèi)站信息〔收費(fèi)站號,收費(fèi)站名,地址,聯(lián)系方式〕 收費(fèi)卡信息〔收費(fèi)卡號,進(jìn)站編號,進(jìn)站時(shí)間,車輛類別〕 各站間距〔道路編號,進(jìn)站編號,出站編號,距離,道路通行〕 收費(fèi)標(biāo)準(zhǔn)〔車輛類別,收費(fèi)單價(jià),備注〕 〔陰影加粗局部為主鍵〕 根據(jù)式定義,對各關(guān)系模式進(jìn)展判斷,均符合第三式。 3.5 數(shù)據(jù)庫物理構(gòu)造設(shè)計(jì) 物理構(gòu)造設(shè)計(jì)是對于給定的

36、邏輯數(shù)據(jù)模型,選取了一個(gè)最適合應(yīng)用環(huán)境的物理構(gòu)造的過程。它的任務(wù)是為了有效地實(shí)現(xiàn)邏輯模式,確定所采取的存儲策略。分為確定物理構(gòu)造和評價(jià)物理構(gòu)造兩局部。 確定物理構(gòu)造的步驟: a) 存儲記錄構(gòu)造的設(shè)計(jì); b) 訪問方法的設(shè)計(jì); c) 數(shù)據(jù)存放位置的設(shè)計(jì); d) 系統(tǒng)配置的設(shè)計(jì); 3.5.1索引的建立〔主鍵、外鍵〕 索引是一種可以加快檢索的數(shù)據(jù)庫構(gòu)造,它包含從表或視圖的一列或多列生成的鍵,以及映射到指定數(shù)據(jù)存儲位置的指針。通過創(chuàng)立設(shè)計(jì)良好的索引,可以顯著提高數(shù)據(jù)庫查詢和應(yīng)用程序的性能。雖然索引有大量優(yōu)點(diǎn),但一個(gè)表中的大量索引會影響插入、刪除、更新數(shù)據(jù)的性能,增加索引調(diào)整的本錢,降低系

37、統(tǒng)的響應(yīng)速度。索引主要分為:聚集索引、非聚集索引、唯一索引、視圖索引、全文索引和XML索引。其中唯一索引中,創(chuàng)立PRIMARY KEY或UNIQUE約束時(shí),自動生產(chǎn)唯一索引。 表名 主鍵 外鍵 車輛信息 車牌號 車輛類別 職工信息 職工編號 無 登錄系統(tǒng) 職工編號 無 收費(fèi)查詢 收費(fèi)ID 車輛類別、道路編號、收費(fèi)人 收費(fèi)站信息 收費(fèi)站號 無 收費(fèi)卡信息 收費(fèi)卡號 車輛類別 各站間距 道路編號 無 收費(fèi)標(biāo)準(zhǔn) 車輛類別 無 觸發(fā)器 觸發(fā)器屬于一種特殊的存儲過程,可以在其中包含復(fù)雜的SQL語句。觸發(fā)器與存儲過程的區(qū)別在于觸發(fā)器能夠自動執(zhí)行并且

38、不含參數(shù)。通常在觸發(fā)器中編寫一段自動執(zhí)行的程序,用于保證數(shù)據(jù)操作的完整性,從而擴(kuò)展了對默認(rèn)值、約束和規(guī)那么的完整性檢查。具有 a) 自動執(zhí)行 b) 實(shí)現(xiàn)比約束更為復(fù)雜的完整性要求 c) 根據(jù)表數(shù)據(jù)修改前后的狀態(tài),根據(jù)差異采取相應(yīng)措施 d) 防止惡意的或錯(cuò)誤的INSERT、UPDATE和DELETE操作等等優(yōu)點(diǎn)。 本系統(tǒng)使用了如下觸發(fā)器: 1. 實(shí)現(xiàn)在收費(fèi)標(biāo)準(zhǔn)表中更新車輛類別的信息,收費(fèi)卡信息表、車輛信息表、收費(fèi)查詢表中的相對應(yīng)的信息會自動更新; 2. 保證向車輛信息表中插入信息時(shí),假設(shè)車輛類別不符合收費(fèi)標(biāo)準(zhǔn)中的要求,拒絕插入; 3. 實(shí)現(xiàn)在職工信息表中刪除某一職工時(shí),在登錄系統(tǒng)

39、表中的相關(guān)信息也被刪除; 4. 保證在登錄系統(tǒng)中添加新記錄時(shí),新職工的信息必須存在于職工信息表中; 5. 實(shí)現(xiàn)在各站間距表中修改道路編號時(shí),收費(fèi)查詢表中相對應(yīng)的信息會自動修改; 第四章 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn) 4.1實(shí)體類庫設(shè)計(jì)與實(shí)現(xiàn) 實(shí)體類庫是是輔助數(shù)據(jù)庫的映射,可以理解為傳遞數(shù)據(jù)的載體,主要用于數(shù)據(jù)的存儲。它貫穿于整個(gè)架構(gòu),負(fù)擔(dān)著在各層次及模塊間傳遞數(shù)據(jù)的職責(zé) 本系統(tǒng)一共建立了8個(gè)類庫,分別為Login 、Staffinformation、Tollgate、Space 、Shoufeibiaozhun、Carinformation 、Cardinformation、Shoufeiq

40、uery。 Login類:用于提供職工的登錄信息,包括職工編號、密碼和用戶類別。用戶類別的不同使不同的職工擁有不同的權(quán)限,主要分為領(lǐng)導(dǎo)和員工。 publicclassTollgate { privatestring _gateID; publicstring GateID { get { return _gateID; } set { _gateID = value; } } ……//對屬性進(jìn)展定義 public Tollgate()//定義無參的構(gòu)造函數(shù) { } public Tollgate(

41、string gateID, string gatename, string address, string phone) { _gateID = gateID; _gatename = gatename; _address = address; _phone = phone; } } Staffinformation類:提供職工的具體信息,用于增加、刪除、和查詢,其中包括職工編號、職工、性別、年齡和職位。領(lǐng)導(dǎo)擁有增加、刪除職工信息的權(quán)限,員工擁有查詢

42、職工信息的權(quán)限。 publicclassStaffinformation { privatestring _staffID; publicstring StaffID { get { return _staffID; } set { _staffID = value; } } …… public Staffinformation()//定義無參的構(gòu)造函數(shù) { } public Staffinformation(string staffID, string name, string sex, st

43、ring age, string post) { _staffID = staffID; _name = name; _sex = sex; _age = age; _post = post; } } Tollgate類:提供各個(gè)收費(fèi)站的信息,用于增加和查詢,其中包括收費(fèi)站編號、收費(fèi)站名、收費(fèi)站的地址和聯(lián)系方式。領(lǐng)導(dǎo)擁有增加收費(fèi)站信息的權(quán)限,員工擁有查詢的權(quán)限。 publicclassTollgate {

44、 privatestring _gateID; publicstring GateID { get { return _gateID; } set { _gateID = value; } } …… public Tollgate()//定義無參的構(gòu)造函數(shù) { } public Tollgate(string gateID, string gatename, string address, string phone) { _gateID = gateID;

45、 _gatename = gatename; _address = address; _phone = phone; } } Space類:提供各個(gè)收費(fèi)站之間的道路、距離信息,用于增加、修改和查詢。其中包括道路編號、起始收費(fèi)站的編號、終止收費(fèi)站的編號、兩車站間的距離和道路通行情況。領(lǐng)導(dǎo)擁有增加和修改的權(quán)限,員工擁有查詢的權(quán)限。 publicclassSpace { privatestring _roadID; publicstring RoadID { get

46、 { return _roadID; } set { _roadID = value; } } …… public Space()//定義無參的構(gòu)造函數(shù) { } public Space(string roadID, string jinzhanID, string chuzhanID, Single distance, string wayleave) { _roadID = roadID; _jinzhanID = jinzhanID;

47、 _chuzhanID = chuzhanID; _distance = distance; _wayleave = wayleave; } } Shoufeibiaozhun類:提供該車站的收費(fèi)標(biāo)準(zhǔn),一般為國家標(biāo)準(zhǔn)收費(fèi)標(biāo)準(zhǔn)。其中包括車輛類型、單價(jià)和被子。領(lǐng)導(dǎo)具有查詢和根據(jù)國家收費(fèi)標(biāo)準(zhǔn)進(jìn)展修改的權(quán)限,員工具有查詢的權(quán)限。 publicclassShoufeibiaozhun { privatestring _cartype; publicstring Cartype { g

48、et { return _cartype; } set { _cartype = value; } } …… public Shoufeibiaozhun()//定義無參的構(gòu)造函數(shù) { } public Shoufeibiaozhun(string cartype, Single unitprice, string remark) { _cartype = cartype; _unitprice = unitprice; _remark

49、 = remark; } } Carinformation類:提供過路車輛的信息,用于增加和查詢。其中包括車牌號和車輛類別。領(lǐng)導(dǎo)對于該表沒有權(quán)限,員工具有增加和查詢的權(quán)限。 publicclassCarinformation { privatestring _carID; publicstring CarID { get { return _carID; } set { _carID = value; } } …… public Carinformation()//定義無參的構(gòu)造函數(shù) {

50、 } public Carinformation(string carID, string cartype) { _carID = carID; _cartype = cartype; } } Cardinformation類:提供車輛所拿收費(fèi)卡的信息,用于增加和查詢。其中包括收費(fèi)卡編號、所進(jìn)高速公路的收費(fèi)站編號、進(jìn)高速公路的時(shí)間和車輛類型。領(lǐng)導(dǎo)對于該表沒有權(quán)限,員工擁有增加和查詢的權(quán)限。 publicclassCardinformation { privat

51、estring _cardID; publicstring CardID { get { return _cardID; } set { _cardID = value; } } …… public Cardinformation()//定義無參的構(gòu)造函數(shù) { } public Cardinformation(string cardID, string jinzhanID, DateTime jinzhantime, string cartype) { _cardI

52、D = cardID; _jinzhanID = jinzhanID; _jinzhantime = jinzhantime; _cartype = cartype; } } Shoufeiquery類:提供車輛的具體收費(fèi)信息,用于增加和查詢。其中包括收費(fèi)編號、車輛類型、所走高速的道路編號、應(yīng)收費(fèi)用和收費(fèi)的員工。領(lǐng)導(dǎo)對于該表沒有權(quán)限,員工擁有增加和查詢的權(quán)限。 publicclassShoufeiquery { privatestring _shoufeiID; pub

53、licstring ShoufeiID { get { return _shoufeiID; } set { _shoufeiID = value; } } …… public Shoufeiquery()//定義無參的構(gòu)造函數(shù) { } public Shoufeiquery(string shoufeiID,string cartype,string roadID,string cost,string name) { _shoufeiID = shoufeiID;

54、 _cartype = cartype; _roadID = roadID; _cost = cost; _name = name; } } 4.2數(shù)據(jù)訪問層類庫設(shè)計(jì)與實(shí)現(xiàn) 數(shù)據(jù)訪問層有時(shí)候也稱為是持久層,是所做事務(wù)直接操作數(shù)據(jù)庫,針對數(shù)據(jù)的增添、刪除、修改、查找等。主要是對原始數(shù)據(jù)〔數(shù)據(jù)庫或者文本文件等存放數(shù)據(jù)的形式〕的操作層,是對數(shù)據(jù)的操作,具體為業(yè)務(wù)邏輯層或表示層提供數(shù)據(jù)效勞。 本系統(tǒng)中一共建立了9個(gè)數(shù)據(jù)訪問層的類庫,分別為:Dabase、LoginServer、Staffinfo

55、rmationServer、TollgateServer、SpaceServer、ShoufeibiaozhunServer、CarinformationServer 、CardinformationServer、ShoufeiqueryServer。 鑒于大局部類庫實(shí)現(xiàn)的功能與代碼都類似,在這里只貼局部類庫的代碼。 Dabase類:主要是提供數(shù)據(jù)庫的以及在數(shù)據(jù)庫中執(zhí)行增、刪、改、查的代碼。 publicclassDabase { privatestaticstring _connStr = "Data Source=.;Initial Catalog=Road;Integr

56、ated Security=True"; privatestaticSqlConnection sqlcon = null; privatestaticvoid CreateConnection() { if (sqlcon == null) { sqlcon = newSqlConnection(_connStr); sqlcon.Open(); } elseif (sqlcon.State == ConnectionState.Closed ||

57、 sqlcon.State == ConnectionState.Broken) { sqlcon.Close(); sqlcon.Open(); } } //執(zhí)行Insert/update/delete,不帶參數(shù) publicstaticint ExecuteNoQuery(string strsql) { int i; try { CreateConnection();

58、 SqlCommand sqlcmd = newSqlCommand(strsql, sqlcon); i = sqlcmd.ExecuteNonQuery(); sqlcon.Close(); return i; } catch { return -1; } } //執(zhí)行Insert/update/delete,帶參數(shù) publicstaticint ExecuteNoQuery(string strsql, para

59、msSqlParameter[] param) { int i; try { CreateConnection(); SqlCommand sqlcmd = newSqlCommand(strsql, sqlcon); //sqlcmd.Parameters.Add(param); foreach (SqlParameter par in param) //遍歷數(shù)組將參數(shù)對象添加到操作命令中 { sqlcmd.Parameter

60、s.Add(par); } i = sqlcmd.ExecuteNonQuery(); return i; } catch { return -1; } } //執(zhí)行SELECT命令,得到數(shù)據(jù)表 publicstaticDataTable GetTable(string strsql) { try { CreateConnection();

61、SqlDataAdapter sda = newSqlDataAdapter(strsql, sqlcon); DataSet ds = newDataSet(); sda.Fill(ds, "temp"); sqlcon.Close(); return ds.Tables["temp"]; } catch { returnnull; } } publicstaticDataTable GetTable(string st

62、rsql, paramsSqlParameter[] param) { try { CreateConnection(); SqlDataAdapter sda = newSqlDataAdapter(strsql, sqlcon); foreach (SqlParameter par in param) //遍歷數(shù)組將參數(shù)對象添加到操作命令中 { sda.SelectCommand.Parameters.Add(param);

63、 } DataSet ds = newDataSet(); sda.Fill(ds, "temp"); sqlcon.Close(); return ds.Tables["temp"]; } catch { returnnull; } } publicstaticSqlDataReader GetReader(string strsql) { try

64、 { CreateConnection(); SqlCommand sqlcmd = newSqlCommand(strsql, sqlcon); SqlDataReader sdr = sqlcmd.ExecuteReader(CommandBehavior.CloseConnection); return sdr; } catch { returnnull; } } publicstaticSqlDataReader GetReader(strin

65、g strsql, paramsSqlParameter[] param) { try { CreateConnection(); SqlCommand sqlcmd = newSqlCommand(strsql, sqlcon); foreach (SqlParameter par in param) //遍歷數(shù)組將參數(shù)對象添加到操作命令中 { sqlcmd.Parameters.Add(par);

66、 } SqlDataReader sdr = sqlcmd.ExecuteReader(); return sdr; } catch { returnnull; } } // 執(zhí)行統(tǒng)計(jì)等命令 publicstaticint num(string strsql) { int i; try { CreateConnection(); SqlCommand sqlcmd = newSqlCommand(strsql, sqlcon); i = (int)sqlcmd.ExecuteScalar(); return i; } catch { return 0; } } // 執(zhí)行統(tǒng)計(jì)等命令 publicstaticint num(string strsql, par

展開閱讀全文
溫馨提示:
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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!