畢業(yè)設(shè)計-考試成績分析系統(tǒng)的設(shè)計與實現(xiàn)—論文_第1頁
畢業(yè)設(shè)計-考試成績分析系統(tǒng)的設(shè)計與實現(xiàn)—論文_第2頁
畢業(yè)設(shè)計-考試成績分析系統(tǒng)的設(shè)計與實現(xiàn)—論文_第3頁
畢業(yè)設(shè)計-考試成績分析系統(tǒng)的設(shè)計與實現(xiàn)—論文_第4頁
畢業(yè)設(shè)計-考試成績分析系統(tǒng)的設(shè)計與實現(xiàn)—論文_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、畢業(yè)設(shè)計(論文)考試成績分析系統(tǒng)的設(shè)計與實現(xiàn)論文作者姓名:申請學(xué)位專業(yè):申請學(xué)位類別:指導(dǎo)教師姓名職稱:論文提交日期:考試成績分析系統(tǒng)的設(shè)計與實現(xiàn)摘 要在不斷信息化的今天,網(wǎng)絡(luò)的出現(xiàn)讓人們能夠更快地獲取更多的信息。各個領(lǐng)域都引進了計算機網(wǎng)絡(luò)來為他們提高辦事效率。在學(xué)校的教學(xué)管理中,利用計算機網(wǎng)絡(luò)實現(xiàn)學(xué)生成績信息的管理、統(tǒng)計和分析勢在必行。本系統(tǒng)旨在提高學(xué)校對學(xué)生考試成績管理工作的效率,使之成為現(xiàn)代教學(xué)信息化效勞體系的重要組成局部。本系統(tǒng)采用B/S模式開發(fā),以ASP作為主要的開發(fā)技術(shù), SQL Server2000作為后臺數(shù)據(jù)庫效勞器,采用Dreamweaver MX2004制作頁面。本系統(tǒng)主要

2、實現(xiàn)了課程設(shè)置、成績管理、學(xué)生信息管理以及成績的查詢、統(tǒng)計和分析等功能。其中在對成績統(tǒng)計和分析局部,通過TeeChart組件,用柱狀圖直觀地展現(xiàn)了統(tǒng)計分析的結(jié)果。關(guān)鍵詞:成績管理;統(tǒng)計分析;ASP;SQL ServerThe Design and Implementation of Examination Result Analysis SystemAbstractNowadays, with the development of network technology people can get information more quickly. In every field, comput

3、er network has been brought in to increase efficiency. It is necessary to take advantage of computer network to implement score management, score statistics and analysis.This system aims at improving the efficiency of student score management, which will be an important part of modern educational in

4、formation services system. This examination result analysis system is based on B/S mode, and takes ASP as program technology, SQL Server2000 as database and Dreamweaver MX2004 as tool of page developing. For the statistics and analysis parts, by adding TeeChart object, it is more visual to display t

5、he statistics results.Key words: management of examination result; statistical and analysis; ASP; SQL Server目 錄 論文總頁數(shù):29頁1引言11.1課題背景11.2國內(nèi)外研究現(xiàn)狀11.3本課題研究的意義12相關(guān)技術(shù)介紹22.1ASP技術(shù)的簡介22.2SQL SERVER簡介22.3Dreamweaver簡介33系統(tǒng)設(shè)計43.1系統(tǒng)需求分析43.2系統(tǒng)具備的功能43.3系統(tǒng)功能模塊圖53.4數(shù)據(jù)庫設(shè)計53.4.1數(shù)據(jù)庫的表設(shè)計53.4.2 表間關(guān)系74系統(tǒng)設(shè)計與實現(xiàn)84.1系統(tǒng)首頁84.2

6、系統(tǒng)登錄模塊94.3管理員和教師頁面104.3.1管理員頁面104.3.2教師頁面114.4系統(tǒng)數(shù)據(jù)管理模塊124.4.1學(xué)生管理124.4.2課程管理144.4.3成績管理174.4.4用戶管理194.5查詢分析模塊204.5.1單科報表204.5.2成績統(tǒng)計214.5.3成績分析234.6錯誤處理模塊25結(jié)論26參考文獻27致 謝28聲 明291 引言 1.1 課題背景考試是教學(xué)中特別重要的環(huán)節(jié),通過考試,可以及時發(fā)現(xiàn)老師在教學(xué)中存在的問題,更重要的是還能發(fā)現(xiàn)哪些學(xué)生在學(xué)習(xí)過程中存在嚴(yán)重問題,需要老師和同學(xué)們的幫助??纪旰蟮某煽兎治鼍涂梢允刮覀兊玫竭@些信息。但是從以往的成績分析中,我們費時

7、費力的結(jié)果只能得到很少的有用信息。幾年前,大多數(shù)學(xué)校的學(xué)生成績管理根本上都是靠手工進行,隨著近幾年各類學(xué)校辦學(xué)規(guī)模的擴大和招生人數(shù)的增加, 有關(guān)學(xué)生成績管理工作所涉及的數(shù)據(jù)量越來越大,這使學(xué)生成績管理成為一項十分繁重的工作。一些學(xué)校不得不靠增加人力、物力來進行學(xué)生成績管理。但手工管理具有效率低、費時、易錯誤等缺點,面對如此繁多的數(shù)據(jù)需要進行管理、統(tǒng)計和分析,如果用人工的方法,其過程的艱辛將無發(fā)想像。教學(xué)實踐與計算機的結(jié)合,幫助我們很好的解決了這一問題。在信息技術(shù)飛速開展的今天,計算機代替了以前大多數(shù)的人力勞動,并已經(jīng)成為各個領(lǐng)域不可缺少的應(yīng)用工具。針對目前學(xué)校教師管理學(xué)生成績,并對學(xué)生成績進行

8、分析仍采用人工的方法,或簡單的利用Excel進行管理的現(xiàn)狀,為了減輕教師在管理學(xué)生成績時的負(fù)擔(dān),提高分析學(xué)生成績的效率,及時反映學(xué)生的學(xué)習(xí)狀態(tài),和教師在教學(xué)方面的效果,開發(fā)出一個具有教師對學(xué)生成績進行管理、統(tǒng)計、分析常等用功能的能跨越各種系統(tǒng)平臺的成績分析系統(tǒng)勢在必行。1.2 國內(nèi)外研究現(xiàn)狀由于利用計算機代替人力勞動對學(xué)生考試成績數(shù)據(jù)進行管理、統(tǒng)計、分析表達出了巨大的優(yōu)勢,在實際應(yīng)用中,基于網(wǎng)絡(luò)的、跨操作平臺的考試成績管理、分析系統(tǒng)擁有很大的市場。國內(nèi)外的軟件企業(yè)開發(fā)出了各種不同功能的考試成績管理、分析系統(tǒng)。這些系統(tǒng)中的大多數(shù)是利用VB和Access數(shù)據(jù)庫進行開發(fā)的,這樣的系統(tǒng)在跨操作平臺,和

9、數(shù)據(jù)存儲方面都有明顯的缺乏。1.3 本課題研究的意義現(xiàn)在我國的大中專院校的學(xué)生成績管理水平普遍不高,有的還停留在紙介質(zhì)根底上,這種管理手段已不能適應(yīng)時代的開展,因為它浪費了了許多的人力和物力。在當(dāng)今信息時代這種傳統(tǒng)的管理方法必然被計算機網(wǎng)絡(luò)為根底的信息管理系統(tǒng)所代替。如果本系統(tǒng)能被學(xué)校所采用,將會改變以前靠手工對學(xué)生成績進行管理、統(tǒng)計和分析的狀況,可以大大提高教學(xué)工作的效率,樹立良好的辦學(xué)形象。2 相關(guān)技術(shù)介紹2.1 ASP技術(shù)的簡介ASP全稱為Active Server Pages的簡寫,是一套由微軟公司開發(fā)的效勞器端運行的腳本平臺,使用ASP內(nèi)置組件可以快速開發(fā)動態(tài)網(wǎng)頁。每一個組件都是由一

10、組富有經(jīng)驗的程序員根據(jù)動態(tài)網(wǎng)頁最常用的功能而開發(fā)的。在ASP3.0中,共有6個這樣的組件: Application ,ASPError ,Request ,Response ,Server ,Session .常見的Cookies就是利用Session組件實現(xiàn)的。此外,還可以利用第三方組件延伸ASP的作用,如利用MailSender組件發(fā)送電子郵件。 通過ASP我們可以結(jié)合HTML網(wǎng)頁、ASP指令和ActiveX元件建立動態(tài)、交互且高效的WEB效勞器應(yīng)用程序。同時,ASP也支持VBScript和JScript等腳本語言,默認(rèn)為VBScript。其中JScript是微軟公司的ECMAScript

11、標(biāo)準(zhǔn)的實現(xiàn),并且有自己的擴展。本系統(tǒng)將采用VBScript腳本語言。 ASP是經(jīng)過效勞器解析之后再向網(wǎng)頁瀏覽器返回數(shù)據(jù),所以有了ASP就不必?fù)?dān)憂客戶的瀏覽器是否能運行你所編寫的代碼。因為所有的程序都將在網(wǎng)頁效勞器端執(zhí)行,包括所有嵌在普通HTML中的腳本程序。當(dāng)程序執(zhí)行完畢后,效勞器僅將執(zhí)行的結(jié)果返回給客戶瀏覽器,這樣也就減輕了客戶端瀏覽器的負(fù)擔(dān),大大提高了交互的速度。由于代碼是需要經(jīng)過效勞器執(zhí)行之后才向瀏覽器發(fā)送的,所以在客戶端看到的只能是經(jīng)過解析之后的數(shù)據(jù),而無法獲得源代碼,故編寫者不用擔(dān)憂自己的源代碼會被別人剽竊。但不排除黑客利用系統(tǒng)漏洞竊取效勞器端的ASP源代碼?;谶@樣的解析方式,也導(dǎo)

12、致運行ASP頁面相對于普通的HTML頁面要慢一點。因為普通的HTML頁面只需要瀏覽器就能夠解析,而ASP那么必須是效勞器將整頁的代碼都執(zhí)行一遍之后再發(fā)送數(shù)據(jù)。 ASP提供與數(shù)據(jù)庫的交互,如Microsoft SQL Server、Access、MySQL和Oracle,比較流行的是ASP和Microsoft SQL Server的組合。2.2 SQL SERVER簡介SQL Server是微軟公司所推出的一套運行在Windows平臺上的數(shù)據(jù)庫管理系統(tǒng),用于提供作為應(yīng)用程序的數(shù)據(jù)來源,存放各種數(shù)據(jù),并可以讓用戶很容易地實現(xiàn)所要進行的數(shù)據(jù)存取操作,同時它也提供了一些可視化的管理工具,協(xié)助數(shù)據(jù)庫系統(tǒng)

13、管理者更方便快捷地管理及設(shè)計數(shù)據(jù)庫內(nèi)容,以及對數(shù)據(jù)庫進行維護。SQL在客戶/效勞開發(fā)中的角色,因為本考試成績分析系統(tǒng)所產(chǎn)生和處理的數(shù)據(jù)量比較大,這就讓我們首先想到了SQL server大型數(shù)據(jù)庫,SQL是一組符合工業(yè)標(biāo)準(zhǔn)的數(shù)據(jù)庫操作令集。SQL不是一門語言,無法得到一個專門的SQL軟件,它只是效勞器數(shù)據(jù)庫的部份。SQL Server數(shù)據(jù)庫是動態(tài)網(wǎng)頁中的重要局部。動態(tài)網(wǎng)頁中的大局部數(shù)據(jù)都是放在數(shù)據(jù)庫中的,動態(tài)網(wǎng)頁頁面效果是通過調(diào)用數(shù)據(jù)庫信息來實現(xiàn)的。因此,數(shù)據(jù)庫在動態(tài)網(wǎng)頁技術(shù)中也起著越來越重要的作用。作為一種查詢語言,SQL語言的主要功能就是同各種數(shù)據(jù)庫建立聯(lián)系,進行溝通。SQL語言集數(shù)據(jù)查詢、

14、數(shù)據(jù)操縱、數(shù)據(jù)定義和數(shù)據(jù)控制功能于一身,它有一體化、高度非過程化、語言簡潔、以多種方式使用等特點。數(shù)據(jù)定義語言DDL:實現(xiàn)定義、刪除和修改數(shù)據(jù)庫對象的功能。數(shù)據(jù)查尋語言DQL:實現(xiàn)對查尋數(shù)據(jù)的功能數(shù)據(jù)操縱語言DML:實現(xiàn)對數(shù)據(jù)庫數(shù)據(jù)的增加、刪除和修改功能。數(shù)據(jù)控制語言DCL:實現(xiàn)控制用戶對數(shù)據(jù)庫的操作權(quán)限的功能。由于本考試成績分析系統(tǒng)使用的大量的存儲過程,現(xiàn)將SQL Server的存儲過程做簡單介紹:存儲過程(Stored Procedure)是一組為了完成特定功能的SQL語句集,經(jīng)編譯后存儲在數(shù)據(jù)庫中。用戶通過制定存儲過程的名字并給出參數(shù)(如果該存儲過程帶有參數(shù))來執(zhí)行它。存儲過程是一個預(yù)編

15、譯的對象,這意味著過程是預(yù)先編譯好的,并且供不同的應(yīng)用程序執(zhí)行。因此,根本不需要再花時間對過程重新進行語法分析和編譯,其執(zhí)行速度很快。開發(fā)者用Transaction-SQL編寫的程序作為存儲過程存儲在SQL Server中,并創(chuàng)立應(yīng)用程序來調(diào)用存儲過程,對數(shù)據(jù)結(jié)果進行處理,存儲過程能夠通過接收參數(shù)向調(diào)用者返回結(jié)果集,結(jié)果集的格式由調(diào)用者確定;返回狀態(tài)值給調(diào)用者,指明調(diào)用是成功還是失敗;存儲過程包括針對數(shù)據(jù)庫的操作語句,并且可以在一個存儲過程中調(diào)用另一個存儲過程。存儲過程雖然既有參數(shù)又有返回值,但是它與函數(shù)不同。存儲過程的返回值只是指明執(zhí)行是否成功,并且它不能像函數(shù)那樣被直接調(diào)用,也就是說。在調(diào)

16、用存儲過程時,在存儲過程名字前一定要有EXEC保存字。存儲過程具有下面一些優(yōu)點:(1)存儲過程允許標(biāo)準(zhǔn)組件式編程。(2)存儲過程能夠?qū)崿F(xiàn)較快的執(zhí)行速度。(3)存儲過程能夠減少網(wǎng)絡(luò)流量。(4)存儲過程可被作為一種平安機制來充分利用。2.3 Dreamweaver簡介Dreamweaver是由美國著名的軟件開發(fā)商Macromedia公司推出的一個“所見即所得的可視化網(wǎng)站開發(fā)工具。無論在國外還是在國內(nèi),它都是倍受專業(yè)Web開發(fā)人士推崇的軟件。在國內(nèi),它被大家稱為網(wǎng)頁“織夢者,眾多的專業(yè)網(wǎng)站和個人主頁都把它列為建站的首選工具。在最新的MX版本中,對Dreamweaver的代碼控制和后臺功能作了進一步增

17、強,整合了UltraDev,ColdFusion Studio,Homesite等優(yōu)秀軟件,使得新版本的Dreamweaver比起原有的版本,功能得到了一個飛躍的開展。3 系統(tǒng)設(shè)計3.1 系統(tǒng)需求分析使用計算機網(wǎng)絡(luò)對學(xué)生考試成績信息進行管理,具有手工管理所無法比較的優(yōu)點。檢索迅速、統(tǒng)計種類多、直觀的圖形分布顯示、管理方便、存儲量大、平安性好、本錢低、跨平臺性等,這些優(yōu)點極大地提高了學(xué)校對學(xué)生考試成績的管理、統(tǒng)計、分析的效率。本系統(tǒng)正是為了能夠為各類型學(xué)校提供一套操作簡單、應(yīng)用廣泛的考試成績分析系統(tǒng),以提高學(xué)校對學(xué)生考試成績管理、統(tǒng)計、分析的效率,實現(xiàn)學(xué)??荚嚦煽児芾硇畔⒒O(shè)計的。本系統(tǒng)應(yīng)具備

18、對學(xué)生信息、課程信息、教師信息、成績數(shù)據(jù)信息管理功能,能夠?qū)σ陨闲畔⑦M行錄入、刪除、修改、查詢、統(tǒng)計。對成績數(shù)據(jù),應(yīng)實現(xiàn)對各年級、各班的總分、平均分的計算,并進行排序;按年級或班級對單科成績的及格人數(shù)、優(yōu)秀人數(shù)、及格率、優(yōu)秀率、各分?jǐn)?shù)段人數(shù)分布等進行統(tǒng)計分析,對各分?jǐn)?shù)段人數(shù)分布還應(yīng)通過圖形的方式直觀地展現(xiàn)出來;系統(tǒng)通過設(shè)置不同的登錄用戶權(quán)限來對系統(tǒng)進行訪問和管理。3.2 系統(tǒng)具備的功能系統(tǒng)可按權(quán)限分為公共模塊,管理員模塊,教師模塊三個模塊。公共模塊:可通過輸入學(xué)號,學(xué)期查詢相應(yīng)的成績信息。教師模塊:此模塊需要登錄用戶擁有教師權(quán)限,用戶登錄后可以通過選擇查詢條件查詢相關(guān)的成績信息、成績統(tǒng)計報表、

19、成績分布柱狀圖。管理員模塊:此模塊需要登錄用戶擁有管理員權(quán)限,用戶登錄后除了可以通過選擇查詢條件查詢相關(guān)的成績信息、成績統(tǒng)計報表、成績分布柱狀圖外,還可以對系統(tǒng)后臺數(shù)據(jù)進行管理。此模塊可以對學(xué)生數(shù)據(jù)、課程數(shù)據(jù)、成績數(shù)據(jù)、用戶數(shù)據(jù)進行管理,實現(xiàn)對學(xué)生、課程、成績、用戶的添加、刪除、修改。3.3 系統(tǒng)功能模塊圖課程管理模塊成績管理模塊用戶管理模塊班級單科成績報表年級單科成績報表表班級單科成績報表年級單科成績報表表班級學(xué)期成績匯總年級學(xué)期成績匯總表各班單科成績分析年級各科成績分析表學(xué)生管理模塊考試成績分析系統(tǒng)管 理 員 模 塊教 師 模 塊學(xué)生查詢圖3-1 系統(tǒng)功能模塊圖3.4 數(shù)據(jù)庫設(shè)計設(shè)計數(shù)據(jù)庫

20、系統(tǒng)時應(yīng)首先了解用戶各個方面的需求,包括現(xiàn)有的以及將來可能增加的需求,用戶的需求具體表達在各種信息的提供、保存、更新和查詢,這就要求數(shù)據(jù)庫結(jié)構(gòu)能充分滿足各種信息的輸入和輸出。收集根本數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)以及數(shù)據(jù)處理的流程,組成一份詳盡的數(shù)據(jù)字典,為后面的具體設(shè)計打下根底。針對本考試成績分析系統(tǒng)的需求,通過對考試成績的管理、統(tǒng)計、分析過程分析,需要使用管理員和教師信息表保存系統(tǒng)管理員和教師的根本信息,使用學(xué)生信息表保存學(xué)生的個人信息,使用課程信息表保存所開設(shè)的課程的信息,使用成績信息表保存考試成績數(shù)據(jù)。3.4.1數(shù)據(jù)庫的表設(shè)計首先在SQL Server中創(chuàng)立名為score的數(shù)據(jù)庫,根據(jù)對系統(tǒng)的分析可以

21、得出本系統(tǒng)需要的表如下:管理員和教師信息表(admin):用來存放管理員或教師ID、姓名、登錄密碼和用戶類型(系統(tǒng)管理員或普通教師)信息。Type:此字段用來標(biāo)示用戶為普通教師或系統(tǒng)管理員;字段值為“1 :用戶為系統(tǒng)管理員,擁有管理員權(quán)限,可訪問查詢分析模塊和數(shù)據(jù)管理模塊,可對系統(tǒng)數(shù)據(jù)進行添加、修改、刪除操作;字段值為“2 :用戶為普通教師,擁有非管理員教師權(quán)限,只能訪問查詢分析模塊,不能對系統(tǒng)數(shù)據(jù)進行添加、修改、刪除操作。表3-1管理員和教師信息表(admin)字段名字段數(shù)據(jù)類型字段長度允許空簡要說明IDVarchar20否登錄ID、主鍵NameVarchar20是教師或管理員姓名Passw

22、ordVarchar20是登錄密碼TypeInt4是用戶類型、權(quán)限學(xué)生信息表(student):用來存放學(xué)生的學(xué)號、姓名、性別、所在年級和所在班級信息。Gender:此字段用來標(biāo)示學(xué)生的性別:字段值為“0 ,性別為:女;字段值為“1 ,性別為:男。表3-2學(xué)生信息表(student)字段名字段數(shù)據(jù)類型字段長度允許空簡要說明IDVarchar20否學(xué)生學(xué)號、主鍵NameVarchar20是學(xué)生姓名GenderBit1是學(xué)生性別ClassInt4否學(xué)生所在班級GradeVarchar20否學(xué)生所在年級課程信息表(course):用來存放課程ID、課程名、授課教師ID、課程描述和課程所在的學(xué)期信息。

23、Term:此字段用來標(biāo)示課程所在的學(xué)期,字段值從一年級上半期為“1”開始編號,按學(xué)期增加的順序,字段值依次加1。如:一年級下半期為“2” 。表3-3課程信息表(course)字段名字段數(shù)據(jù)類型字段長度允許空簡要說明IDVarchar20否課程ID號NameVarchar20是課程名字TeacherIDVarchar20是授課教師ID號RemarkVarchar50是課程描述TermInt4否課程所在的學(xué)期成績信息表(score):用來存放成績對應(yīng)的學(xué)生學(xué)號、課程ID、分?jǐn)?shù)和考試類型信息,此表的由兩個外鍵“StudentID和“CourseID組成復(fù)合主鍵。Type:此字段用來標(biāo)示考試的類型;字

24、段值為“1 ,表示正??荚嚕蛔侄沃禐椤? ,表示補考。表3-4成績信息表(score)字段名字段數(shù)據(jù)類型字段長度允許空簡要說明StudentIDVarchar20否考生學(xué)號、復(fù)合主鍵、外鍵CourseIDVarchar20否課程ID號、復(fù)合主鍵、外鍵ScoreInt4是成績分?jǐn)?shù)TypeInt4是考試類型3.4.2 表間關(guān)系數(shù)據(jù)庫中所創(chuàng)立的表有如下的約束關(guān)系:課程信息表course中的“TeacherID字段受教師信息表admin中的“ID字段約束,成績信息表score中的“SrudentID字段受學(xué)生信息表student中的“ID字段約束,“CourseID字段受課程信息表course中的“I

25、D字段約束。如圖3-2所示。CoursePKIDNameTeacherIDTermRemarkScorePKStudentIDPKCourseIDScoreTypeAdminPKIDNamePasswordTypeStudentPKIDNameGenderGradeClass1nn1n1圖3-2各表間的約束關(guān)系4 系統(tǒng)設(shè)計與實現(xiàn)4.1 系統(tǒng)首頁系統(tǒng)首頁SearchScore.asp為所有瀏覽者提供了學(xué)生個人成績查詢的功能,輸入學(xué)生的學(xué)號,并選擇學(xué)期項,就可以查詢到該學(xué)生相應(yīng)學(xué)期的所有已考試課程的成績,不及格的課程考試成績將會用紅色字體顯示。系統(tǒng)還會自動統(tǒng)計查詢到的課程數(shù)目和不及格的課程數(shù)目。此

26、頁面還為系統(tǒng)管理員和教師用戶提供了登錄頁面的鏈接,用戶點擊此鏈接可進入系統(tǒng)登錄頁面進行用戶登錄。系統(tǒng)首頁頁面效果如圖4-1所示。圖4-1 系統(tǒng)首頁首頁中查詢學(xué)生個人成績的存儲過程代碼如下:CREATE PROCEDURE sp_SearchScoreStudentID varchar(20),Term intAS Select ,a.StudentID,a.Score,(case a.Typewhen 1 then '正常考試' when 2 then '補考' end) as Type,b.Name as CourseName,c.Name as

27、TeacherNamefrom Score a,Course b,admin c,student dwhere a.StudentID=StudentID and a.CourseID=b.ID and b.TeacherID = c.ID and b.Term=Term and d.ID=StudentIDGO4.2 系統(tǒng)登錄模塊系統(tǒng)管理員和教師用戶可通過系統(tǒng)登錄頁面Login.asp進行登錄。填寫完登錄信息,提交表單后系統(tǒng)通過LoginCheck.asp對用戶填寫的登錄信息和數(shù)據(jù)庫中記錄的信息進行比照,假設(shè)用戶填寫登錄信息有空項,系統(tǒng)會提示“用戶和密碼不能為空 ,然后系統(tǒng)返回登錄頁面Log

28、in.asp;假設(shè)用戶登錄信息填寫錯誤,頁面將提示“用戶名或密碼輸入有誤 ,然后系統(tǒng)返回登錄頁面Login.asp;假設(shè)用戶登錄信息填寫正確,系統(tǒng)將會對用戶的權(quán)限類型“Type進行檢查,假設(shè)“Type=1表示用戶為系統(tǒng)管理員,系統(tǒng)會將用戶的登錄信息記錄在Cookies集合和Session變量中,然后系統(tǒng)轉(zhuǎn)到管理員頁面Manage.asp;假設(shè)“Type=2表示用戶為教師用戶,系統(tǒng)會將用戶的登錄信息記錄在Cookies集合和Session變量中后轉(zhuǎn)到教師頁面Teacher.asp。LoginCheck.asp中驗證用戶信息的函數(shù)checkUser代碼如下:'功能:驗證用戶信息是否正確&#

29、39;參數(shù):username用戶名,' password密碼'返回值:正確那么返回1,不正確返回0' 設(shè)置Cookies用戶IDUserID和登錄狀態(tài)(Login)Function checkUser(userid,password)Dim dbc_ClassSet dbc_Class = New DBConn '建立存儲過程的輸入?yún)?shù)Set Cmd1 = Server.CreateObject("ADODB mand")Set Param = Cmd1.CreateParameter("ID",adVarChar,adP

30、aramInput,20,userid)Cmd1.Parameters.Append ParamSet Param=Cmd1.CreateParameter("PassWord",adVarChar,adParamInput,20,password)Cmd1.Parameters.Append Param'運行名為sp_CheckUser的存儲過程Call dbc_Class.CreateCommandProc("sp_CheckUser",Cmd1)If dbc_Class.Rs.EOF Then'失敗時的返回值Session(&quo

31、t;UserType") =""Session("UserID") =""checkUser = 0ElseWhile Not dbc_Class.Rs.EOF'建立Cookies客戶端變量以識別登錄的用戶Response.Cookies("UserName") = dbc_Class.Rs("Name")Session("UserID") = dbc_Class.Rs("ID")Session("UserType")

32、 = dbc_Class.Rs("Type")dbc_Class.Rs.MoveNextWend'成功時的返回值checkUser = 1End IfSet Cmd1 = nothingdbc_Class.CloseConn()End Function函數(shù)checkUser調(diào)用的存儲過程代碼如下:CREATE PROCEDURE sp_CheckUserID varchar(20),Password varchar(20)AS SELECT * FROM admin WHERE ID=ID and Password=PasswordGO4.3 管理員和教師頁面4.3

33、.1管理員頁面擁有管理員權(quán)限的用戶登錄后即進入管理員頁面Manage.asp,頁面上方將顯示登錄用戶的用戶名。用戶可以點擊左上方的“退出鏈接退出系統(tǒng),系統(tǒng)將轉(zhuǎn)到Logout.asp頁面,清空Cookies集合和Session變量后返回到系統(tǒng)首頁。管理員可通過此頁面進入系統(tǒng)數(shù)據(jù)管理模塊,對系統(tǒng)數(shù)據(jù)進行管理操作,還可以進入成績查詢與分析模塊,對成績數(shù)據(jù)進行相應(yīng)的查詢與分析操作,并返回查詢分析報表。系統(tǒng)管理員頁面效果如圖4-2所示。圖4-2 系統(tǒng)管理員頁4.3.2教師頁面擁有非管理員權(quán)限的教師用戶登錄后即進入管理員頁面Teacher.asp,頁面上方將顯示登錄用戶的用戶名。用戶可以點擊左上方的“退出

34、鏈接退出系統(tǒng),系統(tǒng)將轉(zhuǎn)到Logout.asp頁面,清空Cookies集合和Session變量后返回到系統(tǒng)首頁。教師用戶可通過此頁面進入成績查詢與分析模塊,對成績數(shù)據(jù)進行相應(yīng)的查詢與分析操作,并返回查詢分析報表。教師頁面效果如圖4-3所示。圖4-3 教師頁 4.4 系統(tǒng)數(shù)據(jù)管理模塊系統(tǒng)數(shù)據(jù)管理模塊只有擁有管理員權(quán)限的用戶才能進入進行操作,通過此模塊可以對包括成績錄入等一系列的系統(tǒng)數(shù)據(jù)進行管理。此模塊又分為學(xué)生管理、課程管理、成績管理和用戶管理四個小模塊。4.4.1學(xué)生管理學(xué)生管理模塊完成了對學(xué)生信息進行添加、修改、刪除操作,以到達對學(xué)生信息管理的目的。此模塊的主頁面為StudentManage.

35、asp,管理員可通過輸入需要管理的班級的班級號,查詢得到現(xiàn)有的學(xué)生信息列表,通過列表中相應(yīng)的鏈接對學(xué)生信息進行修改和刪除操作。學(xué)生管理主頁面效果如圖4-4所示。圖4-4學(xué)生管理主頁面1修改學(xué)生數(shù)據(jù)信息:管理員可通過點擊如圖4-4所示學(xué)生管理頁面的相應(yīng)學(xué)生的操作列中的筆型按鈕,即可進入學(xué)生信息修改頁面EditStudent.asp,并將待修改學(xué)生的學(xué)號ID同時傳遞到該頁面。在EditStudent.asp頁面上,顯示有數(shù)據(jù)庫中記錄的待修改學(xué)生的全部信息,修改完該學(xué)生的信息點擊“提交按鈕完成修改。提交修改后,系統(tǒng)會對提交的信息進行檢查,假設(shè)修改正程中存在沒有填寫完整的項,系統(tǒng)會提示該項信息不能為空

36、,然后返回學(xué)生管理主頁面StudentManage.asp;假設(shè)修改學(xué)生信息對數(shù)據(jù)庫操作失敗,系統(tǒng)將會提示“更新數(shù)據(jù)時失敗 ,并返回學(xué)生管理主頁面StudentManage.asp。學(xué)生信息修改頁面效果如圖4-5所示。圖4-5 學(xué)生信息修改頁面修改學(xué)生信息調(diào)用的存儲過程代碼如下:CREATE PROCEDURE sp_UpdateStudent-為要更新的變量聲明參數(shù)IDvarchar(20),Name varchar(20),Genderint,Grade varchar(20),ClassintAS-將待更新的變量更新為參數(shù)傳入的值Update StudentSet ID=ID,Name=

37、Name,Gender=Gender,Grade=Grade,Class=ClassWhere ID=IDGO2刪除學(xué)生數(shù)據(jù)信息:管理員可通過點擊如圖4-4所示學(xué)生管理頁面相應(yīng)學(xué)生的操作列中的叉型按鈕,即可完成對該行對應(yīng)學(xué)生的信息進行刪除,刪除成功后系統(tǒng)將返回學(xué)生管理主頁面StudentManage.asp。刪除學(xué)生信息調(diào)用的存儲過程代碼如下:CREATE PROCEDURE sp_DelStudentID varchar(20)AS -先刪除從表數(shù)據(jù)再刪主表數(shù)據(jù) -刪除該學(xué)生的成績數(shù)據(jù) DELETE FROM Score WHERE StudentID = ID -刪除學(xué)生根本數(shù)據(jù) DELE

38、TE FROM Student WHERE Student.ID = IDGO3添加學(xué)生數(shù)據(jù)信息:管理員可通過點擊學(xué)生管理頁面StudentManage.asp或管理員頁面Manage.asp下方的“添加學(xué)生按鈕,即可進入添加學(xué)生信息頁面AddStudent.asp。在該頁面填寫完該學(xué)生的信息點擊“提交按鈕完成對學(xué)生信息的添加。提交后,系統(tǒng)會對提交的信息進行檢查,假設(shè)存在沒有填寫完整的項,系統(tǒng)會提示該項信息不能為空,然后返回添加學(xué)生信息頁面AddStudent.asp;假設(shè)添加學(xué)生信息時對數(shù)據(jù)庫操作失敗,系統(tǒng)將會提示“錄入數(shù)據(jù)時失敗 ,并返回添加學(xué)生信息頁面AddStudent.asp。添加學(xué)

39、生信息調(diào)用的存儲過程如下:CREATE PROCEDURE sp_AddStudent-為要更新的字段聲明參數(shù)IDvarchar(20),Name varchar(20),Genderint,Gradevarchar(20),ClassintAS-添加將相應(yīng)的字段的記錄為對應(yīng)的輸入?yún)?shù)的值 Insert Into Student(ID,Name,Gender,Grade,Class)Values(ID,Name,Gender,Grade,Class)GO4.4.2課程管理課程管理模塊可以對課程信息進行添加、修改、刪除操作,以到達對課程開設(shè)進行管理的目的。此模塊的主頁面為CourseManage

40、.asp,管理員可通過頁面中的下拉菜單項選擇擇相應(yīng)的課程,點擊“課程信息按鈕后頁面會返回該課程的詳細(xì)信息,管理員可以通過列表中相應(yīng)的鏈接對課程信息進行修改和刪除操作。課程管理主頁面效果如圖4-6所示。圖4-6課程管理頁面1修改課程數(shù)據(jù)信息:管理員可通過點擊如圖4-6所示的相應(yīng)課程的操作列中的筆型按鈕,即可進入課程信息修改頁面EditCourse.asp,并將待修改課程ID同時傳遞到該頁面。轉(zhuǎn)到EditCourse.asp頁面后,頁面顯示有數(shù)據(jù)庫中記錄的待修改課程的全部信息,修改完該課程的信息點擊“提交按鈕完成修改。提交修改后,系統(tǒng)會對提交的信息進行檢查,假設(shè)修改正程中存在沒有填寫完整的項,系統(tǒng)

41、會提示該項信息不能為空,然后返回課程管理頁面CourseManage.asp;假設(shè)修改課程信息對數(shù)據(jù)庫操作失敗,系統(tǒng)將會提示“更新數(shù)據(jù)時失敗 ,并返回課程管理頁面CourseManage.asp。修改課程信息調(diào)用的存儲過程代碼如下:CREATE PROCEDURE sp_UpdateCourse-為要修改的字段聲明參數(shù)IDvarchar(20),Name varchar(20),TeacherIDvarchar(20),Remarkvarchar(50),Term intASUpdate CourseSet ID=ID,Name=Name,TeacherID=TeacherID,Remark=

42、Remark,Term=TermWhere ID=IDGO2刪除課程數(shù)據(jù)信息:管理員可通過點擊如圖4-6所示相應(yīng)課程操作列中的叉型按鈕,即可完成對該課程信息的刪除,刪除成功后系統(tǒng)將返回課程管理主頁面CourseManage.asp。 刪除課程信息調(diào)用的存儲過程代碼如下:CREATE PROCEDURE sp_DelCourseID varchar(20)AS -應(yīng)先刪除從表數(shù)據(jù)再刪主表數(shù)據(jù) -刪除該課程相關(guān)的成績數(shù)據(jù) DELETE FROM Score WHERE CourseID = ID -刪除課程根本數(shù)據(jù) DELETE FROM Course WHERE Course.ID = IDGO

43、3添加課程數(shù)據(jù)信息:管理員可通過點擊課程管理頁面CourseManage.asp或管理員頁面Manage.asp下方的“添加課程按鈕,即可進入添加課程信息頁面AddCourse.asp。在該頁面填寫完該課程的信息點擊“提交按鈕完成對課程信息的添加。提交后,系統(tǒng)會對提交的信息進行檢查,假設(shè)存在沒有填寫完整的項,系統(tǒng)會提示該項信息不能為空,然后返回添加課程信息頁面AddCourse.asp;假設(shè)添加課程信息時對數(shù)據(jù)庫操作失敗,系統(tǒng)將會提示“錄入數(shù)據(jù)時失敗 ,并返回添加課程信息頁面AddCourse.asp。添加課程信息調(diào)用的存儲過程如下:CREATE PROCEDURE sp_AddCourse

44、ID varchar(20), Name varchar(20), TeacherID varchar(20), Term intAS Insert Into Course (ID,Name,TeacherID,Term) Values(ID,Name,TeacherID,Term)GO4.4.3成績管理成績管理模塊完成了對成績信息進行添加、修改、刪除操作,以到達對成績信息進行管理的目的。此模塊的主頁面為ScoreManage.asp,管理員通過輸入需要對成績進行管理的班級的班級號,并從頁面的下來菜單中選擇相應(yīng)的學(xué)期和課程,查詢得到某個班級某學(xué)期某門課程的成績信息列表,通過列表中相應(yīng)的鏈接對成

45、績信息進行修改和刪除操作。成績管理主頁面效果如圖4-7所示。圖4-7 成績管理頁面1修改成績數(shù)據(jù)信息:管理員可通過點擊如圖4-7所示的相應(yīng)成績的操作列中的筆型按鈕,即可進入成績信息修改頁面EditScore.asp,并將待修改成績對應(yīng)的學(xué)號和課程ID同時傳遞到該頁面。瀏覽器轉(zhuǎn)到EditCourse.asp頁面后,顯示有數(shù)據(jù)庫中記錄的待修改成績相關(guān)的全部信息,修改后點擊“提交按鈕完成修改。提交修改后,系統(tǒng)會對提交的信息進行檢查,假設(shè)修改正程中存在沒有填寫完整的項,系統(tǒng)會提示該項信息不能為空,然后返回成績管理頁面ScoreManage.asp;假設(shè)修改成績信息對數(shù)據(jù)庫操作失敗,系統(tǒng)將會提示“更新數(shù)

46、據(jù)時失敗 ,并返回成績管理頁面ScoreManage.asp。修改成績數(shù)據(jù)信息調(diào)用的存儲過程代碼如下:CREATE PROCEDURE sp_UpdateScore-為要修改的字段聲明參數(shù)StudentIDvarchar(20),CourseIDvarchar(20),Score int,Type intASUpdate ScoreSet Score = Score,Type= TypeWhere StudentID=StudentID and CourseID=CourseIDGO2刪除成績數(shù)據(jù)信息:管理員可通過點擊如圖4-7所示成績管理頁面相應(yīng)成績操作列中的叉型按鈕,即可完成對該成績信息的

47、刪除,刪除成功后系統(tǒng)將返回課程成績管理主頁面ScoreManage.asp。刪除成績信息調(diào)用的存儲過程代碼如下:CREATE PROCEDURE sp_DelScoreStudentID varchar(20),CourseID varchar(20)AS-從Score表中刪除字段StudentID值為參數(shù)StudentID的值,且字段CourseID的值為參數(shù)CourseID的值的記錄 DELETE FROM Score WHERE StudentID = StudentID and CourseID=CourseIDGO3添加成績數(shù)據(jù)信息:管理員可通過點擊成績管理頁面ScoreManage

48、.asp或管理員頁面Manage.asp下方的“添加成績按鈕,即可進入添加成績信息頁面AddScore.asp。在該頁面管理員需要從下拉菜單中選擇要添加成績的學(xué)生和課程信息,而不能自己填寫 填寫該項的信息。這樣做的目的是防止為數(shù)據(jù)庫中不存在的學(xué)生或不存在的課程添加成績。填寫完成績的相關(guān)信息點擊“提交按鈕完成對成績信息的添加。提交后,系統(tǒng)會對提交的信息進行檢查,假設(shè)存在沒有填寫完整的項,系統(tǒng)會提示該項信息不能為空,然后返回添加成績信息頁面AddScore.asp;假設(shè)添加成績信息時對數(shù)據(jù)庫操作失敗,系統(tǒng)將會提示“錄入數(shù)據(jù)時失敗 ,并返回添加成績信息頁面AddScore.asp。添加成績信息頁面效

49、果如圖4-8所示。圖4-8 添加成績頁面添加成績信息調(diào)用的存儲過程如下:CREATE PROCEDURE sp_AddScoreStudentIDvarchar(20),CourseIDvarchar(20),Score int,Type intAS Insert Into Score(StudentID,CourseID,Score,Type)Values(StudentID,CourseID,Score,Type)GO4.4.4用戶管理用戶管理模塊完成了對管理員和教師信息進行添加、修改、刪除操作,以到達對登錄用戶信息進行管理的目的。此模塊的主頁面為UserManage.asp,管理員可通過

50、輸入需要管理的用戶的登錄ID號,可以查詢得到該用戶的相關(guān)信息信息列表,通過列表中相應(yīng)的鏈接可以對用戶信息進行修改和刪除操作。管理員還可通過點擊用戶管理頁面UserManage.asp或管理員頁面Manage.asp下方的“添加用戶按鈕,即可進入添加用戶信息頁面AddUser.asp。在該頁面填寫完添加用戶的信息提交后,系統(tǒng)會對提交的信息進行檢查,假設(shè)存在沒有填寫完整的項,系統(tǒng)會提示該項信息不能為空,然后返回添加用戶信息頁面AddUser.asp;假設(shè)添加用戶時對數(shù)據(jù)庫操作失敗,系統(tǒng)將會提示“錄入數(shù)據(jù)時失敗 ,并返回添加用戶信息頁面AddUser.asp。4.5 查詢分析模塊4.5.1單科報表單

51、科報表模塊包括了班級單科成績報表CourseScoreReport.asp和年級單科成績報CourseScoreGradeReport.asp表兩個頁面,完成了對選定班級或年級的某門課程成績的查詢和對查詢的統(tǒng)計。查詢的結(jié)果按成績分?jǐn)?shù)由高到底排序,并統(tǒng)計知名次。統(tǒng)計包括了有成績記錄的總?cè)藬?shù)統(tǒng)計和及格人數(shù)統(tǒng)計,并通過統(tǒng)計結(jié)果計算出該班或該年紀(jì)在這門課程的及格率。現(xiàn)根據(jù)班級單科成績報表對單科報表模塊做進一步說明。班級單科成績報表查詢時調(diào)用的存儲過程代碼如下:CREATE PROCEDURE sp_CourseScoreReport-為查詢條件的變量聲明參數(shù)Class int,CourseID var

52、char(20)AS-查詢符合條件“課程ID為輸入課程ID,班級號為輸入班級的學(xué)生ID、學(xué)生姓名、課程名、考試成績、考試類型,并將結(jié)果按考試成績降序排列Select c.StudentID,a.Name as Studentname,b.Name as CourseName,c.Score,b.id as CourseID,(case c.Typewhen 1 then '正??荚?#39; when 2 then '補考' end) as Typefrom Student a,Course b,Score c where b.id=CourseID and a.Cla

53、ss=Class and a.id=c.StudentID and b.id=c.CourseID Order by c.Score DescGO班級單科成績報頁面效果如圖4-9所示: 圖4-9 班級單科成績報表4.5.2成績統(tǒng)計成績統(tǒng)計模塊包括了班級學(xué)期成績報表CourseScoreReport.asp和年級學(xué)期成績報表CourseScoreGradeReport.asp兩個頁面,完成了對選定班級或年級的某學(xué)期各科成績的查詢和對查詢結(jié)果的匯總統(tǒng)計。查詢的結(jié)果按成績平均分?jǐn)?shù)由高到底排序,并統(tǒng)計知名次。匯總統(tǒng)計通過使用交叉表和動態(tài)SQL語句完成了對學(xué)期各科成績的匯總、計算總分、各科平均分。在本成

54、績統(tǒng)計模塊中交叉表和動態(tài)SQL語句的使用是一個難點,可以說本模塊頁面調(diào)用的存儲過程sp_ClassScoreReport和sp_GradeScoreReport是本模塊的靈魂。另外,對學(xué)生名次的統(tǒng)計是通過ASP程序來完成的?,F(xiàn)根據(jù)班級學(xué)期成績報表頁面對成績統(tǒng)計模塊做進一步說明。班級學(xué)期成績報表頁面CourseScoreReport.asp報表局部代碼:If Search = "1" Then Response.Write("你查找的是:"&Trim(Request("Classn")&"班第"&am

55、p;Trim(Request("Term")&"學(xué)期的成績") Response.Write("<br>")Response.Write("<br>")Response.Write( "<TABLE cellSpacing='0' cellPadding='0' border='1' width='588'>")Term = Cint(Trim(Request.Form("Ter

56、m")Classn = Cint(Trim(Request.Form("Classn") Call sc_Class.ClassScoreReport(Classn,Term)Response.Write("<TR bgColor='#cccc33'>") For I = 0 to sc_Class.dbc_Class.Rs.Fields.Count - 1Response.Write("<TD align='center'>"&sc_Class.dbc_Class.Rs.Fields(I).Name & "<

溫馨提示

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

評論

0/150

提交評論