論文通用試題庫管理系統(tǒng)開_第1頁
論文通用試題庫管理系統(tǒng)開_第2頁
論文通用試題庫管理系統(tǒng)開_第3頁
論文通用試題庫管理系統(tǒng)開_第4頁
論文通用試題庫管理系統(tǒng)開_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 畢 業(yè) 設(shè) 計(jì)(論 文) 設(shè)計(jì)(論文)題目: 通用試題庫管理系統(tǒng)開發(fā) 學(xué)生姓名: 于偉躍 指導(dǎo)教師: 李廣水 二級(jí)學(xué)院: 龍?bào)磳W(xué)院 專業(yè): 計(jì)算機(jī)科學(xué)與技術(shù) 班級(jí):08計(jì)算機(jī)科學(xué)與技術(shù) 學(xué)號(hào): 0821113801 提交日期:2012 年 4月 23日 答辯日期: 2012年5月 16 日 目 錄1 緒論21.1 通用試題庫管理系統(tǒng)開發(fā)的背景21.2 通用試題庫管理系統(tǒng)開發(fā)的目的和意義21.3 試題庫管理系統(tǒng)的研究現(xiàn)狀與發(fā)展3 國(guó)外試題庫研究現(xiàn)狀3 國(guó)內(nèi)試題庫研究現(xiàn)狀3 試題庫管理系統(tǒng)的發(fā)展趨勢(shì)31.4 系統(tǒng)研究的主要內(nèi)容及組織41.5 小結(jié)42 通用試題庫管理系統(tǒng)需求分析52.1 系統(tǒng)需求

2、分析52.2系統(tǒng)功能邏輯圖62.3數(shù)據(jù)庫需求分析62.3系統(tǒng)使用的各種關(guān)鍵技術(shù)72.3.1 ADO數(shù)據(jù)訪問技術(shù)72.3.2 VBA編程技術(shù)72.3.3 OLE編程技術(shù)82.4 小結(jié)8自動(dòng)成卷模塊10手動(dòng)成卷模塊113.3.4 數(shù)據(jù)庫設(shè)計(jì)原則144 通用試題庫管理系統(tǒng)的實(shí)現(xiàn)154.2詳細(xì)設(shè)計(jì)16登陸模塊的設(shè)計(jì)16試題錄入模塊的設(shè)計(jì)17試題查詢、瀏覽、修改模塊的設(shè)計(jì)19課程、章節(jié)模塊的設(shè)計(jì)20自動(dòng)出卷模塊的設(shè)計(jì)21手動(dòng)出卷模塊的設(shè)計(jì)214.4數(shù)據(jù)層的設(shè)計(jì)22用ADO或Data連接數(shù)據(jù)庫224.5試題庫管理系統(tǒng)中的主要算法25組卷254.6 數(shù)據(jù)庫設(shè)計(jì)過程26用戶表的設(shè)計(jì)26題庫表的設(shè)計(jì)26課程表的

3、設(shè)計(jì)26章節(jié)表的設(shè)計(jì)26難易度表的設(shè)計(jì)26題目類型表的設(shè)計(jì)27試卷管理表的設(shè)計(jì)27小結(jié)275 總結(jié)28參考文獻(xiàn)29通用試題庫管理系統(tǒng)開發(fā)中文摘要隨著計(jì)算機(jī)技術(shù)的發(fā)展和國(guó)家教學(xué)水平的提高,使得計(jì)算機(jī)逐漸成為人們生活與學(xué)習(xí)的工具。由于考試作為評(píng)估各個(gè)學(xué)校教學(xué)質(zhì)量和學(xué)生能力的重要手段,建立試題庫并且實(shí)施有效的管理便成了學(xué)校迫切希望解決的問題。本課題的研究實(shí)現(xiàn)了高效、方便、客觀的出題,具有較高查詢效率,且能自動(dòng)生成試卷,又能使試卷管理工作更科學(xué)更高效。本系統(tǒng)采用C# 等技術(shù)對(duì)試題庫管理系統(tǒng)的設(shè)計(jì)進(jìn)行了研究開發(fā)。 本文主要介紹了該系統(tǒng)的背景、目的和意義,給出了系統(tǒng)的需求分析、總體方案和總體設(shè)計(jì),還有本系

4、統(tǒng)運(yùn)行的工作環(huán)境以及所使用的開發(fā)工具,包括C# 、SQL 等軟件。采用ADO數(shù)據(jù)庫訪問技術(shù)對(duì)數(shù)據(jù)庫進(jìn)行連接和訪問。實(shí)現(xiàn)了自動(dòng)出卷和手動(dòng)出卷等主要功能。 本系統(tǒng)采用C# 作為開發(fā)平臺(tái),以SQL 作為后臺(tái)數(shù)據(jù)庫,整個(gè)系統(tǒng)層次結(jié)構(gòu)簡(jiǎn)單,易懂。關(guān)鍵詞:試題庫,C#,SQL,ADOUniversal test library management system developmentAbstractWith the development of computer technology and the state to raise teaching standards, making computers

5、increasingly become life and learning tools. As a result of the examination to be an important mean to assess the quality of teaching in all schools and to check students ability, examination base has become an important educational resource. It can play a high-effect, convenient and objective effec

6、t ion when setting a theme. Item Bank to establish and implement effective management has become a teacher eager to solve the problem of it. The system use C# technology to test the design of database system research and development carried out.It introduces the background, purpose and significance

7、of this system and describes the need analysis, general scheme and design of the system. Still and, it introduces the running environment of the system and the C# tool for suing and so on. This examination base system adopts three-layer architecture. Using ADO technology to connect and SQL the datab

8、ase SQL. These functions of this software are as follows: Manual creates paper and Auto creates paper and so on.The system uses C# as a development platform, and uses the SQL to be the backstage database; The level of the entire system structure is simple and easy to understand.Keywords:Examination

9、base, C#, SQL, ADO1 緒論1.1 通用試題庫管理系統(tǒng)開發(fā)的背景計(jì)算機(jī)在教學(xué)管理中的應(yīng)用是現(xiàn)實(shí)教學(xué)管理更加科學(xué)化、現(xiàn)代化的關(guān)鍵。要提高教學(xué)質(zhì)量,必須把握各個(gè)教學(xué)環(huán)節(jié)??荚囀侵匾囊画h(huán),是檢測(cè)學(xué)生學(xué)習(xí)效果和客觀評(píng)價(jià)的一種手段。在學(xué)校教學(xué)工作中,傳統(tǒng)的試題管理通常是以試題集或者試卷集的形式進(jìn)行的,各位老師單獨(dú)或者集體命名,采用人工手段,工作復(fù)雜。隨著科學(xué)的不斷發(fā)展,現(xiàn)代化的教學(xué)手段廣泛應(yīng)用,傳統(tǒng)的試題管理模式和手工組卷模式將逐步被計(jì)算機(jī)代替,是教學(xué)檢測(cè)更客觀,更科學(xué),更公正,不斷提高教學(xué)水平質(zhì)量。本系統(tǒng)可以從試題庫中自動(dòng)的查找和組織出一些不同類型。不同難度、不同章節(jié)范圍內(nèi)的試題來組

10、成一份合理的試卷。它采用的是利用試卷自動(dòng)生成章法記錄尸體的一組特征值,根據(jù)用戶提供的試卷題目類型、章節(jié)分卷、難易度等條件,借助于系統(tǒng)中的一系列數(shù)據(jù)文章,是具體課程的相關(guān)數(shù)據(jù)動(dòng)態(tài)的抽象成邏輯數(shù)據(jù),用以解決通用問題,現(xiàn)行的規(guī)劃出一份約束滿足的、合理的試卷。1.2 通用試題庫管理系統(tǒng)開發(fā)的目的和意義設(shè)計(jì)開發(fā)通用試題庫管理系統(tǒng)的目的主要是為了幫助教師輕松的出一份高質(zhì)量的試卷,提供一個(gè)科學(xué)和實(shí)用的教學(xué)資源管理工具。通用試題庫管理系統(tǒng)的重大意義是讓教師節(jié)約大量的教學(xué)工作準(zhǔn)備時(shí)間,并且擁有更多的時(shí)間進(jìn)行教學(xué)研究和對(duì)學(xué)生進(jìn)行個(gè)性化深入輔導(dǎo)。選擇通用試題庫管理系統(tǒng)研究設(shè)計(jì)的意義,是試題庫管理系統(tǒng)可以為學(xué)校教師舉

11、行考試提供方便與快捷的方式,擁有與真實(shí)考試同樣的題型、組卷等功能。而且,結(jié)合ADO控件和數(shù)據(jù)庫查詢等技術(shù)建立具有較高查詢效率的試題庫組織結(jié)構(gòu),使得試卷的自動(dòng)生成并逐步積累,形成有效的試題庫,使試卷管理工作更科學(xué)更高效。本試題庫管理系統(tǒng)具有以下幾方面的優(yōu)點(diǎn):(1)教師可以容易地組成試卷,對(duì)被考試對(duì)象進(jìn)行考試;(2)教師可以在試題庫的范圍內(nèi),按被考對(duì)象的情況方便地取出一定數(shù)量的試題,在確保內(nèi)容的基礎(chǔ)上組成試卷;(3)當(dāng)在試題庫中試題內(nèi)容恰當(dāng)和技巧完備情況下,通過試題庫組成的試卷質(zhì)量將高于出試卷人自己出的試卷;(4)教師工作會(huì)變得簡(jiǎn)單和高級(jí),不需要花費(fèi)大量的時(shí)間,運(yùn)用計(jì)算機(jī)技術(shù),可以方便地完成對(duì)試題

12、的錄入、刪除、修改,自動(dòng)生成試卷,幫助學(xué)生復(fù)習(xí)和教師出題;(5)方便形成習(xí)題供學(xué)生練習(xí),同時(shí)又方便教師出題;(6)在教學(xué)管理上,試題庫具有經(jīng)濟(jì)、靈活的特點(diǎn);(7)在教育測(cè)量上,試題庫能生成比傳統(tǒng)試卷質(zhì)量高的試卷。1.3 試題庫管理系統(tǒng)的研究現(xiàn)狀與發(fā)展1.3.1 國(guó)外試題庫研究現(xiàn)狀 國(guó)外試題庫的建設(shè)是從1945年后發(fā)展起來的,如今發(fā)達(dá)國(guó)家的考試專業(yè)機(jī)構(gòu)都根據(jù)自己承擔(dān)的職能建立起大型題庫,沒有題庫的考試機(jī)構(gòu)很難體現(xiàn)出其應(yīng)有的專業(yè)性。由于基于計(jì)算機(jī)考試的蓬勃發(fā)展和題庫研究的不斷深入,美國(guó)心理協(xié)會(huì)(APA)在1986年出版了關(guān)于如何開發(fā)、使用計(jì)算機(jī)化考試及解釋考分的指南,這成了考試和軟件開發(fā)者出版商的

13、事實(shí)標(biāo)準(zhǔn)。投入實(shí)際使用的例子有,1982年采用遠(yuǎn)距離教育方式的美國(guó)學(xué)院(American college)開始用計(jì)算機(jī)進(jìn)行測(cè)驗(yàn),當(dāng)時(shí)被稱為“點(diǎn)播測(cè)驗(yàn)(EOD)”,學(xué)院可以再認(rèn)為準(zhǔn)備好的任何時(shí)候參加某一門功課的考試;1993年ETS實(shí)現(xiàn)了計(jì)算機(jī)適應(yīng)性GRE考試;從1994年開始,美國(guó)護(hù)理證書考試會(huì)全在計(jì)算機(jī)上進(jìn)行。目前,國(guó)外許多大型測(cè)驗(yàn)出版機(jī)構(gòu)、地區(qū)教育主管部門、地區(qū)學(xué)校以及工業(yè)個(gè)專業(yè)資格認(rèn)證機(jī)構(gòu)都以某種測(cè)量理論為指導(dǎo)建立題庫、編制試卷等進(jìn)行各種有關(guān)研究。1.3.2 國(guó)內(nèi)試題庫研究現(xiàn)狀現(xiàn)在越來越多的網(wǎng)絡(luò)公司致力于各種考試系統(tǒng)的開發(fā)研究,以下就針對(duì)現(xiàn)今國(guó)內(nèi)使用率比較高的考試系統(tǒng)作簡(jiǎn)單介紹:北京杰佛

14、軟件技術(shù)開發(fā)有限公司開發(fā)的通用考試系統(tǒng)WebExam:通用考試系統(tǒng)WebExam是目前應(yīng)用比較廣泛的遠(yuǎn)程網(wǎng)絡(luò)學(xué)習(xí)考試軟件,它有開放的題庫管理系統(tǒng)和靈活的組卷系統(tǒng),能夠自動(dòng)輸出Word試卷、提供題目導(dǎo)入導(dǎo)出、題庫和試卷導(dǎo)入導(dǎo)出等設(shè)計(jì),提供資源的快速收集和高度共享。通用考試系統(tǒng)適合政府、行業(yè)及企業(yè)的各專業(yè)網(wǎng)上考試、作業(yè)、練習(xí)、培訓(xùn)管理等應(yīng)用。但只是很適用于遠(yuǎn)程或是分布式測(cè)試或考試,而在學(xué)校,老師為班級(jí)測(cè)試或作為考試而出的試卷只需要在校園或是機(jī)房的范圍內(nèi)使用,而不必上網(wǎng),因而單機(jī)版的易于控制而更有優(yōu)勢(shì)?,F(xiàn)在設(shè)計(jì)編寫的試題庫管理系統(tǒng),一般都是基于兩種目的:一是充分利用現(xiàn)有的計(jì)算機(jī)系統(tǒng)減輕工作人員的勞動(dòng)

15、強(qiáng)度;二是摒棄傳統(tǒng)的手工整理、以試卷(紙質(zhì))的形式存放到檔案室,浪費(fèi)紙張等原材料,也占地方,不利于保護(hù)環(huán)境和保存。針對(duì)以上傳統(tǒng)試卷的種種問題,再考慮到Internet信息世界的現(xiàn)代化和計(jì)算機(jī)硬件配置的日新月異,很多人在研究能不能把題目放到計(jì)算機(jī)上讓考生來抽題,一方面減少泄題的可能性,另一方面也可以增加試題的靈活性,從而使教師能更快更好的了解掌握學(xué)生的知識(shí)掌握情況。1.3.3 試題庫管理系統(tǒng)的發(fā)展趨勢(shì) 隨著計(jì)算機(jī)事業(yè)在我國(guó)的縱深發(fā)展,題庫在我國(guó)的應(yīng)用也越來越廣泛。一個(gè)好的試題庫管理系統(tǒng),要求界面友好,能方便地錄入試題,試題庫的維護(hù)(修改、刪除試題)操作簡(jiǎn)單,組卷靈活快捷,查詢?cè)囶}或試卷迅速,以適

16、應(yīng)各種知識(shí)更新對(duì)試卷難度、題型的要求,還要具有一定的安全性,因此利用計(jì)算機(jī)化的試卷生成系統(tǒng)來組卷將是未來學(xué)??荚嚨陌l(fā)展趨勢(shì)。1.4 系統(tǒng)研究的主要內(nèi)容及組織 試題庫管理系統(tǒng)包括的主要的內(nèi)容有試題的錄入、試題管理(修改、刪除)、試卷管理,生成試卷,用戶管理和課程管理的功能。試題的錄入、修改、刪除主要是由教師來完成,從而達(dá)到對(duì)試題庫的管理。在試題錄入模塊選擇所屬的科目,章節(jié)次等來錄入試題保存在題庫中,以便日后生成試卷,試卷生成過后,在試卷管理模塊選擇試卷修改(手動(dòng)),打開試卷以便對(duì)試卷進(jìn)行刪除、瀏覽等,點(diǎn)擊出卷即老師出卷完成。第一章 緒論主要介紹通用試題庫管理系統(tǒng)開發(fā)的背景、意義和目的,以及它的發(fā)

17、展和現(xiàn)狀。第二章 通用試題庫管理系統(tǒng)總體方案的設(shè)計(jì)對(duì)系統(tǒng)的總體方案進(jìn)行需求分析,包括本系統(tǒng)的平臺(tái)選擇和所要完成的功能以及數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)庫設(shè)計(jì)原則、對(duì)數(shù)據(jù)庫設(shè)計(jì)進(jìn)行分析。還介紹了系統(tǒng)使用到的各種關(guān)鍵技術(shù),如:ADO、Data等技術(shù)的應(yīng)用。第三章 通用試題庫管理系統(tǒng)的設(shè)計(jì)主要是試題庫管理系統(tǒng)的詳細(xì)設(shè)計(jì)和設(shè)計(jì)原則,系統(tǒng)使用的各種控件技術(shù)介紹。以及自動(dòng)、手動(dòng)出卷的實(shí)現(xiàn)過程。第四章 試題的數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)主要是介紹數(shù)據(jù)庫設(shè)計(jì)概述、數(shù)據(jù)庫原則、設(shè)計(jì)過程、以及用戶表、題庫表、試卷管理表、自動(dòng)出卷表、課程表等的設(shè)計(jì)。第5章 結(jié)論1.5 小結(jié)本章主要是介紹了當(dāng)前通用試題庫管理系統(tǒng)的背景、意義和目的,發(fā)展和現(xiàn)

18、狀,以及隨著計(jì)算機(jī)技術(shù)的發(fā)展,試題庫管理系統(tǒng)的發(fā)展現(xiàn)狀和國(guó)內(nèi)外的情況。對(duì)本試題庫管理系統(tǒng)所提供的功能做了個(gè)簡(jiǎn)單的介紹,分析各個(gè)部分的功能以及需要完成的設(shè)計(jì)。2 通用試題庫管理系統(tǒng)需求分析2.1 系統(tǒng)需求分析通用試題庫管理系統(tǒng)的設(shè)計(jì)旨在為各單位的教務(wù)管理部門和老師提供一個(gè)方便的試題管理工具,為教師的教學(xué)準(zhǔn)備工作節(jié)約大量時(shí)間,從而可以讓教師擁有更多的時(shí)間進(jìn)行教學(xué)研究,建立一個(gè)有效的試題庫,可以很大程度的減輕教師的負(fù)擔(dān),提高教學(xué)質(zhì)量。在出卷功能的幫助下,能夠有效的做出按照教師需求的試卷,出卷類型還有自動(dòng)和手動(dòng)之分,手動(dòng)出卷能夠按照教師自己的醫(yī)院出卷,體現(xiàn)了出卷的人性化和準(zhǔn)確化。自動(dòng)出卷能夠節(jié)省時(shí)間,

19、在數(shù)據(jù)庫相對(duì)豐富和準(zhǔn)確的情況下,系統(tǒng)能夠做出相對(duì)公平和準(zhǔn)確的試卷 通用試題庫管理系統(tǒng)的主要功能是試題錄入、查詢、瀏覽、修改、刪除、出題、成卷、課程和章節(jié)管理、導(dǎo)入導(dǎo)出,其最大的特點(diǎn)是方便和靈活,方便了教師出題,友好的人機(jī)的界面更是超越了手動(dòng)試題的整理。 教師通過用戶名和密碼登錄到系統(tǒng)主界面,可以進(jìn)行試題的錄入、刪除、修改和查詢,也可以進(jìn)行試卷生成,利用試題導(dǎo)入導(dǎo)出的功能,可以將固定格式的題目導(dǎo)入到題庫中,豐富試題庫的內(nèi)容,在相對(duì)豐富的數(shù)據(jù)庫中能夠做出相對(duì)公平和準(zhǔn)確的試卷。 管理員登錄到系統(tǒng),可以對(duì)用戶系統(tǒng)進(jìn)行管理,進(jìn)行用戶系統(tǒng)的維護(hù)。 試卷管理系統(tǒng)是根據(jù)已經(jīng)完成的模板完成試卷的組卷工作。出卷系

20、統(tǒng)分為手動(dòng)和自動(dòng)出卷兩種,其中自動(dòng)出卷是系統(tǒng)根據(jù)完成的模板自動(dòng)選取題型,難度相當(dāng)?shù)脑囶}組成試卷,而手動(dòng)出卷是指教師能夠按照自身的要求完成組卷工作。通用試題庫管理系統(tǒng)需要完成功能描述:(1)能完成試題的編輯功能,錄入、刪除、修改;(2)設(shè)計(jì)手動(dòng)生成試卷功能;(3)設(shè)計(jì)自動(dòng)生成試卷功能;(5)具有用戶管理的功能;(6)具有課程和章節(jié)管理的功能;(7)具有試題導(dǎo)入導(dǎo)出的功能;(8)具有試題查詢?yōu)g覽、查詢的功能;(9)數(shù)據(jù)庫設(shè)計(jì);2.2系統(tǒng)功能邏輯圖用戶名用戶名提示密碼錯(cuò)誤密碼錯(cuò)誤驗(yàn)證用戶名密碼密碼用戶登陸成功組卷要求試題錄入、查詢、修改通用試題庫管理系統(tǒng)題庫臨時(shí)試卷庫試卷修改生成試卷圖1 系統(tǒng)功能邏

21、輯圖2.3數(shù)據(jù)庫需求分析數(shù)據(jù)庫設(shè)計(jì)的第一個(gè)階段,也是非常重要的一個(gè)階段是數(shù)據(jù)庫需求分析。需求分析的結(jié)果是系統(tǒng)開發(fā)的基礎(chǔ)。在這個(gè)階段主要是收集基本數(shù)據(jù)以及數(shù)據(jù)處理的流程,為以后進(jìn)一步設(shè)計(jì)打下基礎(chǔ)。1、信息需求。信息需求定義系統(tǒng)未來使用的所有信息,調(diào)查應(yīng)用系統(tǒng)用戶需要操作的數(shù)據(jù),決定在數(shù)據(jù)庫中存儲(chǔ)什么數(shù)據(jù)。描述數(shù)據(jù)間本質(zhì)上和概念上的聯(lián)系,描述信息的內(nèi)容和結(jié)構(gòu),以及信息之間的聯(lián)系等性質(zhì)。2、處理需求。處理需求定義系統(tǒng)未來數(shù)據(jù)處理的操作功能,包括操作執(zhí)行的頻率和場(chǎng)合,操作與數(shù)據(jù)之間的聯(lián)系等。調(diào)查應(yīng)用系統(tǒng)用戶要求對(duì)數(shù)據(jù)進(jìn)行什么樣的處理,理清數(shù)據(jù)庫中各種數(shù)據(jù)之間的關(guān)系3。針對(duì)通用試題庫管理系統(tǒng)的需求,通過

22、業(yè)務(wù)和數(shù)據(jù)流分析,設(shè)計(jì)出下面所示的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)(部分):課程:包括的數(shù)據(jù)項(xiàng)有課程名稱。難度:包括的數(shù)據(jù)項(xiàng)有難易度。章節(jié):包括的數(shù)據(jù)項(xiàng)有所屬章節(jié)。題型:包括的數(shù)據(jù)項(xiàng)有題目類型。題庫:包括的數(shù)據(jù)項(xiàng)有題目?jī)?nèi)容、答案、題目類型、所屬課程、所屬章節(jié)、分值等。試卷管理:包括手動(dòng)出題時(shí)臨時(shí)產(chǎn)生的數(shù)據(jù),題目?jī)?nèi)容、答案、題目類型、所屬課程、所屬章節(jié)、分值等。自動(dòng)出卷:包括自動(dòng)出題時(shí)臨時(shí)產(chǎn)生的數(shù)據(jù),題目?jī)?nèi)容、答案、題目類型、所屬課程、所屬章節(jié)、分值等。2.3 小結(jié)本章主要分析系統(tǒng)的設(shè)計(jì)方案以及原則,介紹了AOD技術(shù)和VBA技術(shù)以及OLE對(duì)象嵌入技術(shù),利用AOD對(duì)數(shù)據(jù)庫進(jìn)行訪問,VBA操縱word,實(shí)現(xiàn)試題錄入

23、和組卷的整體功能第3章 通用試題庫系統(tǒng)設(shè)計(jì)3.1系統(tǒng)模塊系統(tǒng)模塊如圖2所示:圖2 系統(tǒng)模塊 通用試題庫管理系統(tǒng)需要實(shí)現(xiàn)的功能主要有五大模塊,它們分別是:系統(tǒng)管理模塊、試題管理模塊、試卷管理模塊、課程管理模塊、幫助模塊。如圖需要完成的模塊,主要實(shí)現(xiàn)了用戶的管理,以及試題錄入、修改、查詢、到處、刪除等操作。在試卷管理的方面,主要實(shí)現(xiàn)手動(dòng)和自動(dòng)出卷功能。系統(tǒng)建立需要考慮的問題:(1)友好的人機(jī)界面,人機(jī)界面是用戶面對(duì)最多的軟件界面,應(yīng)當(dāng)設(shè)置得美觀大方; (2)多種途徑的對(duì)試題庫試題進(jìn)行維護(hù),試題庫的題目?jī)?nèi)容不是固定不變的,應(yīng)根據(jù)課程發(fā)展的需要及時(shí)更新或添加或查詢有關(guān)試題內(nèi)容;(3)手動(dòng)、自動(dòng)成卷策略

24、;(4)方便對(duì)已有試題的添加、刪除、修改等管理;(5)完善的系統(tǒng)幫助功能,可以幫助用戶盡快熟悉和掌握對(duì)試題庫管理系統(tǒng)的運(yùn)用。 教師添加試題模塊登陸主界面進(jìn)入試題添加界面填寫試題屬性(課程、難度、章節(jié)、題型)查看添加的試題點(diǎn)擊保存退出圖 3 教師添加試題流程圖 教師添加試題模塊主要是是對(duì)試題庫中的試題查詢、添加、修改、刪除。添加試題的界面有很多需要填寫的屬性,在填寫試題內(nèi)容之前,需要先填寫試題類型、所屬知識(shí)點(diǎn)(章節(jié))、分值、難易度、答案等信息。填寫完成之后才能對(duì)試題的內(nèi)容和答案進(jìn)行填寫。這樣填寫的試題屬性是幫助教師按照試卷模板組出想要的試卷,試卷符合模板要求內(nèi)容,即對(duì)于知識(shí)點(diǎn)(章節(jié))、類型、難易

25、度、分值的要求。試題的修改和刪除模塊主要是對(duì)已查詢的試題進(jìn)行屬性的修改,即:類型、所屬指示點(diǎn)(章節(jié))、分值、難易度、答案的修改以及刪除。自動(dòng)成卷模塊自動(dòng)生成試卷的流程圖登陸主界面自動(dòng)成卷設(shè)定選題條件自動(dòng)出題生成試卷查看出題結(jié)果退出程序自動(dòng)成卷,其基本原理是由教師輸入選題條件,計(jì)算機(jī)隨機(jī)地從試題庫中抽取一定數(shù)量的符合條件的試題。本系統(tǒng)采用的算法排除了重復(fù)的可能性,即一次性出題重復(fù)率為0。如果題量大,多次出題的重復(fù)率也可以降至最小,這由系統(tǒng)產(chǎn)生的隨機(jī)數(shù)決定。通過自動(dòng)成卷,按照模板能夠組成教師需要的試卷。手動(dòng)成卷模塊手動(dòng)生成試卷的流程圖登陸主界面手動(dòng)成卷是檢查試卷庫是否有題清空試卷庫否選擇符合條件的

26、題目查看出題結(jié)果生成試卷退出程序手動(dòng)成卷,其基本原理是由教師選定某個(gè)課程,選擇題型,系統(tǒng)過濾出符合題型的題目顯示出來,然后由教師選定要出的題,加入臨時(shí)試卷庫,查看出題結(jié)果之后滿意即可生成試卷。手動(dòng)生成試卷有檢測(cè)重復(fù)的代碼,使得一次性出題重復(fù)率也為0。試題庫試題E-R圖試題分值試題內(nèi)容試題試題類型試題所屬知識(shí)點(diǎn)試題難度3.2 數(shù)據(jù)項(xiàng)目分析針對(duì)通用試題庫管理系統(tǒng)的需求,通過業(yè)務(wù)和數(shù)據(jù)流分析,設(shè)計(jì)出下面所示的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)(部分):課程:包括的數(shù)據(jù)項(xiàng)有課程名稱。難度:包括的數(shù)據(jù)項(xiàng)有難易度。章節(jié):包括的數(shù)據(jù)項(xiàng)有所屬章節(jié)。題型:包括的數(shù)據(jù)項(xiàng)有題目類型。題庫:包括的數(shù)據(jù)項(xiàng)有題目?jī)?nèi)容、答案、題目類型、所屬

27、課程、所屬章節(jié)、分值等。試卷管理:包括手動(dòng)出題時(shí)臨時(shí)產(chǎn)生的數(shù)據(jù),題目?jī)?nèi)容、答案、題目類型、所屬課程、所屬章節(jié)、分值等。自動(dòng)出卷:包括自動(dòng)出題時(shí)臨時(shí)產(chǎn)生的數(shù)據(jù),題目?jī)?nèi)容、答案、題目類型、所屬課程、所屬章節(jié)、分值等。3.3 數(shù)據(jù)庫分析3.3.1 數(shù)據(jù)庫模塊分析 對(duì)于數(shù)據(jù)庫需要完成管理員表(manager)、習(xí)題表(problem)、試卷表(test)、答案(answer)。管理員表(manager)賬號(hào)mana_no姓名mana_name密碼mana_pwd習(xí)題表(problem)編號(hào)pro_no題目pro_detail習(xí)題答案編號(hào)pro_ansno難度系數(shù)pro_dif所屬章節(jié)編號(hào)cha_no所

28、屬章節(jié)要點(diǎn)cha_mpiont習(xí)題類型pro_type試卷表(test):試題編號(hào)tst_no試題名稱tst_name生成時(shí)間tst_time試題類型tst_type試題難度tst_dif試題數(shù)量tst_num試題分?jǐn)?shù)tst_score試題內(nèi)容tst_detail答案(answer):答案編號(hào)ans_no答案內(nèi)容ans_detail答案對(duì)應(yīng)習(xí)題編號(hào)pro_no3.3.2 數(shù)據(jù)庫的其他數(shù)據(jù)輸入數(shù)據(jù):鼠標(biāo)對(duì)按鈕的點(diǎn)擊查詢方式、查詢關(guān)鍵字;新建習(xí)題項(xiàng);習(xí)題項(xiàng)、章節(jié)項(xiàng)相應(yīng)紀(jì)錄更改;備份數(shù)據(jù)恢復(fù)所需的數(shù)據(jù)備份文件;修改習(xí)題、查詢習(xí)題、刪除習(xí)題返回課程負(fù)責(zé)人的帳號(hào)、姓名;受限操作所需的密碼;輸出數(shù)據(jù):查詢

29、關(guān)鍵字確定的數(shù)據(jù)庫記錄的子集;統(tǒng)計(jì)結(jié)果及其格式化文件;信息錄入、刪改結(jié)果(成功或失?。?;用戶查詢、生成試卷、習(xí)題更新操作等操作結(jié)果;數(shù)據(jù)備份輸出的數(shù)據(jù)備份文件;3.3.4 數(shù)據(jù)庫設(shè)計(jì)原則1、一致性原則對(duì)信息進(jìn)行統(tǒng)一、系統(tǒng)的分析與設(shè)計(jì),協(xié)調(diào)好各數(shù)據(jù)源,做到“數(shù)出一門”、“算法統(tǒng)一”、“度量一致”。保證系統(tǒng)數(shù)據(jù)的一致性和有效性。2、完整性原則數(shù)據(jù)庫的完整性是指數(shù)據(jù)的正確性和相容性。要防止合法用戶使用數(shù)據(jù)庫時(shí)向數(shù)據(jù)庫加入不合語義的數(shù)據(jù)。對(duì)輸入到數(shù)據(jù)庫中的數(shù)據(jù)要有審核和約束機(jī)制。3、安全性原則數(shù)據(jù)庫的安全性是指保護(hù)數(shù)據(jù),防止非法用戶使用數(shù)據(jù)庫或合法用戶非法使用數(shù)據(jù)庫造成數(shù)據(jù)泄露、更改或破壞。要有認(rèn)證和

30、授權(quán)機(jī)制。4、可伸縮性原則數(shù)據(jù)庫結(jié)構(gòu)的設(shè)計(jì)應(yīng)充分考慮發(fā)展的需要、移植的需要,具有良好的擴(kuò)展性、伸縮性和適度冗余4。4 通用試題庫管理系統(tǒng)的實(shí)現(xiàn)4.1 程序及數(shù)據(jù)庫介紹C#(C Sharp)是微軟(Microsoft)為。NET Framework量身訂做的程序語言,C#擁有C/C+的強(qiáng)大功能以及Visual Basic簡(jiǎn)易使用的特性,是第一個(gè)組件導(dǎo)向(Component-oriented)的程序語言,和C+與Java一樣亦為對(duì)象導(dǎo)向(object-oriented)程序語言。微軟C#語言定義主要是從C和C+繼承而來的,而且語言中的許多元素也反映了這一點(diǎn)。C#在設(shè)計(jì)者從C+繼承的可選選項(xiàng)方面比J

31、AVA要廣泛一些(比如說struts),它還增加了自己新的特點(diǎn)(比方說源代碼版本定義).但它還太不成熟,目前不可能擠垮JAVA。C#還需要進(jìn)化成一種開發(fā)者能夠接受和采用的語言。而微軟當(dāng)前為它的這種新語言大造聲勢(shì)也是值得注意的。目前大家的反應(yīng)是:“這是對(duì)JAVA的反擊”。 C#更像JAVA一些,雖然微軟在這個(gè)問題上保持沉默。這也是意料中的事情,因?yàn)镴AVA近來很成功而使用JAVA的公司都報(bào)告說它們?cè)谏a(chǎn)效率上比C+獲得了提高。 JAVA所帶來的巨大影響和大家對(duì)它的廣泛接受已經(jīng)由工作于這種語言和平臺(tái)之上的程序員數(shù)量明顯的說明了(估計(jì)世界范圍內(nèi)共有兩百五十萬程序員使用JAVA)。由這種語言寫成的應(yīng)用

32、程序的數(shù)量是令人驚訝的并已經(jīng)滲透了每一個(gè)級(jí)別的計(jì)算,包括無線計(jì)算和移動(dòng)電話(比如日本發(fā)明的JAVA電話)。C#能夠在用戶領(lǐng)域獲得這樣的禮遇嗎?我們必須等待并觀望,就象已經(jīng)由SSI公司的CEO和主席KALPATHI S. SURESH指出來的那樣:"我發(fā)現(xiàn)所有這些都是漸進(jìn)的。如果C#不存在,我們總能回到JAVA或C和C+。這些都不完全是新技術(shù),它們?cè)诟蟮囊饬x上來說只是大公司制造的市場(chǎng)噱頭。我們必須給他們時(shí)間安頓下來看看這些是不是真的對(duì)IT工業(yè)有什么影響。" C# (C SHARP)是微軟對(duì)這一問題的解決方案。C#是一種最新的、面向?qū)ο蟮木幊陶Z言。它使得程序員可以快速地編寫各

33、種基于MICROSOFT .NET平臺(tái)的應(yīng)用程序,MICROSOFT .NET提供了一系列的工具和服務(wù)來最大程度地開發(fā)利用計(jì)算與通訊領(lǐng)域。 正是由于C#面向?qū)ο蟮淖吭皆O(shè)計(jì),使它成為構(gòu)建各類組件的理想之選無論是高級(jí)的商業(yè)對(duì)象還是系統(tǒng)級(jí)的應(yīng)用程序。使用簡(jiǎn)單的C#語言結(jié)構(gòu),這些組件可以方便的轉(zhuǎn)化為XML網(wǎng)絡(luò)服務(wù),從而使它們可以由任何語言在任何操作系統(tǒng)上通過INTERNET進(jìn)行調(diào)用。 最重要的是,C#使得C+程序員可以高效的開發(fā)程序,而絕不損失C/C+原有的強(qiáng)大的功能。因?yàn)檫@種繼承關(guān)系,C#與C/C+具有極大的相似性,熟悉類似語言的開發(fā)者可以很快的轉(zhuǎn)向C#。SQL是高級(jí)的非過程化編程語言,是溝通數(shù)據(jù)庫

34、服務(wù)器和客戶端的重要工具,允許用戶在高層數(shù)據(jù)結(jié)構(gòu)上工作。它不要求用戶指定對(duì)數(shù)據(jù)的存放方法,也不需要用戶了解具體的數(shù)據(jù)存放方式,所以,具有完全不同底層結(jié)構(gòu)的不同數(shù)據(jù)庫系統(tǒng),可以使用相同的SQL語言作為數(shù)據(jù)輸入與管理的接口。它以記錄集合作為操作對(duì)象,所有SQL語句接受集合作為輸入,返回集合作為輸出,這種集合特性允許一條SQL語句的輸出作為另一條SQL語句的輸入,所以SQL語句可以嵌套,這使它具有極大的靈活性和強(qiáng)大的功能,在多數(shù)情況下,在其他語言中需要一大段程序?qū)崿F(xiàn)的功能只需要一個(gè)SQL語句就可以達(dá)到目的,這也意味著用SQL語言可以寫出非常復(fù)雜的語句。結(jié)構(gòu)化查詢語言(Structured Query

35、 Language)最早是IBM的圣約瑟研究實(shí)驗(yàn)室為其關(guān)系數(shù)據(jù)庫管理系統(tǒng)SYSTEM R開發(fā)的一種查詢語言,它的前身是SQUARE語言。SQL語言結(jié)構(gòu)簡(jiǎn)潔,功能強(qiáng)大,簡(jiǎn)單易學(xué),所以自從IBM公司1981年推出以來,SQL語言得到了廣泛的應(yīng)用。如今無論是像Oracle、Sybase、DB2、Informix、SQL Server這些大型的數(shù)據(jù)庫管理系統(tǒng),還是像Visual Foxpro、PowerBuilder這些PC上常用的數(shù)據(jù)庫開發(fā)系統(tǒng),都支持SQL語言作為查詢語言。 美國(guó)國(guó)家標(biāo)準(zhǔn)局(ANSI)與國(guó)際標(biāo)準(zhǔn)化組織(ISO)已經(jīng)制定了SQL標(biāo)準(zhǔn)。ANSI是一個(gè)美國(guó)工業(yè)和商業(yè)集團(tuán)組織,負(fù)責(zé)開發(fā)美國(guó)

36、的商務(wù)和通訊標(biāo)準(zhǔn)。ANSI同時(shí)也是ISO和International Electrotechnical Commission(IEC)的成員之一。ANSI 發(fā)布與國(guó)際標(biāo)準(zhǔn)組織相應(yīng)的美國(guó)標(biāo)準(zhǔn)。1992年,ISO和IEC發(fā)布了SQL國(guó)際標(biāo)準(zhǔn),稱為SQL-92。ANSI隨之發(fā)布的相應(yīng)標(biāo)準(zhǔn)是ANSI SQL-92。ANSI SQL-92有時(shí)被稱為ANSI SQL。盡管不同的關(guān)系數(shù)據(jù)庫使用的SQL版本有一些差異,但大多數(shù)都遵循 ANSI SQL 標(biāo)準(zhǔn)。SQL Server使用ANSI SQL-92的擴(kuò)展集,稱為T-SQL,其遵循ANSI制定的 SQL-92標(biāo)準(zhǔn)。 SQL語言包含3個(gè)部分: 數(shù)據(jù)定義語言D

37、ata Definition Language(DDL),定義:definition/ 例如:CREATE、DROP、ALTER等語句。 數(shù)據(jù)操作語言Data Manipulation Language(DML),操作:make/ 例如:INSERT(插入)、UPDATE(修改)、DELETE(刪除)語句。 數(shù)據(jù)控制語言Data Controlling Language(DCL),控制:control/ 例如:GRANT、REVOKE、COMMIT、ROLLBACK等語句。 SQL語言包括三種主要程序設(shè)計(jì)語言類別的語句:數(shù)據(jù)定義語言(DDL),數(shù)據(jù)操作語言(DML)及數(shù)據(jù)控制語言(DCL)。

38、SQL 是用于訪問和處理數(shù)據(jù)庫的標(biāo)準(zhǔn)的計(jì)算機(jī)語言。系統(tǒng)使用的各種關(guān)鍵技術(shù) ADO數(shù)據(jù)訪問技術(shù)ADO (ActiveX Data Objects,ActiveX數(shù)據(jù)對(duì)象)是Microsoft提出的應(yīng)用程序接口(API)用以實(shí)現(xiàn)訪問關(guān)系或非關(guān)系數(shù)據(jù)庫中的數(shù)據(jù)。例如,如果您希望編寫應(yīng)用程序從DB2或Oracle數(shù)據(jù)庫中向網(wǎng)頁提供數(shù)據(jù),可以將ADO程序包括在作為活動(dòng)服務(wù)器頁(ASP)的HTML文件中。當(dāng)用戶從網(wǎng)站請(qǐng)求網(wǎng)頁時(shí),返回的網(wǎng)頁也包括了數(shù)據(jù)中的相應(yīng)數(shù)據(jù),這些是由于使用了ADO代碼的結(jié)果。ADO使得客戶端應(yīng)用程序能夠通過任何 OLE.DB 提供者來訪問和操作數(shù)據(jù)庫服務(wù)器中的數(shù)據(jù)。 ADO 使您能夠

39、編寫應(yīng)用程序以通過 OLE.DB 提供者訪問和操作數(shù)據(jù)庫服務(wù)器中的數(shù)據(jù)。ADO 最主要的優(yōu)點(diǎn)是易于使用、速度快、內(nèi)存支出少和磁盤遺跡小。ADO 支持建立客戶端/服務(wù)器和基于 Web 的應(yīng)用程序的關(guān)鍵功能。 ADO 的另一個(gè)功能是“遠(yuǎn)程數(shù)據(jù)訪問”(RDS),能夠通過一個(gè)來回的傳輸將數(shù)據(jù)從服務(wù)器移動(dòng)到客戶端應(yīng)用程序或 Web 頁中,然后在客戶端對(duì)數(shù)據(jù)進(jìn)行操作,最后將更新數(shù)據(jù)返回服務(wù)器。RDS 先前發(fā)布的版本是 Microsoft Remote Data Service 1.5。RDS 已與 ADO 編程模塊合并以簡(jiǎn)化客戶端數(shù)據(jù)的遠(yuǎn)程調(diào)用。 VBA編程技術(shù)Visual Basic for Appli

40、cations(簡(jiǎn)稱VBA)是新一代標(biāo)準(zhǔn)宏語言。在沒有VBA 以前,一些應(yīng)用軟件如Excel, Word, Access 等都采用自己的宏語言供用戶開發(fā)使用,但每一種宏語言都是相互獨(dú)立的并且它們之間是互不兼容的。這導(dǎo)致了應(yīng)用軟件之間不能在程序上互聯(lián)。找到一種可被所有的Microsoft 可編程應(yīng)用軟件所共享的通用宏語言是Microsoft 公司長(zhǎng)期追求的目標(biāo)。VBA 作為新一代的標(biāo)準(zhǔn)宏語言具有了跨越多種OFFICE 應(yīng)用軟件并且控制應(yīng)用軟件對(duì)象的能力。 OLE編程技術(shù)OLE是Object Linking and Embedding的縮寫,譯為對(duì)象連接與嵌入。 OLE技術(shù)在辦公中的應(yīng)用就是滿足用

41、戶在一個(gè)文檔中加入不同格式數(shù)據(jù)的需要(如文本、圖像等),即解決建立復(fù)合文檔問題。OLE是采用更為完善的組件技術(shù),通過OLE這座橋梁可以極為方便實(shí)現(xiàn)中各個(gè)功能模塊的相互調(diào)用與協(xié)同工作來創(chuàng)建復(fù)合文檔。4.2詳細(xì)設(shè)計(jì)4.2.1登陸模塊的設(shè)計(jì)第一步,用戶進(jìn)入系統(tǒng)首先經(jīng)過登錄界面,需要輸入用戶名和密碼,程序檢查用戶名和密碼與用戶數(shù)據(jù)庫中的用戶資料是否匹配,如果不匹配,登錄程序則提示錯(cuò)誤,重新登錄;如果匹配,通過登錄程序的驗(yàn)證,將登陸到程序主界面,登錄成功,進(jìn)入本系統(tǒng)的主頁面。登陸界面如圖3所示。圖3 登錄界面4.2.2試題錄入模塊的設(shè)計(jì)用戶通過身份驗(yàn)證后進(jìn)入主界面,進(jìn)而對(duì)試題管理,試題錄入、用戶管理(管

42、理員權(quán)限)、試卷管理等功能,可錄入試題,包括題目?jī)?nèi)容、答案、題目類型、所屬課程、所屬章節(jié)、分值等的錄入。題型分七種:多選題、單選題、填空題、判斷題、簡(jiǎn)答題、論述題和綜合題,非綜合題包括了除綜合題以外的所有題型,綜合題主要是為了一些圖像和公式輸入的方便而做的。因?yàn)椴捎肁OD控件綁定數(shù)據(jù)庫實(shí)現(xiàn)題目的輸入,因而無需輸入代碼。非綜合題錄入如圖4所示。圖4 非綜合題錄入界面綜合題采用的是OLE對(duì)象嵌入技術(shù)實(shí)現(xiàn)對(duì)圖像和公式的處理,與非綜合題有比較大的區(qū)別,需要部分代碼的支持。綜合題錄入界面如圖5所示。部分代碼如下:If Data1.Recordset.BOF Thent = "1"Co

43、mmand3.Enabled = FalseElset = Str(Val(Data1.Recordset.Id) + 1)Data1.Recordset.Id = tCommand3.Enabled = FalseOLE1.Class = "word.document.8"OLE1.DisplayType = 0OLE1.SourceDoc = "" & App.Path & "doc1.doc"OLE1.Action = 1OLE1.RefreshEnd If圖5 綜合題錄入界面4.3.1試題查詢、瀏覽、修改模塊的

44、設(shè)計(jì)用戶通過身份驗(yàn)證后進(jìn)入主界面,點(diǎn)擊試題管理菜單,選擇試題查詢、瀏覽、修改功能,即可對(duì)試題進(jìn)行查詢、修改、瀏覽。如圖6所示:圖6 試題查詢界面4.3.2課程、章節(jié)模塊的設(shè)計(jì)用戶通過身份驗(yàn)證后進(jìn)入主界面,點(diǎn)擊課程管理菜單,選擇課程管理或章節(jié)管理,即可對(duì)課程或章節(jié)進(jìn)行添加和修改。如圖7所示:圖7 課程添加、修改界面4.3.3自動(dòng)出卷模塊的設(shè)計(jì)自動(dòng)出題是試題庫管理最重要的一部分功能,設(shè)計(jì)好這個(gè)功能將對(duì)出題產(chǎn)生重大影響,也是對(duì)老師出題公正性和嚴(yán)謹(jǐn)性的考驗(yàn)。當(dāng)選定課程后,會(huì)在相應(yīng)的題型里顯示本課程的題目數(shù)量。對(duì)教師出題很有幫助。算法在第五章,設(shè)計(jì)界面如圖8所示。圖8 自動(dòng)出卷界面4.3.4手動(dòng)出卷模塊

45、的設(shè)計(jì)手動(dòng)出題作為題庫系統(tǒng)的輔助功能項(xiàng),同樣具有強(qiáng)大的功能,教師可以自己手動(dòng)的添加試題,選定課程和題型后即可添加試題。界面如圖9所示。圖9 手動(dòng)出卷界面4.4數(shù)據(jù)層的設(shè)計(jì)4.5.1用ADO或Data連接數(shù)據(jù)庫在C# 里,采用ADO控件連接或綁定數(shù)據(jù)庫,大大減少了代碼的寫入量,(1)連接數(shù)據(jù)源利用Connection對(duì)象可以創(chuàng)建一個(gè)數(shù)據(jù)源的連接.應(yīng)用的方法是Connection對(duì)象的Open方法.語法:Connection對(duì)象.Open ConnectionString, UserID, PassWord, OpenOptions其中:Connection對(duì)象為你定義的Connection對(duì)象的

46、實(shí)例;ConnectionString為可選項(xiàng),包含了連接的數(shù)據(jù)庫的信息;UserID 可選項(xiàng),包含建立連接的用戶名;PassWord為可選項(xiàng),包含建立連接的用戶密碼;OpenOptions為可選項(xiàng),假如設(shè)置為adConnectAsync,則連接將異步打開。(2)打開記錄集對(duì)象實(shí)際上記錄集返回的是一個(gè)從數(shù)據(jù)庫取回的查詢結(jié)果集.因此他有兩種打開方法:一種使用記錄集的Open方法,另一種是用Connection對(duì)象的Execute方法。(a)記錄集的Open方法語法:Recordset.Open Source, ActiveConnection, CursorType, LockType, Opt

47、ions    其中Recordset為所定義的記錄集對(duì)象的實(shí)例。Source可選項(xiàng),指明了所打開的記錄源信息.可以是合法的命令,對(duì)象變量名,SQL語句,表名,存儲(chǔ)過程調(diào)用,或保存記錄集的文件名。ActiveConnection可選項(xiàng),合法的已打開的Connection對(duì)象的變量名,或者是包含ConnectionString參數(shù)的字符串。CursorType可選項(xiàng),確定打開記錄集對(duì)象使用的指針類型。LockType可選項(xiàng) 確定打開記錄集對(duì)象使用的鎖定類型。(b)Connection對(duì)象的Execute方法語法:Set recordset=Connecti

48、on.Execute(CommandText,RecordsAffected,Options)參數(shù)說明:CommandText 一個(gè)字符串,返回要執(zhí)行的SQL命令,表名,存儲(chǔ)過程或指定文本。RecordsAffected 可選項(xiàng),Long類型的值,返回操作影響的記錄數(shù)。Options 可選項(xiàng),Long類型值,指明如何處理CommandText參數(shù)。介紹完了如何打開數(shù)據(jù)庫下面說說怎么使用吧。(3)使用記錄集 (a)添加新的記錄:在ADO中添加新的記錄用的方法為:AddNew 它的語法為:Recordset.AddNew FieldList, ValuesRecordset為記錄集對(duì)象實(shí)例Fiel

49、dList為一個(gè)字段名,或者是一個(gè)字段數(shù)組。Values為給要加信息的字段賦的值,如果FiledList為一個(gè)字段名,那么Values應(yīng)為一個(gè)單個(gè)的數(shù)值,假如FiledList為一個(gè)字段數(shù)組,那么Values必須也為一個(gè)個(gè)數(shù),類型與FieldList相同的數(shù)組。再用完AddNew方法為記錄集添加新的記錄后,應(yīng)使用UpDate將所添加的數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫中.不過你最好在用UpDate方法之前使用CancelUpdate方法來取消該項(xiàng)操作。(b)修改記錄集    其實(shí)修改核對(duì)記錄集中的數(shù)據(jù)重新賦值沒有什么太大的區(qū)別,只要用SQL語句將要修改的字段的一個(gè)數(shù)據(jù)找出

50、來重新賦值就可以了.這里不再細(xì)說了。(c)刪除記錄在ADO中刪除記錄集中的數(shù)據(jù)的方法為:Delete方法,這與DAO對(duì)象的方法相同,但是在ADO中它的能力增強(qiáng)了,可以刪掉一組記錄了。它的語法如下:Recordset.Delete AffectRecords其中的,AffectRecords參數(shù)是確定Delete方法作用的方式的,它的取值如下:adAffectCurrent 只刪除當(dāng)前的記錄adAffectGroup 刪除符合Filter屬性設(shè)置的那些記錄.為了一次能刪除一組數(shù)據(jù),應(yīng)設(shè)置Filter屬性。(d)查詢記錄在ADO中查詢的方法很靈活,有幾種查詢的方法。一是使用連接對(duì)象的Execute

51、方法執(zhí)行SQL命令,返回查詢記錄集。二是使用Command對(duì)象的Execute方法執(zhí)行CommandText屬性中設(shè)置的SQL命令,返回查詢記錄集。第一個(gè)方法的具體語法在前面數(shù)據(jù)連接時(shí)已經(jīng)介紹過了,下面就第二方法具體說一下。Command對(duì)象的Execute方法的語法如下:Command.Execute RecordsAffected, Parameters, Options,不返回記錄集或者 Set Rscordset=cmmnad.Execute(RecordsAffected,Parameters,Options),返回記錄集CommandText的語法為:Command.Command

52、Text=stringvariable其中: stringvariable為字符串變量,包含SQL語句,表名或存儲(chǔ)過程。(4) 斷開連接    在應(yīng)用程序結(jié)束之前,應(yīng)該釋放分配給ADO對(duì)象的資源,操作系統(tǒng)回收這些資源并可以再分配給其他應(yīng)用程序。使用的方法為:Close方法。語法如下:Object.Close,Object為ADO對(duì)象94.5試題庫管理系統(tǒng)中的主要算法組卷自動(dòng)成卷,其基本原理是由教師輸入選題條件,計(jì)算機(jī)隨機(jī)地從試題庫中抽取一定數(shù)量的符合條件的試題。本系統(tǒng)采用的算法排除了重復(fù)的可能性,即一次性出題重復(fù)率為0。如果題量大,多次出題的重復(fù)率也可以

53、降至最小,這由系統(tǒng)產(chǎn)生的隨機(jī)數(shù)決定。手動(dòng)成卷,其基本原理是由教師選定某個(gè)課程,選擇題型,系統(tǒng)過濾出符合題型的題目顯示出來,然后由教師選定要出的題,加入臨時(shí)試卷庫,查看出題結(jié)果之后滿意即可生成試卷。手動(dòng)生成試卷有檢測(cè)重復(fù)的代碼,使得一次性出題重復(fù)率也為0。生成試卷的部分代碼myrs.Open "delete from 自動(dòng)出題 ", mycn, adOpenKeyset, adLockOptimistics2 = "insert into 自動(dòng)出題 " & s1myrs.Open s2, mycn, adOpenKeyset, adLockOpti

54、misticmyrs2.Open "delete from 自動(dòng)出卷", mycn, adOpenKeyset, adLockOptimisticj = Text1.Textmyrs3.Open "select * from 自動(dòng)出題 ", mycn, adOpenKeyset, adLockOptimisticFor i = 1 To jnb = Int(myrs3.RecordCount)rdnb = Int(nb) * Rnd() '獲得隨機(jī)數(shù)myrs3.Move rdnbt1 = CStr(myrs3("ID")myrs2.Open "insert into 自動(dòng)出卷 select * from 自動(dòng)出題 where ID = " & t1 & " ", mycn, adOpenKeyset, adLockOptimisticmyrs3.Deletemyrs3.MoveFirstNext iEnd If4.5.3小結(jié)本章主要對(duì)系統(tǒng)的功能模塊和界面設(shè)計(jì)做了部分介紹,利用ADO連接數(shù)據(jù)庫,并對(duì)數(shù)據(jù)庫進(jìn)行操縱,利用datagrid控件顯示數(shù)據(jù)。介紹自動(dòng)成卷和手動(dòng)成卷的成卷原理,使用了合理的算法使得試題

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論