教學(xué)管理系統(tǒng)的方案設(shè)計(jì)書(shū)與實(shí)現(xiàn)-軟件技術(shù)_第1頁(yè)
教學(xué)管理系統(tǒng)的方案設(shè)計(jì)書(shū)與實(shí)現(xiàn)-軟件技術(shù)_第2頁(yè)
教學(xué)管理系統(tǒng)的方案設(shè)計(jì)書(shū)與實(shí)現(xiàn)-軟件技術(shù)_第3頁(yè)
教學(xué)管理系統(tǒng)的方案設(shè)計(jì)書(shū)與實(shí)現(xiàn)-軟件技術(shù)_第4頁(yè)
已閱讀5頁(yè),還剩33頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、西北大學(xué)繼續(xù)教育學(xué)院成人高等教育畢業(yè)論文題 目 :教案管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)指導(dǎo)教師:學(xué)生姓名:學(xué)號(hào):專業(yè):軟件技術(shù)年級(jí):2011 級(jí)學(xué)歷層次:專 科學(xué)歷形式:函 授完成時(shí)間:二0年月日摘 要隨著全球信息化的飛速發(fā)展,信息網(wǎng)絡(luò)在人們的日常生活中已占據(jù)了十分重要的地位。以往面對(duì)面的教案方式已顯然不能滿足現(xiàn)在社會(huì)的需要,逐漸也開(kāi)始把信息化引入教育領(lǐng)域中,從而打破了孔家和時(shí)間的限制,為老師和學(xué)生提供了更加便捷的途徑。目前我校的教案資源庫(kù),具有海量的、無(wú)序的、共享性差的特點(diǎn),導(dǎo)致了他的利用率也相當(dāng)?shù)牡?。各個(gè)院系都有各自的教案資源庫(kù),又導(dǎo)致了資源庫(kù)的重復(fù)建設(shè),造成了人力、物力、財(cái)力的嚴(yán)重浪費(fèi)。考慮到以上存

2、在的問(wèn)題,本文研究并設(shè)計(jì)了一套基于 Web 的網(wǎng)絡(luò)教案資源管理系統(tǒng),本系統(tǒng)中教師可以通過(guò)網(wǎng)絡(luò)教授學(xué)生知識(shí),給學(xué)生布置作業(yè),完成網(wǎng)上批閱學(xué)生提交的作業(yè),實(shí)現(xiàn)部分網(wǎng)絡(luò)教案工作;學(xué)生可以通過(guò)網(wǎng)絡(luò)學(xué)習(xí),在網(wǎng)上查看并完成老師布置的作業(yè),可查看本系統(tǒng)中提供的教案資源,歲時(shí)隨思利用網(wǎng)絡(luò)在線學(xué)習(xí),提高學(xué)習(xí)效率。另一方面我們集中收集并規(guī)范我校內(nèi)部各個(gè)學(xué)院零散的教案資源,充分發(fā)揮本系統(tǒng)教案資源可以共享的優(yōu)勢(shì)。該系統(tǒng)的開(kāi)發(fā)研制彌補(bǔ)了傳統(tǒng)教案方式中的不足之處,同時(shí)減輕了我校管理人員在教案資源管理工作中的壓力,有效的提高教案質(zhì)量。本文首先接受了網(wǎng)絡(luò)教案及教案資源的發(fā)展背景和現(xiàn)狀并對(duì)教案資源管理系統(tǒng)的必要性、可行性進(jìn)行了

3、分析。根據(jù)教師、學(xué)生、教輔人員給出的需求分析,確定了系統(tǒng)所應(yīng)具有的基本功能。采用 B/S 模式和當(dāng)前流行的 JSP技術(shù)對(duì)系統(tǒng)進(jìn)行開(kāi)發(fā),然后根據(jù)需求分析設(shè)計(jì)出系統(tǒng)的總體結(jié)構(gòu)及分析了各個(gè)子系統(tǒng)的具體功能,并給出了系統(tǒng)部分界面和實(shí)現(xiàn)的部分代碼。最后對(duì)論文做了總結(jié)并對(duì)該系統(tǒng)的進(jìn)一步研究做了展望,明確了下一步的工作和目標(biāo)。該系統(tǒng)經(jīng)過(guò)測(cè)試運(yùn)行,基本達(dá)到了預(yù)期目標(biāo)。隨著軟件技術(shù)的不斷發(fā)展和教案需要,本系統(tǒng)也為以后的不斷更新升級(jí)留有空間。我相信本系統(tǒng)在我校的教案工作和管理工作中都能起到較高的實(shí)用價(jià)值和較好的應(yīng)用前景。關(guān)鍵詞: 教案資源管理系統(tǒng), B/S 模式, SQL Server 2005 ,查詢目 錄前言

4、 1第 1 章背景、目的及概述 2 1.1 工程背景 21.2 編寫目的 21.3 軟件定義 21.4 開(kāi)發(fā)環(huán)境 3第 2 章需求分析 32.1 信息要求 32.2 處理要求 32.3 安全性與完整性要求4第 3 章概念結(jié)果設(shè)計(jì) 53.1 基本 E-R 圖設(shè)計(jì) 5第 4 章邏輯結(jié)構(gòu)設(shè)計(jì) 8 4.1 E-R 圖的轉(zhuǎn)換 84.2 數(shù)據(jù)約束設(shè)計(jì) 9第 5 章主要模塊的設(shè)計(jì)以及代碼 10 5.1 登陸模塊設(shè)計(jì) 115.2 管理員、教師、學(xué)生模塊設(shè)計(jì) 145.3 存儲(chǔ)過(guò)程 285.4 觸發(fā)器 28第 6 章預(yù)測(cè)結(jié)果 306.1 遇到的問(wèn)題以及解決方法30不同對(duì)話框數(shù)據(jù)的傳遞30數(shù)據(jù)的級(jí)聯(lián)刪除30學(xué)生成績(jī)

5、的分析306.2 設(shè)計(jì)的體會(huì) 30結(jié)束語(yǔ) 32致謝 33參考文獻(xiàn) 34前 言教案管理是學(xué)校運(yùn)作的中心樞紐,教案管理的質(zhì)量直接關(guān)系到一所高校在當(dāng)代社會(huì)競(jìng)爭(zhēng)中的地位甚至生存與發(fā)展。當(dāng)今時(shí)代,計(jì)算機(jī)信息處理技術(shù)的廣泛應(yīng)用,為高校教案管理提供了有力手段。一所高等學(xué)校要走在時(shí)代的先進(jìn)行列,實(shí)現(xiàn)教案管理工作的現(xiàn)代化和科學(xué)化,其關(guān)鍵就在于要運(yùn)用現(xiàn)代網(wǎng)絡(luò)信息技術(shù)建立計(jì)算機(jī)教案管理系統(tǒng),實(shí)現(xiàn)管理的電腦化。教案工作在學(xué)校的發(fā)展和建設(shè)中占有重要地位。教案管理水平的高低,在某種程度上反映了一所學(xué)校管理水平的整體狀況。他與學(xué)校工作的其他方面有著密切的聯(lián)系,對(duì)學(xué)校的教案工作、思想工作、管理工作、建設(shè)工作、教育改革以及教育

6、方針的貫徹執(zhí)行等產(chǎn)生重要作用與影響,而這一系列的工作有影響到整個(gè)學(xué)校的發(fā)展進(jìn)程。在當(dāng)前的形勢(shì)下,隨著社會(huì)的不斷進(jìn)步與發(fā)展,教育的現(xiàn)代化、規(guī)范化和管理現(xiàn)代化的步伐也不斷加快。教育的現(xiàn)代化要求教案工作也應(yīng)當(dāng)現(xiàn)代化、規(guī)范化。管理現(xiàn)代化既包括管理思想、管理體制的現(xiàn)代化,也包括管理方法、管理手段的現(xiàn)代化。建立教案管理信息系統(tǒng),加強(qiáng)計(jì)算機(jī)技術(shù)在高校教案管理中的應(yīng)用,必將使高校教案管理工作更加科學(xué)化、規(guī)范化、現(xiàn)代化,從而大大提高高校教案管理水平。第 1 章 背景、目的及概述1.1 工程背景隨著科學(xué)技術(shù)、管理方法的不斷進(jìn)步,傳統(tǒng)的方式、方法和手段已經(jīng)不能適應(yīng)現(xiàn)代化管理的需要 ,作為培養(yǎng)高質(zhì)量合格人才為宗旨的高

7、等學(xué)校,總是走在科技的最前沿 ,教案管理的計(jì)算機(jī)化已成為高校管理現(xiàn)代化、決策科學(xué)化的一個(gè)重要環(huán)節(jié) ,是開(kāi)創(chuàng)教案管理工作新局面的必由之路。教案管理系統(tǒng)是一個(gè)輔助學(xué)校教務(wù)人員完成日常工作中,涉及學(xué)籍管理、教師管理、課程管理和成績(jī)管理等工程的日常比較繁重的工作。它應(yīng)用計(jì)算機(jī)在數(shù)據(jù)處理和數(shù)據(jù)整理保存方面的優(yōu)異性能,幫助工作人員提高工作的效率、減少出錯(cuò)情況。同時(shí)還能提供快速的查詢檢索功能。1.2 編寫目的本系統(tǒng)的設(shè)計(jì)旨在實(shí)現(xiàn)管理員、教師以及學(xué)生對(duì)信息的查詢、修改以及更新提供便利性。教案管理系統(tǒng)是一個(gè)輔助學(xué)校教務(wù)人員完成日常工作中,涉及教師管理、課程管理和成績(jī)管理等工程的日常比較繁重的工作。它應(yīng)用計(jì)算機(jī)在

8、數(shù)據(jù)處理和數(shù)據(jù)整理保存方面的優(yōu)異性能,幫助工作人員提高工作的效率、減少出錯(cuò)情況。1.3 軟件定義本系統(tǒng)做成了 C/S 模式,本系統(tǒng)的登陸模塊提供了遠(yuǎn)程連接數(shù)據(jù)庫(kù)的方法,以及不同的登陸模式管理員、教師、學(xué)生),不同的登陸權(quán)限對(duì)應(yīng)著可以實(shí)現(xiàn)操作功能是有區(qū)別的。1.4 開(kāi)發(fā)環(huán)境經(jīng)過(guò)思考和選擇,決定以.net C#來(lái)實(shí)現(xiàn)本系統(tǒng)。第 2章需求分析2.1 信息要求本次系統(tǒng)設(shè)計(jì)主要需要的信息如下所示,這些信息都是以表的形式存在數(shù)據(jù)庫(kù)中,當(dāng)需要輸入、刪除、修改等信息時(shí)可以通過(guò)執(zhí)行SQL 語(yǔ)句來(lái)實(shí)現(xiàn)。1、學(xué)生信息:學(xué)號(hào)、姓名、性別、出生日期、入學(xué)成績(jī)、所在系號(hào)2、教職工信息:職工號(hào)、姓名、性別、出身年月、所在系

9、號(hào)、職稱、專業(yè)及教案方向3、系的基本信息:系號(hào)、系名稱、系的簡(jiǎn)介4、課程信息:課程號(hào)、課程名稱、任課教師號(hào)、學(xué)時(shí)、學(xué)分、上課時(shí)間、上課地點(diǎn)、考試時(shí)間5、成績(jī)信息:學(xué)號(hào)、課程號(hào)、平時(shí)成績(jī)、考試成績(jī)、總評(píng)成績(jī)2.2 處理要求1、學(xué)生基本信息管理新生信息錄入、學(xué)生信息修改:按學(xué)號(hào)查詢出某學(xué)生的信息并做信息修改。學(xué)生轉(zhuǎn)學(xué)(轉(zhuǎn)入和轉(zhuǎn)出),學(xué)生畢業(yè)等。畢業(yè)和轉(zhuǎn)學(xué)的學(xué)生有關(guān)信息存儲(chǔ)到歷史庫(kù)中。2、系基本信息管理:系的基本信息輸入、修改、刪除3、課程信息管理:課程信息的輸入、修改、刪除4、教職工信息管理:教職工信息的輸入、修改、刪除5、選課管理:每學(xué)期所選課程的學(xué)分不能超過(guò)15 分、學(xué)生可以同時(shí)選修一門或多門

10、課程、可以同時(shí)為多個(gè)學(xué)生選修某一門或某幾門課程、刪除和修改選課信息。6、成績(jī)管理:按課程輸入和修改成績(jī)、按學(xué)生輸入和修改成績(jī)。7、信息查詢:按學(xué)號(hào)、姓名、系號(hào)查詢學(xué)生基本信息。按職工號(hào)、姓名、系號(hào)查詢教職工基本信息。按系號(hào)、系名稱查詢系的基本信息。按課程號(hào)、課程名稱、上課教師姓名查詢課程基本信息。按學(xué)號(hào)、學(xué)生姓名、課程號(hào)、課程名稱、上課教師姓名、系號(hào)查詢學(xué)生成績(jī),內(nèi)容包括課程基本情況。若查詢涉及多門課程,則按課程分組。每門課程按總評(píng)成績(jī)從高分到低分給出選修該門課程的所有學(xué)生的成績(jī)(平時(shí)成績(jī)、考試成績(jī)和總評(píng)成績(jī))。8、統(tǒng)計(jì)報(bào)表成績(jī)登記表,內(nèi)容包括課程基本信息(課程號(hào)、課程名稱、任課教師號(hào)、學(xué)時(shí)、

11、學(xué)分、上課時(shí)間、上課地點(diǎn)、考試時(shí)間)、選課學(xué)生名單(學(xué)號(hào)、姓名、性別),每個(gè)學(xué)生的平時(shí)成績(jī)(空格)、考試成績(jī)(空格)和總評(píng)成績(jī)(空格),按學(xué)號(hào)排序:順序輸出所有課程的成績(jī)登記表。按課程號(hào)、課程名稱、教師姓名輸出對(duì)應(yīng)課程的成績(jī)登記表。按系號(hào)輸出對(duì)應(yīng)課程的成績(jī)登記表(本系所有教師擔(dān)任的課程)。成績(jī)報(bào)表,內(nèi)容包括課程基本信息(課程號(hào)、課程名稱、任課教師號(hào)、學(xué)時(shí)、學(xué)分、上課時(shí)間、上課地點(diǎn)、考試時(shí)間),選課學(xué)生名單(學(xué)號(hào)、姓名、性別),每個(gè)學(xué)生的平時(shí)成績(jī)、考試成績(jī)和總評(píng)成績(jī), >=90 分、 >=80 分、 >=70 分、 >=60 分及不及格學(xué)生的人數(shù)及比例,按學(xué)號(hào)排序:順序輸

12、出所有課程的成績(jī)報(bào)表。(報(bào)表格式自己訂制,可以參考學(xué)校的系統(tǒng)的輸出格式)按課程號(hào)、課程名稱、教師姓名輸出對(duì)應(yīng)課程的成績(jī)報(bào)表。按系號(hào)輸出對(duì)應(yīng)課程的成績(jī)報(bào)表(本系所有教師擔(dān)任的課程)。2.3 安全性與完整性要求在數(shù)據(jù)庫(kù)中,各個(gè)表之間是有聯(lián)系的,它們存在著參照完整性,在刪除數(shù)據(jù)時(shí),要考慮到一個(gè)表中的數(shù)據(jù)刪除的同時(shí)也要?jiǎng)h除另一個(gè)表中對(duì)應(yīng)的數(shù)據(jù)項(xiàng)。第 3 章 概念結(jié)果設(shè)計(jì)3.1 基本 E-R 圖設(shè)計(jì)E-R 圖設(shè)計(jì):E-R 圖中實(shí)體有:教師、學(xué)生、系部、課程實(shí)體屬性學(xué)生:學(xué)號(hào)、姓名、性別、出生日期、入學(xué)成績(jī)、所在系號(hào)教師:職工號(hào)、姓名、性別、出身年月、所在系號(hào)、職稱、專業(yè)及教案方向系:系號(hào)、系名稱、系的簡(jiǎn)

13、介課程:課程號(hào)、課程名稱、任課教師號(hào)、學(xué)時(shí)、學(xué)分、上課時(shí)間、上課地點(diǎn)、考試時(shí)間其中各個(gè)之間的關(guān)系如下:學(xué)生可以選多個(gè)課程,一個(gè)課程可以被多個(gè)學(xué)生選修。學(xué)生存在一個(gè)系中,一個(gè)系可以存在多個(gè)學(xué)生。一個(gè)教師可以教多個(gè)課程,一個(gè)課程可以被多個(gè)教師教。一個(gè)教師只能在一個(gè)系中,一個(gè)系中可以有多個(gè)教師。學(xué)生:學(xué)號(hào)姓名性別學(xué)生所在系號(hào)出生日期入學(xué)成績(jī)圖 3-1 學(xué)生關(guān)系教師:職工號(hào)姓名性別教師專業(yè)及教案方向出生日期職稱所在系號(hào)圖 3-2 教師關(guān)系系:系名系號(hào)系信系簡(jiǎn)介圖 3-3 系關(guān)系課程:課程號(hào)課程名教師號(hào)課程上課地點(diǎn)學(xué)時(shí)考試時(shí)間學(xué)分上課時(shí)間圖 3-4 課程關(guān)系全局 E-R 圖:學(xué)生mn課程選課mn課學(xué) /

14、教系n1n系系/教教師1圖 3-5 學(xué)生課程系教師E-R 圖第 4 章 邏輯結(jié)構(gòu)設(shè)計(jì)4.1 E-R 圖的轉(zhuǎn)換表一覽:Account(用戶登錄表)、 Course(課程表)、 Student(學(xué)生表)、 Teacher(教師表)、 Dept(系表)、 Grades(成績(jī)表 ) 。表結(jié)構(gòu):1、Account(用戶登錄表)圖 4-1 用戶登錄2、Course(課程表)圖 4-2 課程3、Student(學(xué)生表)圖 4-3 學(xué)生4、Teacher(教師表)圖 4-4 教師5、Dept(系表)圖4-5系6、Grades(成績(jī)表 )圖 4-6 成績(jī)4.2 數(shù)據(jù)約束設(shè)計(jì)數(shù)據(jù)安全性設(shè)計(jì):用戶權(quán)限的劃分。總體設(shè)

15、計(jì)時(shí)分為三大類用戶:數(shù)據(jù)庫(kù)管理員、教職工、在校學(xué)生。其各自的權(quán)限如下:數(shù)據(jù)庫(kù)管理員具有最高權(quán)限:可以對(duì)數(shù)據(jù)庫(kù)中的任意數(shù)據(jù)項(xiàng)進(jìn)行維護(hù)和更新。教師權(quán)限:可以對(duì)Student關(guān)系表訪問(wèn),可對(duì)Teacher關(guān)系表進(jìn)行訪問(wèn),可以對(duì) Grades(成績(jī)表)進(jìn)行學(xué)生成績(jī)的輸入、修改和刪除。學(xué)生權(quán)限:可以對(duì)Student關(guān)系表訪問(wèn),可對(duì)Teacher關(guān)系表進(jìn)行訪問(wèn),可以查詢某個(gè)課程的信息,可以對(duì)課程選課,以及查詢自己的成績(jī)。數(shù)據(jù)完整性設(shè)計(jì):在各個(gè)關(guān)系模式設(shè)計(jì)的時(shí)候,在滿足數(shù)據(jù)庫(kù)涉及基本要求的同時(shí),考慮到了外碼問(wèn)題,為后續(xù)操作想,各關(guān)系模式中部分表定義了外碼,以便進(jìn)行級(jí)聯(lián)操作。第 5 章 主要模塊的設(shè)計(jì)以及代碼

16、在進(jìn)行各個(gè)模塊的說(shuō)明前有必要說(shuō)明一下面向?qū)ο蟮某绦蛟O(shè)計(jì)思想,在本系統(tǒng)中,為方便對(duì)數(shù)據(jù)庫(kù)的連接、SQL 語(yǔ)句的執(zhí)行以及數(shù)據(jù)庫(kù)的關(guān)閉。本程序封裝了一個(gè) SQLDatabase類,類中定義了一系列的函數(shù)來(lái)完成數(shù)據(jù)庫(kù)的連接等操作。代碼及說(shuō)明如下:class SQLDatabasepublic SqlConnection SQLConnection。public SqlCommand MyCommand。public SqlDataAdapter sdr。static public string ServerIP。public void GetServerIP(string IP)ServerIP=IP

17、。public void SQLDataConnectionOpen()/ 本函數(shù)完成對(duì)數(shù)據(jù)庫(kù)的連接SQLConnection = new SqlConnection()。SQLConnection.ConnectionString = "Server=" + ServerIP + 。" Userid=sa。pwd=123456。 DataBase=TeachingManagementSystem"。SQLConnection.Open()。public void SQLDataConnectionClose()/實(shí)現(xiàn)數(shù)據(jù)庫(kù)的關(guān)閉SQLConnectio

18、n.Close()。public int SQLExecuteNonQuery(string str)/ExecuteNonQuery 方法:執(zhí)行不返回結(jié)果的命令MyCommand = new SqlCommand(str, SQLConnection)。return MyCommand.ExecuteNonQuery()。public object SQLExecuteScalar(string str)/ 只返回結(jié)果集中第一行的第一列MyCommand = new SqlCommand(str, SQLConnection)。return MyCommand.ExecuteScalar()

19、。public SqlDataAdapter SQLDataAdapter(string strCmd)sdr = new SqlDataAdapter(strCmd, SQLConnection)。return sdr。public SqlDataReader SQLExecuteReader(string strCmd)/ 執(zhí)行返回?cái)?shù)據(jù)集的Select語(yǔ)句,返回一個(gè)DataReader對(duì)象MyCommand = new SqlCommand(strCmd, SQLConnection)。SqlDataReader sdr = MyCommand.ExecuteReader()。return

20、 sdr。5.1 登陸模塊設(shè)計(jì)在本程序的登陸模塊中,當(dāng)用戶輸入用戶名、密碼及其登陸權(quán)限后,會(huì)對(duì)數(shù)據(jù)與數(shù)據(jù)庫(kù)的數(shù)據(jù)進(jìn)行對(duì)比,若相同則進(jìn)入相應(yīng)的權(quán)限界面,以進(jìn)行相應(yīng)的操作。登陸界面如下圖所示:圖 5-1 登錄登陸按鈕的單擊消息響應(yīng):當(dāng)用戶輸入用戶名、密碼及登陸權(quán)限,單擊登陸按鈕后,數(shù)據(jù)會(huì)與數(shù)據(jù)庫(kù)的數(shù)據(jù)進(jìn)行對(duì)比,若相同則通過(guò),否則會(huì)提示用戶響應(yīng)的錯(cuò)誤報(bào)告。代碼如下:private void button1_Click(object sender, EventArgs e)if (textBox1.Text = "") MessageBox.Show("服務(wù)器 IP 地址

21、不能為空,請(qǐng)輸入用戶名!", "提示 ")。textBox1.Focus()。 return。 else if (textBox2.Text = "") MessageBox.Show("用戶名不能為空,請(qǐng)輸入用戶名!", " 提示 ")。textBox2.Focus()。return。 else if (textBox3.Text = "") MessageBox.Show("密碼不能為空,請(qǐng)輸入密碼!", " 提示 ")。textBox3.F

22、ocus()。return。 else if (textBox4.Text = "") MessageBox.Show("校驗(yàn)碼不能為空,請(qǐng)輸入!", " 提示 ")。textBox4.Focus()。return。 else if (textBox4.Text != label6.Text)MessageBox.Show("校驗(yàn)碼輸入不正確,請(qǐng)重新輸入!", " 提示 ")。textBox4.Text = ""。 label6.Text = ProduceCheckCode

23、()。textBox4.Focus()。return。 string identity = "0"。if (radioButton1.Checked)identity = "3"。else if (radioButton2.Checked)identity = "2" 。else if (radioButton3.Checked)identity = "1"。SQLDatabase SQLConn = new SQLDatabase()。SQLConn.GetServerIP(textBox1.Text)。SQLC

24、onn.SQLDataConnectionOpen();string strCmd = "select * from Account where Aname='" + textBox2.Text+ "'and Apassword='" + textBox3.Text + "'" + "and Apermissions='" + identity + "'" 。 SqlDataReader sdr = SQLConn.SQLExecuteReader

25、(strCmd)。int n = 0。while (sdr.Read()n = 1。Form2 form2 = new Form2(identity,textBox1.Text)。form2.Show()。this.Hide()。if (n = 0) MessageBox.Show("沒(méi)有此用戶! n 或者用戶名或密碼錯(cuò)誤! n 請(qǐng)重新輸入或者注冊(cè)當(dāng)前用戶! ", " 提示 ")。 label6.Text = ProduceCheckCode()。sdr.Close()。SQLConn.SQLDataConnectionClose()。另外本模塊也提供了

26、校驗(yàn)碼認(rèn)證、用戶注冊(cè)功能。用戶單擊登陸按鈕后,系統(tǒng)會(huì)對(duì)用戶輸入的校驗(yàn)碼與系統(tǒng)隨機(jī)生成的校驗(yàn)碼進(jìn)行對(duì)比,不相同會(huì)提示用戶重新輸入。當(dāng)用戶想注冊(cè)一個(gè)賬戶時(shí),系統(tǒng)會(huì)根據(jù)用戶輸入的用戶名、密碼、權(quán)限,在數(shù)據(jù)庫(kù)中查找是否已存在相同的用戶名若相同則提示用戶注冊(cè)成功,否則提示用戶錯(cuò)誤報(bào)告。代碼與登陸響應(yīng)類似不再列出。5.2 管理員、教師、學(xué)生模塊設(shè)計(jì)這里需要說(shuō)明一點(diǎn)的是,本程序的操作端是通過(guò)TabControl 控件實(shí)現(xiàn)的,各個(gè) tabPage頁(yè)都放在了一個(gè)對(duì)話框上,對(duì)于不同的登陸權(quán)限,會(huì)在對(duì)話框的初始化函數(shù)中通過(guò)調(diào)用。函數(shù)來(lái)實(shí)現(xiàn)某個(gè)tabPage頁(yè)的隱藏,以體現(xiàn)不同的權(quán)限功能。所以這里只需要對(duì)管理員端的各

27、個(gè)操作進(jìn)行說(shuō)明即可,整個(gè)界面如下圖所示:圖 5-2 管理員、教師、學(xué)生tabPage1:學(xué)生管理在學(xué)生管理頁(yè)面中,管理員可以對(duì)學(xué)生信息進(jìn)行查詢、刪除、修改、錄入、及其轉(zhuǎn)學(xué) /畢業(yè)操作等。另外,各個(gè)表之間是有聯(lián)系的,當(dāng)刪除一個(gè)學(xué)生的信息后,如果此學(xué)生選了課,并且有了成績(jī),系統(tǒng)會(huì)同時(shí)把此學(xué)生的選課記錄、成績(jī)記錄刪除。當(dāng)錄入一個(gè)學(xué)生的信息時(shí),系統(tǒng)提供了判斷機(jī)制,系統(tǒng)會(huì)先檢查數(shù)據(jù)庫(kù)中是否已存在該學(xué)生的信息,若存在提示不同錄入。其 錄入 按鈕的單擊消息響應(yīng)函數(shù)代碼為:private void button1_Click(object sender, EventArgs e)if (textBox1.Te

28、xt = "")MessageBox.Show(" 學(xué)號(hào)不能為空,請(qǐng)輸入學(xué)號(hào)!", " 提示 ") 。textBox1.Focus() 。 return 。else if (textBox2.Text = "") MessageBox.Show(" 姓名不能為空,請(qǐng)輸入姓名! ", " 提示 ") 。 textBox2.Focus() 。 return。string sex="" 。if(radioButton1.Checked)sex=" 男

29、" 。else if (radioButton2.Checked)sex=" 女 " 。SQLDatabase SQLConn = new SQLDatabase() 。SQLConn.GetServerIP(SerIP) 。SQLConn.SQLDataConnectionOpen() 。string strCmd 。string strCmd2 。string strCmd3 。strCmd = "insert into Student values('" + textBox1.Text+ "','&quo

30、t; + textBox2.Text+ "','"+sex+ "','"+textBox3.Text+"','"+textBox4.Text+"','"+textBox5.Text+"')。" 。strCmd2 = "select * from Student where Sno='" + textBox1.Text + "'。 " 。strCmd3 = "s

31、elect * from Dept where Dno='" + textBox5.Text + "'。 " 。object ob = SQLConn.SQLExecuteScalar(strCmd2) 。if (Convert.ToString(ob) != "")MessageBox.Show(" 已存在學(xué)號(hào)為 " + textBox1.Text + "的信息! n請(qǐng)重新輸入!", "提示 ")。textBox1.Text = "" 。 text

32、Box2.Text = "" 。textBox3.Text = "" 。 textBox4.Text = "" 。textBox5.Text = "" 。textBox1.Focus() 。SQLConn.SQLDataConnectionClose() 。return 。object ob1 = SQLConn.SQLExecuteScalar(strCmd3) 。if (Convert.ToString(ob1) = "")if (textBox5.Text != "")

33、MessageBox.Show(" 不存在系號(hào)為 " + textBox5.Text + " 的系信息! n請(qǐng)重新輸入! ", "提示")。textBox5.Text = "" 。 textBox5.Focus() 。SQLConn.SQLDataConnectionClose() 。return 。SQLConn.SQLExecuteNonQuery(strCmd) 。MessageBox.Show(" 錄入成功! ", " 提示 ") 。/ 控件清空!textBox1.T

34、ext = "" 。 textBox2.Text = "" 。textBox3.Text = "" 。 textBox4.Text = "" 。textBox5.Text = "" 。 textBox1.Focus() 。SQLConn.SQLDataConnectionClose() 。button5_Click(sender, e) 。tabPage2:系管理在系管理頁(yè)面中,管理員可以對(duì)系信息進(jìn)行查詢、刪除、修改、輸入。另外,各個(gè)表之間是有聯(lián)系的,當(dāng)刪除一個(gè)系的信息后,在該系的所以學(xué)生記錄會(huì)

35、同時(shí)刪除,與此相應(yīng)的選課、成績(jī)記錄也會(huì)被刪除。當(dāng)錄入一個(gè)系的信息時(shí),系統(tǒng)提供了判斷機(jī)制,系統(tǒng)會(huì)先檢查數(shù)據(jù)庫(kù)中是否已存在該系的信息,若存在提示不同錄入。其 輸入 按鈕的單擊消息響應(yīng)函數(shù)代碼為:private void button7_Click(object sender, EventArgs e)if (textBox7.Text = "")MessageBox.Show("textBox7.Focus() 。系號(hào)不能為空,請(qǐng)輸入系號(hào)!return。", " 提示 ")。else if (textBox8.Text = "&

36、quot;)MessageBox.Show("textBox8.Focus() 。系名不能為空,請(qǐng)輸入系名! return 。", " 提示 ")。SQLDatabase SQLConn = new SQLDatabase()SQLConn.GetServerIP(SerIP) 。SQLConn.SQLDataConnectionOpen() 。string strCmd 。string strCmd2 。strCmd = "insert into Dept values('" + textBox7.Text+ "&

37、#39;,'"textBox9.Text + "') 。 " 。strCmd2 = "select * from Dept where Dno='" + textBox7.Text + "'object ob = SQLConn.SQLExecuteScalar(strCmd2) 。if (Convert.ToString(ob) != "")+ textBox8.Text。 " 。+ "','" +MessageBox.Show(&qu

38、ot; 已存在系號(hào)為" + textBox7.Text + "的信息!n請(qǐng)重新輸入!", "提示 ")。textBox7.Text = ""textBox9.Text = ""。textBox8.Text = "" 。textBox7.Focus() 。SQLConn.SQLDataConnectionClose()。return 。elseSQLConn.SQLExecuteScalar(strCmd) 。MessageBox.Show(" 輸入成功! ", &q

39、uot; 提示 ") 。/ 控件清空!textBox7.Text = ""textBox9.Text = ""。textBox8.Text = "" 。textBox7.Focus() 。SQLConn.SQLDataConnectionClose() 。button10_Click(sender,e) 。tabPage3:課程管理在課程管理頁(yè)面中,管理員可以對(duì)課程信息進(jìn)行查詢、刪除、修改、輸入。另外,各個(gè)表之間是有聯(lián)系的,當(dāng)刪除一個(gè)課程的信息后,選擇此課程的選課記錄,成績(jī)記錄也會(huì)被同時(shí)刪除。當(dāng)錄入一個(gè)課程的信息時(shí),系統(tǒng)提供

40、了判斷機(jī)制,系統(tǒng)會(huì)先檢查數(shù)據(jù)庫(kù)中是否已存在該課程的信息,若存在提示不同錄入。其 輸入 按鈕的單擊消息響應(yīng)函數(shù)代碼為:private void button12_Click(object sender, EventArgs e)if (textBox10.Text = "")MessageBox.Show(" 課程號(hào)不能為空,請(qǐng)輸入課程號(hào)!", " 提示 ") 。textBox10.Focus() 。return 。else if (textBox11.Text = "")MessageBox.Show("

41、 課程名不能為空,請(qǐng)輸入課程名!", " 提示 ") 。textBox11.Focus() 。return 。else if (textBox12.Text = "")MessageBox.Show(" 任課教師號(hào)不能為空,請(qǐng)輸入課程名!", " 提示 ") 。textBox12.Focus() 。return 。SQLDatabase SQLConn = new SQLDatabase() 。SQLConn.GetServerIP(SerIP) 。SQLConn.SQLDataConnectionOpe

42、n() 。string strCmd 。string strCmd2 。strCmd = "insert into Course values('" + textBox10.Text + "','" + textBox11.Text + "','" + textBox12.Text + "','"+ textBox13.Text + "','" + textBox14.Text+ "','"

43、; + textBox15.Text + "','" + textBox16.Text+ "','" + textBox17.Text + "')" 。strCmd2 = "select * from Course where Cno='" + textBox10.Text + "'。 "。object ob = SQLConn.SQLExecuteScalar(strCmd2) 。if (Convert.ToString(ob) != &

44、quot;")MessageBox.Show(" 已存在課程號(hào)為 " + textBox10.Text + " 的信息! n請(qǐng)重新輸入! ", " 提示 ")。textBox10.Text = "" 。 textBox11.Text = "" 。textBox12.Text = "" 。 textBox13.Text = "" 。textBox14.Text = "" 。 textBox15.Text = "&quo

45、t; 。textBox16.Text = "" 。 textBox17.Text = "" 。textBox10.Focus() 。SQLConn.SQLDataConnectionClose() 。return 。string strCmd3 = "select * from Teacher where Tno='" + textBox12.Text + "'。 " 。object ob1 = SQLConn.SQLExecuteScalar(strCmd3) 。if (Convert.ToStr

46、ing(ob1) = "")if (textBox12.Text != "")MessageBox.Show(" 不存在教師號(hào)為 " + textBox12.Text + " 的教師信息! n請(qǐng)重新輸入! ", " 提示 ")。textBox12.Text = "" 。textBox12.Focus() 。SQLConn.SQLDataConnectionClose() 。return 。SQLConn.SQLExecuteNonQuery(strCmd) 。MessageB

47、ox.Show(" 課程信息輸入成功!", " 提示 ")。/ 控件清空!textBox10.Text = ""。 textBox11.Text = ""。textBox12.Text = ""。 textBox13.Text = ""。textBox14.Text = ""。 textBox15.Text = ""。textBox16.Text = ""。 textBox17.Text = ""

48、。textBox10.Focus() 。SQLConn.SQLDataConnectionClose() 。button14_Click( sender, e) 。tabPage4:教師管理在教師管理頁(yè)面中,管理員可以對(duì)教師信息進(jìn)行查詢、刪除、修改、輸入。當(dāng)錄入一個(gè)教師的信息時(shí),系統(tǒng)提供了判斷機(jī)制,系統(tǒng)會(huì)先檢查數(shù)據(jù)庫(kù)中是否已存在該教師的信息,若存在提示不同錄入。其 輸入 按鈕的單擊消息響應(yīng)函數(shù)代碼為:private void button17_Click(object sender, EventArgs e)if (textBox6.Text = "")MessageBox

49、.Show(" 職工號(hào)不能為空,請(qǐng)輸入!", " 提示 ") 。textBox6.Focus() 。return 。else if (textBox18.Text = "")MessageBox.Show(" 姓名不能為空,請(qǐng)輸入!", " 提示 ") 。textBox18.Focus() 。return 。else if (textBox20.Text = "")MessageBox.Show(" 所在系號(hào)不能為空,請(qǐng)輸入!", " 提示 &q

50、uot;) 。textBox20.Focus() 。return 。string sex = "" 。if (radioButton11.Checked)sex = " 男 "。elsesex = " 女 "。SQLDatabase SQLConn = new SQLDatabase() 。SQLConn.GetServerIP(SerIP) 。SQLConn.SQLDataConnectionOpen() 。string strCmd 。string strCmd2 。strCmd = "insert into Teach

51、er values('" + textBox6.Text + "','" + textBox18.Text + "','" + sex + "','"+ textBox19.Text + "','" + textBox20.Text + "','" + textBox21.Text + "','" + textBox22.Text+ "',

52、9;" + textBox23.Text + "')" 。strCmd2 = "select * from Teacher where Tno='" + textBox6.Text + "'。 " 。object ob = SQLConn.SQLExecuteScalar(strCmd2) 。if (Convert.ToString(ob) != "")MessageBox.Show(" 已存在職工號(hào)為" + textBox6.Text + " 的信息

53、! n請(qǐng)重新輸入! "," 提示 ")。textBox6.Text = "" 。 textBox19.Text = "" 。textBox20.Text = "" 。 textBox21.Text = "" 。textBox22.Text = "" 。 textBox23.Text = "" 。textBox6.Focus() 。SQLConn.SQLDataConnectionClose() 。return 。string strCmd3 =

54、"select * from Dept where Dno='" + textBox20.Text + "'。 " 。object ob1 = SQLConn.SQLExecuteScalar(strCmd3) 。if (Convert.ToString(ob1) = "")if (textBox20.Text != "")MessageBox.Show(" 不存在系號(hào)為 " + textBox20.Text + "的系信息! n請(qǐng)重新輸入! ", "

55、;提示")。textBox20.Text = "" 。 textBox20.Focus() 。SQLConn.SQLDataConnectionClose() 。return 。SQLConn.SQLExecuteNonQuery(strCmd) 。MessageBox.Show(" 職工信息輸入成功!", " 提示 ")。/ 控件清空!textBox6.Text = "" 。 textBox18.Text = "" 。textBox19.Text = "" 。 textBox20.Text = "" 。textBox21.Text = "" 。 textBox22.T

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論