2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩26頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p>  –––––––––––––––––摘 要–––––––––––––––––</p><p>  學(xué)生信息管理系統(tǒng)是典型的信息管理系統(tǒng) (MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫。而對于后者則要求應(yīng)用程序功能完備,易使用等特點。</p><p>  經(jīng)過分析,我們使用MI

2、CROSOFT公司的VISUAL BASIC開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其是數(shù)據(jù)窗口這一能方便而簡潔操縱數(shù)據(jù)庫的智能化對象,首先在短時間內(nèi)建立系統(tǒng)應(yīng)用原型,然后,對初始原型系統(tǒng)進(jìn)行需求迭代,不斷修正和改進(jìn),直到形成用戶滿意的可行系統(tǒng)。</p><p>  關(guān)鍵字:控件、窗體、域、數(shù)據(jù)庫。</p><p>  –––––––––––––––––前 言––––––––––

3、–––––––</p><p>  隨著學(xué)校的規(guī)模不斷擴(kuò)大,學(xué)生數(shù)量急劇增加,有關(guān)學(xué)生的各種信息量也成倍增長。面對龐大的信息量需要有學(xué)生管理系統(tǒng)來提高學(xué)生管理工作的效率。通過這樣的系統(tǒng)可以做到信息的規(guī)范管理、科學(xué)統(tǒng)計和快速查詢、修改、增加、刪除等,從而減少管理方面的工作量。</p><p>  本系統(tǒng)主要用于學(xué)校學(xué)生信息管理,總體任務(wù)是實現(xiàn)學(xué)生信息關(guān)系的系統(tǒng)化、規(guī)范化和自動化,其主要任務(wù)是

4、用計算機(jī)對學(xué)生各種信息進(jìn)行日常管理,如查詢、修改 、增加、刪除,另外還考慮到學(xué)生選課,針對這些要求設(shè)計了學(xué)生信息管理系統(tǒng)本系統(tǒng)主要用于學(xué)校學(xué)生信息管理,總體任務(wù)是實現(xiàn)學(xué)生信息關(guān)系的系統(tǒng)化、規(guī)范化和自動化,其主要任務(wù)是用計算機(jī)對學(xué)生各種信息進(jìn)行日常管理,如查詢、修改 、增加、刪除,另外還考慮到學(xué)生選課,針對這些要求設(shè)計了學(xué)生信息管理系統(tǒng)。</p><p>  本系統(tǒng)主要包括學(xué)生信息查詢、教務(wù)信息維護(hù)和學(xué)生選課三部分

5、。其功能主要有:</p><p> ?、庇嘘P(guān)學(xué)籍等信息的輸入,包括輸入學(xué)生基本信息、所在班級、所學(xué)課程和成績等。</p><p> ?、矊W(xué)生信息的查詢,包括查詢學(xué)生基本信息、所在班級、已學(xué)課程和成績等。</p><p><b> ?、硨W(xué)生信息的修改。</b></p><p>  ⒋班級管理信息的輸入,包括輸入班級設(shè)置、年

6、級信息等。</p><p> ?、蛋嗉壒芾硇畔⒌牟樵?。</p><p> ?、栋嗉壒芾硇畔⒌男薷?。</p><p> ?、穼W(xué)生課程的設(shè)置和修改。</p><p><b>  目 錄</b></p><p><b>  前言 </b></p><p&

7、gt;  Visual Basic 概述 </p><p>  Visual Basic 語言的特點</p><p>  Visual Basic 系統(tǒng)幾個程序應(yīng)用中的常用名詞</p><p>  Windows 下的Visual Basic 編程環(huán)境簡介</p><p>  2.1 面對對象的

8、編程</p><p>  2.2 實現(xiàn)菜單選項</p><p><b>  2.3 實現(xiàn)工具欄</b></p><p>  怎樣開發(fā)一個學(xué)生信息管理系統(tǒng)的查詢模塊</p><p>  3.1 學(xué)生信息系統(tǒng)的設(shè)計分析</p><p>  3.2 編程環(huán)境的選擇</p><p>

9、;  3.3 關(guān)系型數(shù)據(jù)庫的實現(xiàn)</p><p>  3.4 二者的結(jié)合(DBA)</p><p>  使用Access2000 創(chuàng)建數(shù)據(jù)庫</p><p>  4.1 數(shù)據(jù)庫的概念</p><p>  4.2 新建一個數(shù)據(jù)庫</p><p>  4.3 修改已建的數(shù)據(jù)庫</p><p><

10、;b>  可行性分析</b></p><p><b>  系統(tǒng)總體規(guī)劃</b></p><p><b>  6.1 系統(tǒng)功能</b></p><p><b>  6.2 系統(tǒng)流程圖</b></p><p><b>  系統(tǒng)具體實現(xiàn)</b>

11、</p><p>  7.1 各功能的實現(xiàn)</p><p>  7.1.1 課程管理</p><p>  7.1.2 打印統(tǒng)計</p><p><b>  結(jié)束語</b></p><p><b>  后記</b></p><p><b>  

12、主要參考文獻(xiàn)</b></p><p>  Visual Basic 概述</p><p>  1.1 Visual Basic 語言的特點 </p><p>  Visual Basic 語言用其設(shè)計應(yīng)用程序時具有兩個基本特點:可視化設(shè)計和事件驅(qū)動編程。</p><p>  可視化設(shè)計:表現(xiàn)在VB在設(shè)計應(yīng)用于程序界面時有“所見即所

13、得”的處理功能。</p><p>  事件驅(qū)動編程:在設(shè)計應(yīng)用程序時,把對象添加到窗體中,在用戶與程序進(jìn)行交互時,用戶基本上是通過鼠標(biāo)、鍵盤與應(yīng)用程序進(jìn)行交互的,那些對象就必須對鼠標(biāo)和鍵盤操作所引發(fā)的事件做出響應(yīng),來執(zhí)行一段應(yīng)用程序。</p><p>  1.2 Visual Basic 系統(tǒng)幾個在程序應(yīng)用中的常用名詞</p><p>  Visual Basic

14、系統(tǒng)除了一般高級語言所具有的一些名詞術(shù)語外,還有幾個系統(tǒng)常用的名詞。其基本含義如下:</p><p><b>  視窗(Form)</b></p><p>  視窗是進(jìn)行人機(jī)交互的界面或接口,也叫窗體。VB系統(tǒng)的人機(jī)交互界面或接口,無論是在設(shè)計時或是在運(yùn)行時,都是Windows 系統(tǒng)的標(biāo)準(zhǔn)視窗。</p><p>  對象 (Object)<

15、;/p><p>  對象是VB系統(tǒng)內(nèi)部提供給設(shè)計者可以直接使用的處理輸出的控制工具。本程序所應(yīng)用到的對象類型有標(biāo)簽框 (Label Box),文本框 (Text Box),命令按扭 (Command Button),網(wǎng)格 (Data Grid),ADO控件 (Adodc1)等。當(dāng)把這些工具放置到用戶界面對應(yīng)的窗體上時,被稱為對象或控件。用戶可以通過設(shè)置對象的“屬性”和“方法”,便于對象適應(yīng)自己所設(shè)計應(yīng)用程序的輸入輸出

16、內(nèi)容,對象的生成過程及結(jié)構(gòu)都被封裝起來。正確使用對象可以減少程序和開發(fā)時間,提高程序設(shè)計者的工作效率。</p><p>  屬性 (Properties)</p><p>  屬性是VB系統(tǒng)提供的有關(guān)對象的參數(shù)或數(shù)據(jù)接口。用戶通過適當(dāng)?shù)卦O(shè)置或改變對象的屬性來確定對象的外觀及性能特征,從而有效地使用系統(tǒng)提供的對象。比如,對象的名稱、在屏幕上顯示的位置、大小、顏色、接收或容納的數(shù)據(jù)內(nèi)容及數(shù)據(jù)的

17、表現(xiàn)格式等。</p><p>  事件 (Events)</p><p>  事件是指用戶或操作者對計算機(jī)進(jìn)行的某一操作(如擊鍵、單擊或移動鼠標(biāo)等)的行為或系統(tǒng)狀態(tài)發(fā)生的變化。VB系統(tǒng)常用事件來引導(dǎo)計算機(jī)執(zhí)行一段程序。程序所用的鍵盤事件有KeyPress(按鍵)事件,KeyDown事件和KeyUp事件;鼠標(biāo)事件有Click(單擊鼠標(biāo))事件,DbDlicd(雙擊鼠標(biāo))。</p>

18、<p>  方法 (Method)</p><p>  方法主要是指對一個對象使用某種作用的過程。它是在程序執(zhí)行的過程中要計算機(jī)執(zhí)行的某種操作。其程序的方法有Show(顯示)方法,Hide(隱藏)方法,Refresh(刷新)方法。</p><p>  過程 (Procedure)</p><p>  過程是指經(jīng)過定義或說明的,或基于某一對象對應(yīng)的事件所引

19、發(fā)的程序段。</p><p>  模塊 (Module)</p><p>  模塊是指一些運(yùn)算量或過程進(jìn)行聲明或定義的一個集合。系統(tǒng)程序大體可分成四個模塊:數(shù)據(jù)輸入、根據(jù)查詢、數(shù)據(jù)打印和通訊。 </p><p>  第二章 Windows下的Visual Basic 編程環(huán)境簡介</p><p>  2.1 面對對象的編程</p>

20、<p>  面向?qū)ο蟮脑O(shè)計方法 (OOP, Objected Programming) 從應(yīng)用領(lǐng)域內(nèi)的問題著手,以直觀自然的方式描述客觀世界的實體。Visual Basic 作為一種面向?qū)ο蟮木幊谭椒?,把程序和?shù)據(jù)封裝起來作為一個對象,并為每個對象賦予相應(yīng)的屬性。在設(shè)計對象時,不必編寫建立和描述每個對象的程序代碼,而是用工具畫在界面上,由 Visual Basic 自動生成對象的程序代碼并封裝起來。Visual Basic

21、 應(yīng)用程序基本的構(gòu)建塊是用戶所創(chuàng)建的對象,每一個對象都具有一些特性和行為(屬性、事件和方法)。開發(fā)人員可以最有效利用所創(chuàng)建的每一個對象。使用應(yīng)用程序具有可通用性可說擴(kuò)展性和強(qiáng)有力的功能。</p><p>  Visual Basic 應(yīng)用由一系列對象組成,包括有函數(shù)、菜單、函數(shù)、結(jié)構(gòu)和數(shù)據(jù)窗口、用戶對象、用戶事件等等,對象中又包含若干控件如命令按鈕、單行編輯器等這些對象和控件都可在許多應(yīng)用中重復(fù)使用。</p

22、><p>  2.2 實現(xiàn)菜單選項</p><p>  菜單是程序最重要的特性之一,大多數(shù)程序都依賴一個定義良好的菜單使程序易于使用和維護(hù),Visual Basic 也提供了強(qiáng)大的創(chuàng)建菜單功能是程序更加標(biāo)準(zhǔn)。</p><p>  本系統(tǒng)使用 Visual Basic 的菜單編輯器建立菜單或者修改已經(jīng)存在的菜單,您也可以使用Visual Basic 的Applicatio

23、n Wizard 來操作。</p><p><b>  2.3 實現(xiàn)工具欄</b></p><p>  CoolBar控件與Office2000 中看到的CoolBar是類似的。CoolBar就是一個可以在窗體上浮動的工具,同時也是其他ActiveX的容器。通過在CoolBar中遷入其他空間你也可以向用戶提供更好的靈活性和義用性。</p><p&g

24、t;  選擇“工程”下拉菜單中的“部件”選項,顯示“部件”對話框。在“控件”選項卡列表中選擇“Microsoft Windows Common Controls 6.0”后工具相中增加改控件。</p><p>  本系統(tǒng)就用了Cool工具中的Statubar控件,在系統(tǒng)這一界面中,添加了狀態(tài)欄,在第一個欄中,在樣式這一欄中選擇了文本,在第二個欄中,選擇了系統(tǒng)日期,第三個欄中選擇了系統(tǒng)時間,這樣,任何時候操作本系統(tǒng)

25、,都可以看到當(dāng)前的時間和日期。</p><p>  第三章 怎樣開發(fā)一個學(xué)生信息管理系統(tǒng)的查詢模塊?</p><p>  3.1查詢模塊的設(shè)計分析</p><p>  根據(jù)實際情況,我們使用原型法(Rapid Prototyping) 即以少量代價快速地構(gòu)造一個可執(zhí)行的軟件模型。使用戶可以較快地確定需求,然后采用循環(huán)進(jìn)化的開發(fā)方式,對系統(tǒng)模型作連續(xù)的精化,將系統(tǒng)需具

26、備的性質(zhì)逐漸增加上去,直到所有的性質(zhì)全部滿足。此時模塊也發(fā)展成為最終產(chǎn)品了。</p><p>  3.2編程環(huán)境的選擇</p><p>  微軟公司的Visual Basic 6.0是Windows應(yīng)用程序開發(fā)工具,使目前最為廣泛的、易學(xué)易用的面向?qū)ο蟮拈_發(fā)工具。Visual Basic提供了大量的控件,這些控件可用于設(shè)計界面和實現(xiàn)各種功能,減少了編程人員的工作量,也簡化了界面設(shè)計過程,從

27、而有效的提高了應(yīng)</p><p>  用程序的運(yùn)行效率和可靠性。故而,實現(xiàn)本系統(tǒng)VB是一個相對較好的選擇。</p><p>  3.3關(guān)系型數(shù)據(jù)庫的實現(xiàn)</p><p>  Access2000就是關(guān)系數(shù)據(jù)庫開發(fā)工具,數(shù)據(jù)庫能匯集各種信息以供查詢、存儲和檢索。Access的優(yōu)點在于它能使用數(shù)據(jù)表示圖或自定義窗體收集信息。數(shù)據(jù)表示圖提供了一種類似于Excel的電子表格

28、,可以使數(shù)據(jù)庫一目了然。另外,Access允許創(chuàng)建自定義報表用于打印或輸出數(shù)據(jù)庫中的信息。Access也提供了數(shù)據(jù)存儲庫,可以使用桌面數(shù)據(jù)庫文件把數(shù)據(jù)庫文件置于網(wǎng)絡(luò)文件服務(wù)器,與其他用戶共享數(shù)據(jù)庫。Access 是一種關(guān)系數(shù)據(jù)庫工具,關(guān)系數(shù)據(jù)庫是已開發(fā)的最通用的數(shù)據(jù)庫之一。如上所述,Access作為關(guān)系數(shù)據(jù)庫開發(fā)具備了許多優(yōu)點,可以在一個數(shù)據(jù)包同時擁有桌面數(shù)據(jù)庫的便利和關(guān)系數(shù)據(jù)庫的強(qiáng)大功能。</p><p>  

29、3.4二者的結(jié)合(DBA)</p><p>  微軟的JET數(shù)據(jù)庫引擎提供了與數(shù)據(jù)庫打交道的途徑,我們是通過它以及Visual Basic來訪問數(shù)據(jù)庫并對其進(jìn)行各種操作。Visual Basic、Access以及其他微軟的軟件產(chǎn)品都是通過共用JET數(shù)據(jù)庫引擎,從而給用戶提供了豐富的數(shù)據(jù)類型。</p><p>  ADODC控件在數(shù)據(jù)庫中的信息與將信息顯示給用戶看的Visual Basic

30、程序之間架起了一座橋梁。我們可以設(shè)置ADODC控件的各個屬性,告訴它要調(diào)用那個數(shù)據(jù)庫的哪個部分。缺省情況下,ADODC控件根據(jù)數(shù)據(jù)庫中的一個或多個數(shù)據(jù)庫表建立一個dynaset-type(動態(tài)集合)類型的記錄集合。一個記錄集合是動態(tài)的也就意味著,當(dāng)原來的數(shù)據(jù)表中的容改變了以后,該記錄集合中的記錄也會隨之改變。將ADODC控件放置在窗體中之后,我們還必須在該控件與要處理的數(shù)據(jù)庫之間建立聯(lián)系。</p><p>  第

31、四章 使用Access2000創(chuàng)建數(shù)據(jù)庫</p><p><b>  4.1數(shù)據(jù)庫的概念</b></p><p>  數(shù)據(jù)庫是一種存儲數(shù)據(jù)并對數(shù)據(jù)進(jìn)行操作的工具。數(shù)據(jù)庫的作用在于組織和表達(dá)信息,簡而言之,數(shù)據(jù)庫就是信息的集合。計算機(jī)的數(shù)據(jù)庫可以分為兩類:非關(guān)系數(shù)據(jù)庫(flat-file)和關(guān)系數(shù)據(jù)庫(relational)。關(guān)系數(shù)據(jù)庫中包含了多個數(shù)據(jù)表的信息,數(shù)據(jù)庫含

32、有各個不同部分的術(shù)語,象記錄、域等。</p><p>  4.2新建一個數(shù)據(jù)庫</p><p>  創(chuàng)建任何一個數(shù)據(jù)庫的第一步是仔細(xì)的規(guī)劃數(shù)據(jù)庫,設(shè)計必須是靈活的、有邏輯的。創(chuàng)建一個數(shù)據(jù)庫結(jié)構(gòu)的過程被認(rèn)為是數(shù)據(jù)模型設(shè)計。</p><p><b>  標(biāo)識需要的數(shù)據(jù);</b></p><p>  收集被子標(biāo)識的字段到表中;

33、</p><p><b>  標(biāo)識主關(guān)鍵字字段;</b></p><p><b>  規(guī)范數(shù)據(jù);</b></p><p>  標(biāo)識指定字段的信息;</p><p>  4.3修改已建的數(shù)據(jù)庫</p><p>  數(shù)據(jù)庫的修改分為;添加、編輯和刪除記錄。這三種操作均可由Visu

34、al Basic創(chuàng)建的程序來完成,下面的章節(jié)將詳細(xì)描述實現(xiàn)的具體方法。</p><p><b>  第五章 可行性分析</b></p><p>  學(xué)生信息,作為一個學(xué)校,就有一定的工作量存在,而學(xué)生信息,它的工作量可能是其它信息工作量的幾倍,班級的增加、班級的查找、班級的修改;學(xué)生檔案;課程管理;成績管理;繳費(fèi)管理;統(tǒng)計等等,每個信息的數(shù)據(jù)都在不斷地變化著,如果采用

35、人工的方式進(jìn)行操作,那么,一天的工作量,足以讓人覺得比較繁瑣,吃不消。針對這樣的情況,采用讓數(shù)據(jù)的查詢變得簡單化,數(shù)據(jù)變的更讓每個人都在任何時刻都可以了解到。</p><p>  學(xué)生信息管理系統(tǒng)是為本校開發(fā)的,本系統(tǒng)所采用的語言是Visual Basic,用Microsoft Access 2000數(shù)據(jù)庫完成。該系統(tǒng)總體有四部分組成,包括學(xué)生信息查詢、教務(wù)信息維護(hù)、學(xué)生選課及用戶管理。通過本系統(tǒng),把本校內(nèi)部查詢

36、學(xué)生信息、教務(wù)信息、學(xué)生選課各個環(huán)節(jié)進(jìn)行有效地計劃、組織和控制。通過本校內(nèi)部的信息,依據(jù)統(tǒng)一數(shù)據(jù)信息進(jìn)行管理,把任何一塊信息所產(chǎn)生的數(shù)據(jù)變動及時地反映給其它相關(guān)信息,做到數(shù)據(jù)共享。</p><p>  本系統(tǒng)主要信息流程為:教務(wù)信息維護(hù)接受學(xué)生的信息,學(xué)生信息查詢根據(jù)教務(wù)信息維護(hù)的學(xué)生信息做出對所接收的信息合理性進(jìn)行判斷,并交于信息維護(hù)進(jìn)行相應(yīng)的修改,再把信息存入數(shù)據(jù)庫中。學(xué)生選課是對學(xué)生進(jìn)行相應(yīng)選擇自己相關(guān)的課

37、程。最后進(jìn)行打印。</p><p>  采用本系統(tǒng),能夠使整個系統(tǒng)內(nèi)部所有信息的工作簡化,提高工作效益。由于采用統(tǒng)一的數(shù)據(jù)信息,使相關(guān)資料能夠快速地查詢所需的數(shù)據(jù)、資料及其它信息的,使信息快速高效運(yùn)行。</p><p>  本系統(tǒng)中使用到的數(shù)據(jù)表主要有班級表、成績表、繳費(fèi)表、課程表、學(xué)生檔案、用戶資料,由這六個表,組成了名為信息的數(shù)據(jù)庫(如圖一)。其中學(xué)生檔案是本系統(tǒng)主要的</p&g

38、t;<p><b> ?。▓D一)</b></p><p>  一張表,所有信息都是根據(jù)這張學(xué)生檔案進(jìn)行有關(guān)的操作,主要的字段有:學(xué)號、姓名、年級、專業(yè)、性別、出生年月、民族、籍貫、政治面貌、家庭地址、郵政編碼、聯(lián)系電話、入學(xué)時間、備注。其中日期的數(shù)據(jù)類型為日期/時間天型,其它的數(shù)據(jù)類型為文本型;成績表中字段為:學(xué)號、姓名、年級、專業(yè)、學(xué)期、考試時間、考試科目、考試地點、課程性質(zhì)

39、、科目分?jǐn)?shù)、違紀(jì)類型、備注;課程表中字段為:專業(yè)、年級、學(xué)期、課程名稱、教材、任課老師、課時、上課地點、課程性質(zhì)、考試性質(zhì);用戶資料中的字段包括:用戶名、密碼、身份。</p><p>  數(shù)據(jù)庫與VB的連接:本系統(tǒng)的數(shù)據(jù)鏈接采用的是ADO方法,打開控制面板,打開ODBC數(shù)據(jù)源圖標(biāo),選擇“系統(tǒng)DSN”標(biāo)簽,點擊“添加”按鈕,在彈出的“創(chuàng)建新數(shù)據(jù)源”對話框中選擇名稱為“Microsoft Access Drive(*

40、.mdb)”,點擊“完成”按鈕,在ODBC Microsoft Access 安裝對話框中在數(shù)據(jù)源名中輸入信息,在數(shù)據(jù)庫這個框中, 單擊“選擇”按鈕,在彈出的選擇數(shù)據(jù)庫這一對話框架中,在驅(qū)動器下拉列表框中選擇本系統(tǒng)數(shù)據(jù)庫所在驅(qū)動器,在目錄中選擇庫所在的文件夾,在文件類型中選擇選“Access數(shù)據(jù)庫(*.mdb)”,在數(shù)據(jù)庫名中選擇本系統(tǒng)的數(shù)據(jù)庫,點擊“確定”按鈕即完成數(shù)據(jù)鏈接。</p><p>  在VB中,用A

41、DODC鏈接數(shù)據(jù)庫,用DataGrid或DATA將庫中的數(shù)據(jù)在界面中顯示出來,本系統(tǒng)采用DataGrid。在界面上右擊Adodc控制,在彈出的快捷菜單中選擇屬性,在屬性對話框中,在“屬性”這一標(biāo)簽中, 選中單選框“Use ODBC Data Source Name”,并在下拉文本框中選擇已經(jīng)配置好的數(shù)據(jù)源名信息,再在“RecordSoure”標(biāo)簽中,在Commard Text(SQL)文本框中輸入查詢語句,如:select * from

42、 學(xué)生檔案。同時,將桌面的DataGrid控件選中,在屬性框中,將它的Datasoure設(shè)為Adodc。</p><p>  我們可以設(shè)置DataGrid控件的外觀:選中該控件,右擊,在彈出的快捷菜單中選擇“檢索字段”,在彈出的對話框中單擊“確定”,這時,表格中出現(xiàn)了表的字段。然后再右擊,同樣,在彈出的快捷菜單中選擇“編輯”,我們就可以所在的表格的寬度進(jìn)行調(diào)整。</p><p>  第六章

43、 系統(tǒng)(查詢模塊)總體規(guī)劃</p><p>  6.1系統(tǒng)功能(查詢模塊)</p><p><b>  查詢信息的情況;</b></p><p>  判斷信息是否符合要求;</p><p>  將符合條件的信息進(jìn)行打印;</p><p><b>  6.2流程圖</b><

44、;/p><p>  第七章 系統(tǒng)具體實現(xiàn)</p><p><b>  7.1各功能的實現(xiàn)</b></p><p>  7.1.1課程管理:課程設(shè)置(如:界面如圖二)</p><p><b> ?。▓D二)</b></p><p>  運(yùn)行程序后,進(jìn)入課程管理模塊,課程管理模塊的第一

45、塊是課程設(shè)置,在這模塊中可以把專業(yè)、年級、學(xué)期、課程名稱、教材、任課老師、課時、上課地點、課程性質(zhì)和考試性質(zhì)等信息輸入,以便使用。</p><p><b>  下面為其代碼:</b></p><p>  Private Sub Command1_Click()</p><p>  Dim myCon As New ADODB.Connectio

46、n</p><p>  Dim myRs As New ADODB.Recordset</p><p>  Dim ZhuanYe, NianJi, XueQi, KeCheng, JiaoCai, RenKLS, KeShi, ShangKeDD, KeChengXZ, KaoShiXZ As String</p><p>  ZhuanYe = Text1.Te

47、xt</p><p>  NianJi = Text2.Text</p><p>  XueQi = DTPicker1.Value</p><p>  KeCheng = Text4.Text</p><p>  JiaoCai = Text5.Text</p><p>  RenKLS = Text6.Text&l

48、t;/p><p>  KeShi = Text7.Text</p><p>  ShangKeDD = Text8.Text</p><p>  KeChengXZ = Combo1.Text</p><p>  KaoShiXZ = Combo2.Text</p><p>  If Trim(ZhuanYe) = &qu

49、ot;" Or Trim(NianJi) = "" Or Trim(XueQi) = "" Or Trim(KeCheng) = "" Or Trim(JiaoCai) = "" Or Trim(RenKLS) = "" Or Trim(KeShi) = "" Or Trim(ShangKeDD) = &qu

50、ot;" Or Trim(KeChengXZ) = "" Or Trim(KaoShiXZ) = "" Then</p><p>  MsgBox "請?zhí)顚懸薷恼n程資料的內(nèi)容!"</p><p>  Combo1.Text = ""</p><p>  Combo2.Text

51、 = ""</p><p><b>  Exit Sub</b></p><p><b>  End If</b></p><p>  myCon.Open "dsn=信息"</p><p>  myRs.Open "select * from 課程

52、表 where 專業(yè)='" & Text1.Text & "'", myCon, 3, 2</p><p>  myRs!年級 = Text2.Text</p><p>  myRs!學(xué)期 = DTPicker1.Value</p><p>  myRs!課程名稱 = Text4.Text</p&g

53、t;<p>  myRs!教材 = Text5.Text</p><p>  myRs!任課老師 = Text6.Text</p><p>  myRs!課時 = Text7.Text</p><p>  myRs!上課地點 = Text8.Text</p><p>  myRs!課程性質(zhì) = Combo1.Text</p

54、><p>  myRs!考試性質(zhì) = Combo2.Text</p><p>  myRs.Update</p><p>  myRs.Close</p><p>  myCon.Close</p><p>  MsgBox "您確定要修改嗎?", vbYesNo, "提示"<

55、/p><p>  Frm_UpdateGrean.Adodc1.Refresh</p><p>  Frm_UpdateGrean.DataGrid1.Refresh</p><p>  Text1.Text = ""</p><p>  Text2.Text = ""</p><p&g

56、t;  'Text3.Text = ""</p><p>  Text4.Text = ""</p><p>  Text5.Text = ""</p><p>  Text6.Text = ""</p><p>  Text7.Text = "

57、"</p><p>  Text8.Text = ""</p><p>  Combo1.Text = ""</p><p>  Combo2.Text = ""</p><p><b>  End Sub</b></p><p&g

58、t;  Private Sub Command2_Click()</p><p><b>  Unload Me</b></p><p><b>  End Sub</b></p><p>  Private Sub Command3_Click()</p><p><b>  Unloa

59、d Me</b></p><p>  Frm_FindGrean.Show 1</p><p><b>  End Sub</b></p><p>  Private Sub DataGrid1_Click()</p><p>  'Frm_UpdateGrean.Adodc1.RecordSourc

60、e = "select * from 課程表 where 專業(yè) = '" & Trim(DataGrid1.Row) & "'"</p><p>  'Text1.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("專業(yè)")</p><p>  &

61、#39;Text2.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("年級")</p><p>  'Text3.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("學(xué)期")</p><p>  'Text4.Text = Frm_UpdateG

62、rean.Adodc1.Recordset.Fields("課程名稱")</p><p>  'Text5.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("教材")</p><p>  'Text6.Text = Frm_UpdateGrean.Adodc1.Recordset.Fiel

63、ds("任課老師")</p><p>  'Text7.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("課時")</p><p>  'Text8.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("上課地點")</p

64、><p>  'Combo1.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("課程性質(zhì)")</p><p>  'Combo2.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("考試性質(zhì)")</p><p><b&g

65、t;  End Sub</b></p><p>  Private Sub DTPicker1_CallbackKeyDown(ByVal KeyCode As Integer, ByVal Shift As Integer, ByVal CallbackField As String, CallbackDate As Date)</p><p><b>  End

66、Sub</b></p><p>  Private Sub Form_Activate()</p><p>  Frm_FindGrean.Adodc1.RecordSource = strTiaoJian</p><p>  Frm_FindGrean.Adodc1.Refresh</p><p>  Set DataGrid1

67、.DataSource = Frm_FindGrean.Adodc1</p><p><b>  End Sub</b></p><p>  Private Sub Form_Load()</p><p>  Combo1.AddItem ("必修")</p><p>  Combo1.AddItem

68、 ("選修")</p><p>  Combo1.AddItem ("自開")</p><p>  Combo2.AddItem ("考試")</p><p>  Combo2.AddItem ("查考")</p><p>  Text1.Text = "

69、;"</p><p>  Text2.Text = ""</p><p>  'Text3.Text = ""</p><p>  Text4.Text = ""</p><p>  Text5.Text = ""</p><

70、p>  Text6.Text = ""</p><p>  Text7.Text = ""</p><p>  Text8.Text = ""</p><p>  Combo1.Text = ""</p><p>  Combo2.Text = "

71、"</p><p><b>  End Sub</b></p><p>  Private Sub Text1_Change()</p><p><b>  End Sub</b></p><p>  Private Sub Text2_Change()</p><p&

72、gt;<b>  End Sub</b></p><p>  Private Sub Text8_Change()</p><p><b>  End Sub</b></p><p>  課程管理:課程查詢(如:界面如圖三)</p><p><b> ?。▓D三)</b><

73、/p><p>  當(dāng)輸入查詢類別、運(yùn)算符和條件后可以查找到所需要的課程設(shè)置,或按查詢時間來查詢,輸入所要查找的時間段,就可查到所要的課程設(shè)置。</p><p><b>  代碼如下:</b></p><p>  Dim sqlstr As String</p><p>  Private Sub Combo1_Change(

74、)</p><p><b>  End Sub</b></p><p>  Private Sub Combo2_Change()</p><p><b>  End Sub</b></p><p>  Private Sub Combo4_Change()</p><p>

75、<b>  End Sub</b></p><p>  Private Sub Combo5_Change()</p><p><b>  End Sub</b></p><p>  Private Sub Combo7_Change()</p><p><b>  End Sub<

76、/b></p><p>  Private Sub Command1_Click()</p><p>  Dim a As String</p><p>  Dim KCCX1 As String</p><p>  Dim KCCX2 As String</p><p>  Dim str1 As String

77、</p><p>  Dim str2 As String</p><p>  If Option3.Value = True Then</p><p>  a = Trim(Combo2)</p><p>  Select Case a</p><p><b>  Case "="<

78、;/b></p><p>  KCCX1 = "" & Combo1.Text & " " & Combo2.Text & " '" & Trim(Text1) & "'"</p><p>  Case "like"<

79、;/p><p>  KCCX1 = "Instr(1," & Combo1.Text & ",'" & Trim(Text1.Text) & "')<>0 "</p><p>  End Select</p><p>  a = Trim(Combo4

80、)</p><p>  Select Case a</p><p><b>  Case "="</b></p><p>  KCCX2 = "" & Combo3.Text & " " & Combo4.Text & " '"

81、; & Trim(Text2) & "'"</p><p>  Case "like"</p><p>  KCCX2 = "Instr(1," & Combo3.Text & ",'" & Trim(Text2.Text) & "

82、9;)<>0 "</p><p>  End Select</p><p>  If Option1.Value = True Then</p><p>  If KCCX1 = "" Then</p><p>  strTiaoJian = "select * from 課程表 where

83、 " & KCCX2</p><p>  ElseIf KCCX2 = "" Then</p><p>  strTiaoJian = "select * from 課程表 where " & KCCX1</p><p><b>  Else</b></p><

84、;p>  strTiaoJian = "select * from 課程表 where " & KCCX1 & "and " & KCCX2</p><p><b>  End If</b></p><p>  ElseIf Option2.Value = True Then</p>

85、<p>  If KCCX1 = "" Then</p><p>  strTiaoJian = "select * from 課程表 where " & KCCX2</p><p>  ElseIf KCCX2 = "" Then</p><p>  strTiaoJian = &quo

86、t;select * from 課程表 where " & KCCX1</p><p><b>  Else</b></p><p>  strTiaoJian = "select * from 課程表 where " & KCCX1 & "or " & KCCX2</p>

87、<p><b>  End If</b></p><p><b>  Else</b></p><p>  If KCCX1 = "" Then</p><p>  strTiaoJian = "select * from 課程表 where " & KCCX2&

88、lt;/p><p>  ElseIf KCCX2 = "" Then</p><p>  strTiaoJian = "select * from 課程表 where " & KCCX1</p><p><b>  Else</b></p><p>  MsgBox "

89、;請選擇連接方式!", vbOKOnly, "警告"</p><p><b>  Exit Sub</b></p><p><b>  End If</b></p><p><b>  End If</b></p><p>  If (KCCX1

90、& KCCX2) = "" Then</p><p>  MsgBox "請輸入查詢類別!", vbOKOnly, "警告"</p><p><b>  Exit Sub</b></p><p><b>  Else</b></p><

91、p><b>  Unload Me</b></p><p>  Frm_UpdateGrean.Show 1</p><p><b>  End If</b></p><p><b>  End If</b></p><p>  If Option4.Value = Tr

92、ue Then</p><p>  If Val(Combo6) > Val(Combo9) Then</p><p>  MsgBox "請正確選擇年份!", vbOKOnly + vbExclamation, "信息提示"</p><p>  Combo6.SetFocus</p><p>&

93、lt;b>  Exit Sub</b></p><p><b>  Else</b></p><p>  If Val(Combo6) = Val(Combo9) Then</p><p>  If Val(Combo7) > Val(Combo10) Then</p><p>  MsgBox

94、"請正確選擇月份!", vbOKOnly + vbExclamation, "信息提示"</p><p>  Combo7.SetFocus</p><p><b>  Exit Sub</b></p><p><b>  Else</b></p><p> 

95、 If Val(Combo7) = Val(Combo10) Then</p><p>  If Val(Combo8) > Val(Combo11) Then</p><p>  MsgBox "請正確選擇日期!", vbOKOnly + vbExclamation, "信息提示"</p><p>  Combo8.S

96、etFocus</p><p><b>  Exit Sub</b></p><p><b>  End If</b></p><p><b>  End If</b></p><p><b>  End If</b></p><p&g

97、t;<b>  End If</b></p><p><b>  End If</b></p><p>  If Combo6.Text = "" Or Combo7.Text = "" Or Combo8.Text = "" Or Combo9.Text = ""

98、Or Combo10.Text = "" Or Combo11.Text = "" Then</p><p>  MsgBox "請輸入完整的日期", vbOKOnly, "警告"</p><p><b>  Exit Sub</b></p><p><b&g

99、t;  End If</b></p><p>  str1 = Trim(Combo6) & "-" & Trim(Combo7) & "-" & Trim(Combo8)</p><p>  str2 = Trim(Combo9) & "-" & Trim(Combo1

100、0) & "-" & Trim(Combo11)</p><p>  str1 = Format(str1, "yyyy-mm-dd")</p><p>  str2 = Format(str2, "yyyy-mm-dd")</p><p>  If sqlstr = ""

101、; Then</p><p>  sqlstr = "" & Trim(Combo5.Text) & ">=#" & Format(str1, "yyyy-mm-dd") & "# and " & Trim(Combo5.Text) & "<= #" &a

102、mp; Format(str2, "yyyy-mm-dd") & "#"</p><p><b>  Else</b></p><p>  sqlstr = sqlstr & " and " & Trim(Combo5.Text) & ">=#" &a

103、mp; Format(str1, "yyyy-mm-dd") & "# and " & Trim(Combo5.Text) & "<= #" & Format(str2, "yyyy-mm-dd") & "#"</p><p><b>  End If<

104、;/b></p><p>  If sqlstr = "" Then</p><p>  MsgBox "請先輸入查找時間!"</p><p><b>  Exit Sub</b></p><p><b>  End If</b></p>

105、<p>  strTiaoJian = "select 專業(yè),年級,學(xué)期,課程名稱,教材,任課老師,課時,上課地點,課程性質(zhì),考試性質(zhì) from 課程表 where " & sqlstr</p><p><b>  Unload Me</b></p><p>  Frm_UpdateGrean.Show 1</p>

106、<p><b>  End If</b></p><p>  If Option3.Value <> True And Option4.Value <> True Then</p><p>  MsgBox "請選擇查詢方式!", vbOKOnly, "警告"</p><p&

107、gt;<b>  Exit Sub</b></p><p><b>  End If</b></p><p><b>  End Sub</b></p><p>  Private Sub Command3_Click()</p><p><b>  Unload M

108、e</b></p><p><b>  End Sub</b></p><p>  Private Sub Form_Load()</p><p>  Dim i, j As Integer</p><p>  For i = 1999 To 2010</p><p>  Combo6

109、.AddItem i</p><p>  Combo9.AddItem i</p><p><b>  Next i</b></p><p>  Combo6.ListIndex = 0</p><p>  Combo9.ListIndex = 0</p><p>  For i = 1 To 1

110、2</p><p>  Combo7.AddItem i</p><p>  Combo10.AddItem i</p><p><b>  Next i</b></p><p>  Combo7.ListIndex = 0</p><p>  Combo10.ListIndex = 0</

111、p><p>  For i = 1 To 31</p><p>  Combo8.AddItem i</p><p>  Combo11.AddItem i</p><p><b>  Next i</b></p><p>  Combo8.ListIndex = 0</p><p

112、>  Combo11.ListIndex = 0</p><p>  Combo1.AddItem ("專業(yè)")</p><p>  Combo1.AddItem ("年級")</p><p>  Combo1.AddItem ("課程名稱")</p><p>  Combo1

113、.AddItem ("教材")</p><p>  Combo1.AddItem ("任課老師")</p><p>  'Combo1.AddItem ("課時")</p><p>  Combo1.AddItem ("課程性質(zhì)")</p><p>  C

114、ombo1.AddItem ("考試性質(zhì)")</p><p>  Combo2.AddItem ("=")</p><p>  Combo3.AddItem ("專業(yè)")</p><p>  Combo3.AddItem ("年級")</p><p>  Comb

115、o3.AddItem ("課程名稱")</p><p>  Combo3.AddItem ("教材")</p><p>  Combo3.AddItem ("任課老師")</p><p>  'Combo3.AddItem ("課時")</p><p> 

116、 Combo3.AddItem ("課程性質(zhì)")</p><p>  Combo3.AddItem ("考試性質(zhì)")</p><p>  Combo4.AddItem ("=")</p><p>  Combo5.AddItem ("學(xué)期")</p><p>  

117、Combo1.Text = ""</p><p>  Combo2.Text = ""</p><p>  Text1.Text = ""</p><p>  Combo3.Text = ""</p><p>  Combo4.Text = ""

118、;</p><p>  Text2.Text = ""</p><p>  Combo5.Text = ""</p><p>  Combo6.Text = ""</p><p>  Combo7.Text = ""</p><p>  C

119、ombo8.Text = ""</p><p>  Combo9.Text = ""</p><p>  Combo10.Text = ""</p><p>  Combo11.Text = ""</p><p><b>  End Sub</b&

120、gt;</p><p>  7.1.2 打印統(tǒng)計</p><p>  運(yùn)行打印統(tǒng)計后可以按條件把符合條件的各種信息以報表形式羅列出來,各種信息還可以以打印出來或以報表形式保存。打印統(tǒng)計包括班級統(tǒng)計分析、檔案統(tǒng)計分析、課程統(tǒng)計分析、成績統(tǒng)計分析和交費(fèi)統(tǒng)計分析五類。</p><p>  班級統(tǒng)計分析(如:界面如圖四)</p><p><b&

121、gt; ?。▓D四)</b></p><p><b>  代碼如下:</b></p><p>  Private Sub Command1_Click()</p><p>  Dim SQLoriginal As String</p><p>  Dim SQLadd As String</p>

122、<p>  Dim SQLorder As String</p><p>  Dim strSql As String</p><p>  SQLoriginal = "SELECT 年級,專業(yè),人數(shù),輔導(dǎo)員,備注 FROM 班級表 "</p><p>  SQLadd = "WHERE 年級=年級 AND 專業(yè)=專業(yè) &qu

123、ot;</p><p>  SQLorder = ""</p><p>  If Check1.Value = 1 And IsNumeric(Text1) Then</p><p>  SQLadd = SQLadd + "and 年級='" + Text1 + "'"</p>

124、<p><b>  End If</b></p><p>  If Check2.Value = 1 And Not IsNull(Text2) Then</p><p>  SQLadd = SQLadd + "and 專業(yè)='" + Text2 + "'"</p><p>

125、;<b>  End If</b></p><p>  If Check3.Value = 1 And IsNumeric(Text3) Then</p><p>  SQLadd = SQLadd + "and 人數(shù)='" + Text3 + "'"</p><p><b> 

126、 End If</b></p><p>  If Check4.Value = 1 And Not IsNull(Text4) Then</p><p>  SQLadd = SQLadd + "and 輔導(dǎo)員='" + Text4 + "'"</p><p><b>  End If&l

127、t;/b></p><p>  strSql = SQLoriginal + SQLadd + SQLorde</p><p>  If Dat_Main.rsDat_Class.State = 1 Then</p><p>  Dat_Main.rsDat_Class.Close</p><p><b>  End If&l

128、t;/b></p><p>  Dat_Main.rsDat_Class.Open strSql</p><p>  Dat_Class.Show vbModal</p><p>  Text1.Text = ""</p><p>  Text2.Text = ""</p><

129、p>  Text3.Text = ""</p><p>  Text4.Text = ""</p><p><b>  End Sub</b></p><p>  Private Sub Command2_Click()</p><p><b>  Unload M

130、e</b></p><p><b>  End Sub</b></p><p>  Private Sub Form_Load()</p><p>  Text1.Text = ""</p><p>  Text2.Text = ""</p><p&

131、gt;  Text3.Text = ""</p><p>  Text4.Text = ""</p><p><b>  End Sub</b></p><p>  Private Sub Text1_Change()</p><p><b>  End Sub</

132、b></p><p>  Private Sub Text3_Change()</p><p><b>  End Sub</b></p><p>  檔案分析統(tǒng)計(如:界面如圖五)</p><p><b> ?。▓D五)</b></p><p><b>  代

133、碼如下:</b></p><p>  Private Sub Command1_Click()</p><p>  Dim SQLoriginal As String</p><p>  Dim SQLadd As String</p><p>  Dim SQLorder As String</p><p&g

134、t;  Dim strSql As String</p><p>  On Error Resume Next</p><p>  SQLoriginal = "SELECT * FROM 學(xué)生檔案 "</p><p>  SQLadd = "WHERE 學(xué)號=學(xué)號 AND 姓名=姓名 "</p><p&g

溫馨提示

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

評論

0/150

提交評論