畢業(yè)論文——考試成績分析系統(tǒng)的設(shè)計與實現(xiàn)
《畢業(yè)論文——考試成績分析系統(tǒng)的設(shè)計與實現(xiàn)》由會員分享,可在線閱讀,更多相關(guān)《畢業(yè)論文——考試成績分析系統(tǒng)的設(shè)計與實現(xiàn)(30頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、考試成績分析系統(tǒng)的設(shè)計與實現(xiàn)摘 要在不斷信息化的今天,網(wǎng)絡(luò)的出現(xiàn)讓人們能夠更快地獲取更多的信息。各個領(lǐng)域都引進了計算機網(wǎng)絡(luò)來為他們提高辦事效率。在學校的教學管理中,利用計算機網(wǎng)絡(luò)實現(xiàn)學生成績信息的管理、統(tǒng)計和分析勢在必行。本系統(tǒng)旨在提高學校對學生考試成績管理工作的效率,使之成為現(xiàn)代教學信息化服務體系的重要組成部分。本系統(tǒng)采用B/S模式開發(fā),以ASP作為主要的開發(fā)技術(shù), SQL Server2000作為后臺數(shù)據(jù)庫服務器,采用Dreamweaver MX2004制作頁面。本系統(tǒng)主要實現(xiàn)了課程設(shè)置、成績管理、學生信息管理以及成績的查詢、統(tǒng)計和分析等功能。其中在對成績統(tǒng)計和分析部分,通過TeeChar
2、t組件,用柱狀圖直觀地展現(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, computer network has been brought in to increase efficiency. It i
3、s 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 information services system. This examination result analysis
4、 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 the statistics results.Key words: management of examination
5、result; statistical and analysis; ASP; SQL Server1 引言 1.1 課題背景考試是教學中特別重要的環(huán)節(jié),通過考試,可以及時發(fā)現(xiàn)老師在教學中存在的問題,更重要的是還能發(fā)現(xiàn)哪些學生在學習過程中存在嚴重問題,需要老師和同學們的幫助??纪旰蟮某煽兎治鼍涂梢允刮覀兊玫竭@些信息。但是從以往的成績分析中,我們費時費力的結(jié)果只能得到很少的有用信息。幾年前,大多數(shù)學校的學生成績管理基本上都是靠手工進行,隨著近幾年各類學校辦學規(guī)模的擴大和招生人數(shù)的增加, 有關(guān)學生成績管理工作所涉及的數(shù)據(jù)量越來越大,這使學生成績管理成為一項十分繁重的工作。一些學校不得不靠增加人力、物
6、力來進行學生成績管理。但手工管理具有效率低、費時、易錯誤等缺點,面對如此繁多的數(shù)據(jù)需要進行管理、統(tǒng)計和分析,如果用人工的方法,其過程的艱辛將無發(fā)想像。教學實踐與計算機的結(jié)合,幫助我們很好的解決了這一問題。在信息技術(shù)飛速發(fā)展的今天,計算機代替了以前大多數(shù)的人力勞動,并已經(jīng)成為各個領(lǐng)域不可缺少的應用工具。針對目前學校教師管理學生成績,并對學生成績進行分析仍采用人工的方法,或簡單的利用Excel進行管理的現(xiàn)狀,為了減輕教師在管理學生成績時的負擔,提高分析學生成績的效率,及時反映學生的學習狀態(tài),和教師在教學方面的效果,開發(fā)出一個具有教師對學生成績進行管理、統(tǒng)計、分析常等用功能的能跨越各種系統(tǒng)平臺的成績
7、分析系統(tǒng)勢在必行。1.2 國內(nèi)外研究現(xiàn)狀由于利用計算機代替人力勞動對學生考試成績數(shù)據(jù)進行管理、統(tǒng)計、分析體現(xiàn)出了巨大的優(yōu)勢,在實際應用中,基于網(wǎng)絡(luò)的、跨操作平臺的考試成績管理、分析系統(tǒng)擁有很大的市場。國內(nèi)外的軟件企業(yè)開發(fā)出了各種不同功能的考試成績管理、分析系統(tǒng)。這些系統(tǒng)中的大多數(shù)是利用VB和Access數(shù)據(jù)庫進行開發(fā)的,這樣的系統(tǒng)在跨操作平臺,和數(shù)據(jù)存儲方面都有明顯的不足。1.3 本課題研究的意義現(xiàn)在我國的大中專院校的學生成績管理水平普遍不高,有的還停留在紙介質(zhì)基礎(chǔ)上,這種管理手段已不能適應時代的發(fā)展,因為它浪費了了許多的人力和物力。在當今信息時代這種傳統(tǒng)的管理方法必然被計算機網(wǎng)絡(luò)為基礎(chǔ)的信息
8、管理系統(tǒng)所代替。如果本系統(tǒng)能被學校所采用,將會改變以前靠手工對學生成績進行管理、統(tǒng)計和分析的狀況,可以大大提高教學工作的效率,樹立良好的辦學形象。2 相關(guān)技術(shù)介紹2.1 ASP技術(shù)的簡介ASP全稱為Active Server Pages的簡寫,是一套由微軟公司開發(fā)的服務器端運行的腳本平臺,使用ASP內(nèi)置組件可以快速開發(fā)動態(tài)網(wǎng)頁。每一個組件都是由一組富有經(jīng)驗的程序員根據(jù)動態(tài)網(wǎng)頁最常用的功能而開發(fā)的。在ASP3.0中,共有6個這樣的組件: Application ,ASPError ,Request ,Response ,Server ,Session .常見的Cookies就是利用Session
9、組件實現(xiàn)的。此外,還可以利用第三方組件延伸ASP的作用,如利用MailSender組件發(fā)送電子郵件。 通過ASP我們可以結(jié)合HTML網(wǎng)頁、ASP指令和ActiveX元件建立動態(tài)、交互且高效的WEB服務器應用程序。同時,ASP也支持VBScript和JScript等腳本語言,默認為VBScript。其中JScript是微軟公司的ECMAScript標準的實現(xiàn),并且有自己的擴展。本系統(tǒng)將采用VBScript腳本語言。 ASP是經(jīng)過服務器解析之后再向網(wǎng)頁瀏覽器返回數(shù)據(jù),所以有了ASP就不必擔心客戶的瀏覽器是否能運行你所編寫的代碼。因為所有的程序都將在網(wǎng)頁服務器端執(zhí)行,包括所有嵌在普通HTML中的腳本
10、程序。當程序執(zhí)行完畢后,服務器僅將執(zhí)行的結(jié)果返回給客戶瀏覽器,這樣也就減輕了客戶端瀏覽器的負擔,大大提高了交互的速度。由于代碼是需要經(jīng)過服務器執(zhí)行之后才向瀏覽器發(fā)送的,所以在客戶端看到的只能是經(jīng)過解析之后的數(shù)據(jù),而無法獲得源代碼,故編寫者不用擔心自己的源代碼會被別人剽竊。但不排除黑客利用系統(tǒng)漏洞竊取服務器端的ASP源代碼?;谶@樣的解析方式,也導致運行ASP頁面相對于普通的HTML頁面要慢一點。因為普通的HTML頁面只需要瀏覽器就能夠解析,而ASP則必須是服務器將整頁的代碼都執(zhí)行一遍之后再發(fā)送數(shù)據(jù)。 ASP提供與數(shù)據(jù)庫的交互,如Microsoft SQL Server、Access、MySQL
11、和Oracle,比較流行的是ASP和Microsoft SQL Server的組合。2.2 SQL SERVER簡介SQL Server是微軟公司所推出的一套運行在Windows平臺上的數(shù)據(jù)庫管理系統(tǒng),用于提供作為應用程序的數(shù)據(jù)來源,存放各種數(shù)據(jù),并可以讓用戶很容易地實現(xiàn)所要進行的數(shù)據(jù)存取操作,同時它也提供了一些可視化的管理工具,協(xié)助數(shù)據(jù)庫系統(tǒng)管理者更方便快捷地管理及設(shè)計數(shù)據(jù)庫內(nèi)容,以及對數(shù)據(jù)庫進行維護。SQL在客戶/服務開發(fā)中的角色,因為本考試成績分析系統(tǒng)所產(chǎn)生和處理的數(shù)據(jù)量比較大,這就讓我們首先想到了SQL server大型數(shù)據(jù)庫,SQL是一組符合工業(yè)標準的數(shù)據(jù)庫操作令集。SQL不是一門語
12、言,無法得到一個專門的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ù)查詢、數(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ù)的增加、刪
13、除和修改功能。數(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í)行它。存儲過程是一個預編譯的對象,這意味著過程是預先編譯好的,并且供不同的應用程序執(zhí)行。因此,根本不需要再花時間對過程重新進行語法分析和編譯,其執(zhí)行速度很快。開發(fā)者用Transaction-SQL編寫的程序作為存儲過程存儲在SQL Server中,并創(chuàng)建應用程序
14、來調(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)用存儲過程時,在存儲過程名字前一定要有EXEC保留字。存儲過程具有下面一些優(yōu)點:(1)存儲過程允許標準組件式編程。(2)存儲過程能夠?qū)崿F(xiàn)較快的執(zhí)行速度。(3)存儲過程能夠減少網(wǎng)絡(luò)流量。(4)存儲過程可被作為一種安全機制來充分利用。2.3
15、Dreamweaver簡介Dreamweaver是由美國著名的軟件開發(fā)商Macromedia公司推出的一個“所見即所得”的可視化網(wǎng)站開發(fā)工具。無論在國外還是在國內(nèi),它都是倍受專業(yè)Web開發(fā)人士推崇的軟件。在國內(nèi),它被大家稱為網(wǎng)頁“織夢者”,眾多的專業(yè)網(wǎng)站和個人主頁都把它列為建站的首選工具。在最新的MX版本中,對Dreamweaver的代碼控制和后臺功能作了進一步增強,整合了UltraDev,ColdFusion Studio,Homesite等優(yōu)秀軟件,使得新版本的Dreamweaver比起原有的版本,功能得到了一個飛躍的發(fā)展。3 系統(tǒng)設(shè)計3.1 系統(tǒng)需求分析使用計算機網(wǎng)絡(luò)對學生考試成績信息進
16、行管理,具有手工管理所無法比擬的優(yōu)點。檢索迅速、統(tǒng)計種類多、直觀的圖形分布顯示、管理方便、存儲量大、安全性好、成本低、跨平臺性等,這些優(yōu)點極大地提高了學校對學生考試成績的管理、統(tǒng)計、分析的效率。本系統(tǒng)正是為了能夠為各類型學校提供一套操作簡單、應用廣泛的考試成績分析系統(tǒng),以提高學校對學生考試成績管理、統(tǒng)計、分析的效率,實現(xiàn)學??荚嚦煽児芾硇畔⒒O(shè)計的。本系統(tǒng)應具備對學生信息、課程信息、教師信息、成績數(shù)據(jù)信息管理功能,能夠?qū)σ陨闲畔⑦M行錄入、刪除、修改、查詢、統(tǒng)計。對成績數(shù)據(jù),應實現(xiàn)對各年級、各班的總分、平均分的計算,并進行排序;按年級或班級對單科成績的及格人數(shù)、優(yōu)秀人數(shù)、及格率、優(yōu)秀率、各分數(shù)
17、段人數(shù)分布等進行統(tǒng)計分析,對各分數(shù)段人數(shù)分布還應通過圖形的方式直觀地展現(xiàn)出來;系統(tǒng)通過設(shè)置不同的登錄用戶權(quán)限來對系統(tǒng)進行訪問和管理。3.2 系統(tǒng)具備的功能系統(tǒng)可按權(quán)限分為公共模塊,管理員模塊,教師模塊三個模塊。公共模塊:可通過輸入學號,學期查詢相應的成績信息。教師模塊:此模塊需要登錄用戶擁有教師權(quán)限,用戶登錄后可以通過選擇查詢條件查詢相關(guān)的成績信息、成績統(tǒng)計報表、成績分布柱狀圖。管理員模塊:此模塊需要登錄用戶擁有管理員權(quán)限,用戶登錄后除了可以通過選擇查詢條件查詢相關(guān)的成績信息、成績統(tǒng)計報表、成績分布柱狀圖外,還可以對系統(tǒng)后臺數(shù)據(jù)進行管理。此模塊可以對學生數(shù)據(jù)、課程數(shù)據(jù)、成績數(shù)據(jù)、用戶數(shù)據(jù)進行管
18、理,實現(xiàn)對學生、課程、成績、用戶的添加、刪除、修改。3.3 系統(tǒng)功能模塊圖課程管理模塊成績管理模塊用戶管理模塊班級單科成績報表年級單科成績報表表班級單科成績報表年級單科成績報表表班級學期成績匯總年級學期成績匯總表各班單科成績分析年級各科成績分析表學生管理模塊考試成績分析系統(tǒng)管 理 員 模 塊教 師 模 塊學生查詢圖3-1 系統(tǒng)功能模塊圖3.4 數(shù)據(jù)庫設(shè)計設(shè)計數(shù)據(jù)庫系統(tǒng)時應首先了解用戶各個方面的需求,包括現(xiàn)有的以及將來可能增加的需求,用戶的需求具體體現(xiàn)在各種信息的提供、保存、更新和查詢,這就要求數(shù)據(jù)庫結(jié)構(gòu)能充分滿足各種信息的輸入和輸出。收集基本數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)以及數(shù)據(jù)處理的流程,組成一份詳盡的數(shù)據(jù)
19、字典,為后面的具體設(shè)計打下基礎(chǔ)。針對本考試成績分析系統(tǒng)的需求,通過對考試成績的管理、統(tǒng)計、分析過程分析,需要使用管理員和教師信息表保存系統(tǒng)管理員和教師的基本信息,使用學生信息表保存學生的個人信息,使用課程信息表保存所開設(shè)的課程的信息,使用成績信息表保存考試成績數(shù)據(jù)。3.4.1數(shù)據(jù)庫的表設(shè)計首先在SQL Server中創(chuàng)建名為score的數(shù)據(jù)庫,根據(jù)對系統(tǒng)的分析可以得出本系統(tǒng)需要的表如下:管理員和教師信息表(admin):用來存放管理員或教師ID、姓名、登錄密碼和用戶類型(系統(tǒng)管理員或普通教師)信息。Type:此字段用來標示用戶為普通教師或系統(tǒng)管理員;字段值為“1” :用戶為系統(tǒng)管理員,擁有管理
20、員權(quán)限,可訪問查詢分析模塊和數(shù)據(jù)管理模塊,可對系統(tǒng)數(shù)據(jù)進行添加、修改、刪除操作;字段值為“2” :用戶為普通教師,擁有非管理員教師權(quán)限,只能訪問查詢分析模塊,不能對系統(tǒng)數(shù)據(jù)進行添加、修改、刪除操作。表3-1管理員和教師信息表(admin)字段名字段數(shù)據(jù)類型字段長度允許空簡要說明IDVarchar20否登錄ID、主鍵NameVarchar20是教師或管理員姓名PasswordVarchar20是登錄密碼TypeInt4是用戶類型、權(quán)限學生信息表(student):用來存放學生的學號、姓名、性別、所在年級和所在班級信息。Gender:此字段用來標示學生的性別:字段值為“0” ,性別為:女;字段值為
21、“1” ,性別為:男。表3-2學生信息表(student)字段名字段數(shù)據(jù)類型字段長度允許空簡要說明IDVarchar20否學生學號、主鍵NameVarchar20是學生姓名GenderBit1是學生性別ClassInt4否學生所在班級GradeVarchar20否學生所在年級課程信息表(course):用來存放課程ID、課程名、授課教師ID、課程描述和課程所在的學期信息。Term:此字段用來標示課程所在的學期,字段值從一年級上半期為“1”開始編號,按學期增加的順序,字段值依次加1。如:一年級下半期為“2” 。表3-3課程信息表(course)字段名字段數(shù)據(jù)類型字段長度允許空簡要說明IDVarc
22、har20否課程ID號NameVarchar20是課程名字TeacherIDVarchar20是授課教師ID號RemarkVarchar50是課程描述TermInt4否課程所在的學期成績信息表(score):用來存放成績對應的學生學號、課程ID、分數(shù)和考試類型信息,此表的由兩個外鍵“StudentID”和“CourseID”組成復合主鍵。Type:此字段用來標示考試的類型;字段值為“1” ,表示正常考試;字段值為“2” ,表示補考。表3-4成績信息表(score)字段名字段數(shù)據(jù)類型字段長度允許空簡要說明StudentIDVarchar20否考生學號、復合主鍵、外鍵CourseIDVarchar
23、20否課程ID號、復合主鍵、外鍵ScoreInt4是成績分數(shù)TypeInt4是考試類型3.4.2 表間關(guān)系數(shù)據(jù)庫中所創(chuàng)建的表有如下的約束關(guān)系:課程信息表course中的“TeacherID”字段受教師信息表admin中的“ID”字段約束,成績信息表score中的“SrudentID”字段受學生信息表student中的“ID”字段約束,“CourseID”字段受課程信息表course中的“ID”字段約束。如圖3-2所示。CoursePKIDNameTeacherIDTermRemarkScorePKStudentIDPKCourseIDScoreTypeAdminPKIDNamePassword
24、TypeStudentPKIDNameGenderGradeClass1nn1n1圖3-2各表間的約束關(guān)系4 系統(tǒng)設(shè)計與實現(xiàn)4.1 系統(tǒng)首頁系統(tǒng)首頁SearchScore.asp為所有瀏覽者提供了學生個人成績查詢的功能,輸入學生的學號,并選擇學期項,就可以查詢到該學生相應學期的所有已考試課程的成績,不及格的課程考試成績將會用紅色字體顯示。系統(tǒng)還會自動統(tǒng)計查詢到的課程數(shù)目和不及格的課程數(shù)目。此頁面還為系統(tǒng)管理員和教師用戶提供了登錄頁面的鏈接,用戶點擊此鏈接可進入系統(tǒng)登錄頁面進行用戶登錄。系統(tǒng)首頁頁面效果如圖4-1所示。圖4-1 系統(tǒng)首頁首頁中查詢學生個人成績的存儲過程代碼如下:CREATE PR
25、OCEDURE sp_SearchScoreStudentID varchar(20),Term intAS Select d.name,a.StudentID,a.Score,(case a.Typewhen 1 then 正??荚?when 2 then 補考 end) as Type,b.Name as CourseName,c.Name as TeacherNamefrom Score a,Course b,admin c,student dwhere a.StudentID=StudentID and a.CourseID=b.ID and b.TeacherID = c.ID an
26、d b.Term=Term and d.ID=StudentIDGO4.2 系統(tǒng)登錄模塊系統(tǒng)管理員和教師用戶可通過系統(tǒng)登錄頁面Login.asp進行登錄。填寫完登錄信息,提交表單后系統(tǒng)通過LoginCheck.asp對用戶填寫的登錄信息和數(shù)據(jù)庫中記錄的信息進行對比,若用戶填寫登錄信息有空項,系統(tǒng)會提示“用戶和密碼不能為空” ,然后系統(tǒng)返回登錄頁面Login.asp;若用戶登錄信息填寫錯誤,頁面將提示“用戶名或密碼輸入有誤” ,然后系統(tǒng)返回登錄頁面Login.asp;若用戶登錄信息填寫正確,系統(tǒng)將會對用戶的權(quán)限類型“Type”進行檢查,若“Type=1”表示用戶為系統(tǒng)管理員,系統(tǒng)會將用戶的登錄信
27、息記錄在Cookies集合和Session變量中,然后系統(tǒng)轉(zhuǎn)到管理員頁面Manage.asp;若“Type=2”表示用戶為教師用戶,系統(tǒng)會將用戶的登錄信息記錄在Cookies集合和Session變量中后轉(zhuǎn)到教師頁面Teacher.asp。LoginCheck.asp中驗證用戶信息的函數(shù)checkUser代碼如下:功能:驗證用戶信息是否正確參數(shù):username用戶名, password密碼返回值:正確則返回1,不正確返回0 設(shè)置Cookies用戶ID(UserID)和登錄狀態(tài)(Login)Function checkUser(userid,password)Dim dbc_ClassSet d
28、bc_Class = New DBConn 建立存儲過程的輸入?yún)?shù)Set Cmd1 = Server.CreateObject(ADODB.Command)Set Param = Cmd1.CreateParameter(ID,adVarChar,adParamInput,20,userid)Cmd1.Parameters.Append ParamSet Param=Cmd1.CreateParameter(PassWord,adVarChar,adParamInput,20,password)Cmd1.Parameters.Append Param運行名為sp_CheckUser的存儲過程C
29、all dbc_Class.CreateCommandProc(sp_CheckUser,Cmd1)If dbc_Class.Rs.EOF Then失敗時的返回值Session(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) = dbc_Class.Rs(Type
30、)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.1管理員頁面擁有管理員權(quán)限的用戶登錄后即進入管理員頁面Manage.as
31、p,頁面上方將顯示登錄用戶的用戶名。用戶可以點擊左上方的“退出”鏈接退出系統(tǒng),系統(tǒng)將轉(zhuǎn)到Logout.asp頁面,清空Cookies集合和Session變量后返回到系統(tǒng)首頁。管理員可通過此頁面進入系統(tǒng)數(shù)據(jù)管理模塊,對系統(tǒng)數(shù)據(jù)進行管理操作,還可以進入成績查詢與分析模塊,對成績數(shù)據(jù)進行相應的查詢與分析操作,并返回查詢分析報表。系統(tǒng)管理員頁面效果如圖4-2所示。圖4-2 系統(tǒng)管理員頁4.3.2教師頁面擁有非管理員權(quán)限的教師用戶登錄后即進入管理員頁面Teacher.asp,頁面上方將顯示登錄用戶的用戶名。用戶可以點擊左上方的“退出”鏈接退出系統(tǒng),系統(tǒng)將轉(zhuǎn)到Logout.asp頁面,清空Cookies集
32、合和Session變量后返回到系統(tǒng)首頁。教師用戶可通過此頁面進入成績查詢與分析模塊,對成績數(shù)據(jù)進行相應的查詢與分析操作,并返回查詢分析報表。教師頁面效果如圖4-3所示。圖4-3 教師頁 4.4 系統(tǒng)數(shù)據(jù)管理模塊系統(tǒng)數(shù)據(jù)管理模塊只有擁有管理員權(quán)限的用戶才能進入進行操作,通過此模塊可以對包括成績錄入等一系列的系統(tǒng)數(shù)據(jù)進行管理。此模塊又分為學生管理、課程管理、成績管理和用戶管理四個小模塊。4.4.1學生管理學生管理模塊完成了對學生信息進行添加、修改、刪除操作,以達到對學生信息管理的目的。此模塊的主頁面為StudentManage.asp,管理員可通過輸入需要管理的班級的班級號,查詢得到現(xiàn)有的學生信息
33、列表,通過列表中相應的鏈接對學生信息進行修改和刪除操作。學生管理主頁面效果如圖4-4所示。圖4-4學生管理主頁面(1)修改學生數(shù)據(jù)信息:管理員可通過點擊如圖4-4所示學生管理頁面的相應學生的操作列中的筆型按鈕,即可進入學生信息修改頁面EditStudent.asp,并將待修改學生的學號ID同時傳遞到該頁面。在EditStudent.asp頁面上,顯示有數(shù)據(jù)庫中記錄的待修改學生的全部信息,修改完該學生的信息點擊“提交”按鈕完成修改。提交修改后,系統(tǒng)會對提交的信息進行檢查,若修改過程中存在沒有填寫完整的項,系統(tǒng)會提示該項信息不能為空,然后返回學生管理主頁面StudentManage.asp;若修改
34、學生信息對數(shù)據(jù)庫操作失敗,系統(tǒng)將會提示“更新數(shù)據(jù)時失敗” ,并返回學生管理主頁面StudentManage.asp。學生信息修改頁面效果如圖4-5所示。圖4-5 學生信息修改頁面修改學生信息調(diào)用的存儲過程代碼如下:CREATE PROCEDURE sp_UpdateStudent-為要更新的變量聲明參數(shù)IDvarchar(20),Name varchar(20),Genderint,Grade varchar(20),ClassintAS-將待更新的變量更新為參數(shù)傳入的值Update StudentSet ID=ID,Name=Name,Gender=Gender,Grade=Grade,Cl
35、ass=ClassWhere ID=IDGO(2)刪除學生數(shù)據(jù)信息:管理員可通過點擊如圖4-4所示學生管理頁面相應學生的操作列中的叉型按鈕,即可完成對該行對應學生的信息進行刪除,刪除成功后系統(tǒng)將返回學生管理主頁面StudentManage.asp。刪除學生信息調(diào)用的存儲過程代碼如下:CREATE PROCEDURE sp_DelStudentID varchar(20)AS -先刪除從表數(shù)據(jù)再刪主表數(shù)據(jù) -刪除該學生的成績數(shù)據(jù) DELETE FROM Score WHERE StudentID = ID -刪除學生基本數(shù)據(jù) DELETE FROM Student WHERE Student.I
36、D = IDGO(3)添加學生數(shù)據(jù)信息:管理員可通過點擊學生管理頁面StudentManage.asp或管理員頁面Manage.asp下方的“添加學生”按鈕,即可進入添加學生信息頁面AddStudent.asp。在該頁面填寫完該學生的信息點擊“提交”按鈕完成對學生信息的添加。提交后,系統(tǒng)會對提交的信息進行檢查,若存在沒有填寫完整的項,系統(tǒng)會提示該項信息不能為空,然后返回添加學生信息頁面AddStudent.asp;若添加學生信息時對數(shù)據(jù)庫操作失敗,系統(tǒng)將會提示“錄入數(shù)據(jù)時失敗” ,并返回添加學生信息頁面AddStudent.asp。添加學生信息調(diào)用的存儲過程如下:CREATE PROCEDUR
37、E sp_AddStudent-為要更新的字段聲明參數(shù)IDvarchar(20),Name varchar(20),Genderint,Gradevarchar(20),ClassintAS-添加將相應的字段的記錄為對應的輸入?yún)?shù)的值 Insert Into Student(ID,Name,Gender,Grade,Class)Values(ID,Name,Gender,Grade,Class)GO4.4.2課程管理課程管理模塊可以對課程信息進行添加、修改、刪除操作,以達到對課程開設(shè)進行管理的目的。此模塊的主頁面為CourseManage.asp,管理員可通過頁面中的下拉菜單選擇相應的課程,點
38、擊“課程信息”按鈕后頁面會返回該課程的詳細信息,管理員可以通過列表中相應的鏈接對課程信息進行修改和刪除操作。課程管理主頁面效果如圖4-6所示。圖4-6課程管理頁面(1)修改課程數(shù)據(jù)信息:管理員可通過點擊如圖4-6所示的相應課程的操作列中的筆型按鈕,即可進入課程信息修改頁面EditCourse.asp,并將待修改課程ID同時傳遞到該頁面。轉(zhuǎn)到EditCourse.asp頁面后,頁面顯示有數(shù)據(jù)庫中記錄的待修改課程的全部信息,修改完該課程的信息點擊“提交”按鈕完成修改。提交修改后,系統(tǒng)會對提交的信息進行檢查,若修改過程中存在沒有填寫完整的項,系統(tǒng)會提示該項信息不能為空,然后返回課程管理頁面Cours
39、eManage.asp;若修改課程信息對數(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=Remark,Term=TermWhere ID=ID
40、GO(2)刪除課程數(shù)據(jù)信息:管理員可通過點擊如圖4-6所示相應課程操作列中的叉型按鈕,即可完成對該課程信息的刪除,刪除成功后系統(tǒng)將返回課程管理主頁面CourseManage.asp。 刪除課程信息調(diào)用的存儲過程代碼如下:CREATE PROCEDURE sp_DelCourseID varchar(20)AS -應先刪除從表數(shù)據(jù)再刪主表數(shù)據(jù) -刪除該課程相關(guān)的成績數(shù)據(jù) DELETE FROM Score WHERE CourseID = ID -刪除課程基本數(shù)據(jù) DELETE FROM Course WHERE Course.ID = IDGO(3)添加課程數(shù)據(jù)信息:管理員可通過點擊課程管理頁
41、面CourseManage.asp或管理員頁面Manage.asp下方的“添加課程”按鈕,即可進入添加課程信息頁面AddCourse.asp。在該頁面填寫完該課程的信息點擊“提交”按鈕完成對課程信息的添加。提交后,系統(tǒng)會對提交的信息進行檢查,若存在沒有填寫完整的項,系統(tǒng)會提示該項信息不能為空,然后返回添加課程信息頁面AddCourse.asp;若添加課程信息時對數(shù)據(jù)庫操作失敗,系統(tǒng)將會提示“錄入數(shù)據(jù)時失敗” ,并返回添加課程信息頁面AddCourse.asp。添加課程信息調(diào)用的存儲過程如下:CREATE PROCEDURE sp_AddCourse ID varchar(20), Name v
42、archar(20), TeacherID varchar(20), Term intAS Insert Into Course (ID,Name,TeacherID,Term) Values(ID,Name,TeacherID,Term)GO4.4.3成績管理成績管理模塊完成了對成績信息進行添加、修改、刪除操作,以達到對成績信息進行管理的目的。此模塊的主頁面為ScoreManage.asp,管理員通過輸入需要對成績進行管理的班級的班級號,并從頁面的下來菜單中選擇相應的學期和課程,查詢得到某個班級某學期某門課程的成績信息列表,通過列表中相應的鏈接對成績信息進行修改和刪除操作。成績管理主頁面效果
43、如圖4-7所示。圖4-7 成績管理頁面(1)修改成績數(shù)據(jù)信息:管理員可通過點擊如圖4-7所示的相應成績的操作列中的筆型按鈕,即可進入成績信息修改頁面EditScore.asp,并將待修改成績對應的學號和課程ID同時傳遞到該頁面。瀏覽器轉(zhuǎn)到EditCourse.asp頁面后,顯示有數(shù)據(jù)庫中記錄的待修改成績相關(guān)的全部信息,修改后點擊“提交”按鈕完成修改。提交修改后,系統(tǒng)會對提交的信息進行檢查,若修改過程中存在沒有填寫完整的項,系統(tǒng)會提示該項信息不能為空,然后返回成績管理頁面ScoreManage.asp;若修改成績信息對數(shù)據(jù)庫操作失敗,系統(tǒng)將會提示“更新數(shù)據(jù)時失敗” ,并返回成績管理頁面Score
44、Manage.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=CourseIDGO(2)刪除成績數(shù)據(jù)信息:管理員可通過點擊如圖4-7所示成績管理頁面相應成績操作列中的叉型按鈕,即可完成對該成績信息的刪除,刪除成功后系統(tǒng)將返回課程成績管
45、理主頁面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=CourseIDGO(3)添加成績數(shù)據(jù)信息:管理員可通過點擊成績管理頁面ScoreManage.asp或管理員頁面Manage
46、.asp下方的“添加成績”按鈕,即可進入添加成績信息頁面AddScore.asp。在該頁面管理員需要從下拉菜單中選擇要添加成績的學生和課程信息,而不能自己填寫 填寫該項的信息。這樣做的目的是避免為數(shù)據(jù)庫中不存在的學生或不存在的課程添加成績。填寫完成績的相關(guān)信息點擊“提交”按鈕完成對成績信息的添加。提交后,系統(tǒng)會對提交的信息進行檢查,若存在沒有填寫完整的項,系統(tǒng)會提示該項信息不能為空,然后返回添加成績信息頁面AddScore.asp;若添加成績信息時對數(shù)據(jù)庫操作失敗,系統(tǒng)將會提示“錄入數(shù)據(jù)時失敗” ,并返回添加成績信息頁面AddScore.asp。添加成績信息頁面效果如圖4-8所示。圖4-8 添
47、加成績頁面添加成績信息調(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,管理員可通過輸入需要管理的用戶的登錄ID號
48、,可以查詢得到該用戶的相關(guān)信息信息列表,通過列表中相應的鏈接可以對用戶信息進行修改和刪除操作。管理員還可通過點擊用戶管理頁面UserManage.asp或管理員頁面Manage.asp下方的“添加用戶”按鈕,即可進入添加用戶信息頁面AddUser.asp。在該頁面填寫完添加用戶的信息提交后,系統(tǒng)會對提交的信息進行檢查,若存在沒有填寫完整的項,系統(tǒng)會提示該項信息不能為空,然后返回添加用戶信息頁面AddUser.asp;若添加用戶時對數(shù)據(jù)庫操作失敗,系統(tǒng)將會提示“錄入數(shù)據(jù)時失敗” ,并返回添加用戶信息頁面AddUser.asp。4.5 查詢分析模塊4.5.1單科報表單科報表模塊包括了班級單科成績報
49、表CourseScoreReport.asp和年級單科成績報CourseScoreGradeReport.asp表兩個頁面,完成了對選定班級或年級的某門課程成績的查詢和對查詢的統(tǒng)計。查詢的結(jié)果按成績分數(shù)由高到底排序,并統(tǒng)計出名次。統(tǒng)計包括了有成績記錄的總?cè)藬?shù)統(tǒng)計和及格人數(shù)統(tǒng)計,并通過統(tǒng)計結(jié)果計算出該班或該年紀在這門課程的及格率?,F(xiàn)根據(jù)班級單科成績報表對單科報表模塊做進一步說明。班級單科成績報表查詢時調(diào)用的存儲過程代碼如下:CREATE PROCEDURE sp_CourseScoreReport-為查詢條件的變量聲明參數(shù)Class int,CourseID varchar(20)AS-查詢符合
50、條件“課程ID為輸入課程ID,班級號為輸入班級”的學生ID、學生姓名、課程名、考試成績、考試類型,并將結(jié)果按考試成績降序排列Select c.StudentID,a.Name as Studentname,b.Name as CourseName,c.Score,b.id as CourseID,(case c.Typewhen 1 then 正??荚?when 2 then 補考 end) as Typefrom Student a,Course b,Score c where b.id=CourseID and a.Class=Class and a.id=c.StudentID and
51、b.id=c.CourseID Order by c.Score DescGO班級單科成績報頁面效果如圖4-9所示: 圖4-9 班級單科成績報表4.5.2成績統(tǒng)計成績統(tǒng)計模塊包括了班級學期成績報表CourseScoreReport.asp和年級學期成績報表CourseScoreGradeReport.asp兩個頁面,完成了對選定班級或年級的某學期各科成績的查詢和對查詢結(jié)果的匯總統(tǒng)計。查詢的結(jié)果按成績平均分數(shù)由高到底排序,并統(tǒng)計出名次。匯總統(tǒng)計通過使用交叉表和動態(tài)SQL語句完成了對學期各科成績的匯總、計算總分、各科平均分。在本成績統(tǒng)計模塊中交叉表和動態(tài)SQL語句的使用是一個難點,可以說本模塊頁面
52、調(diào)用的存儲過程sp_ClassScoreReport和sp_GradeScoreReport是本模塊的靈魂。另外,對學生名次的統(tǒng)計是通過ASP程序來完成的。現(xiàn)根據(jù)班級學期成績報表頁面對成績統(tǒng)計模塊做進一步說明。班級學期成績報表頁面CourseScoreReport.asp報表部分代碼:If Search = 1 Then Response.Write(你查找的是:&Trim(Request(Classn)&班第&Trim(Request(Term)&學期的成績) Response.Write()Response.Write()Response.Write( )Term = Cint(Trim(
53、Request.Form(Term)Classn = Cint(Trim(Request.Form(Classn) Call sc_Class.ClassScoreReport(Classn,Term)Response.Write() For I = 0 to sc_Class.dbc_Class.Rs.Fields.Count - 1Response.Write(&sc_Class.dbc_Class.Rs.Fields(I).Name & ) Next Response.Write(&班名次&)Response.Write()If not sc_Class.dbc_Class.Rs.Eof
54、 Then Do While Not sc_Class.dbc_Class.Rs.EofOrder = Order + 1 Data= For I = 0 To (sc_Class.dbc_Class.Rs.Fields.Count - 1) Data= Data & & sc_Class.dbc_Class.Rs.Fields(I).Value & Next Data =Data &Order& Response.Write(Data & ) sc_Class.dbc_Class.Rs.MoveNext LoopElseResponse.Write(沒有查找到匹配的數(shù)據(jù)!) End Ifsc
55、_Class.dbc_Class.CloseConn() Response.Write( )End If班級學期成績報表頁面CourseScoreReport.asp調(diào)用的存儲過程代碼如下:CREATE PROCEDURE sp_ClassScoreReport-為查詢條件的變量聲明參數(shù)Class int, Term int AS-聲明局部變量,用來存放動態(tài)SQL語句declare sql nvarchar(4000) select sql= select sql=sql+,+Name+=sum(case CourseID when +CourseID+ then Score else 0 e
56、nd)from(select distinct b.CourseID,c.Name from Score as b inner join Course as c on c.ID=b.CourseID where c.term=Term) as a order by CourseID -執(zhí)行包含動態(tài)SQL語句的查詢語句,并將結(jié)果集存放在臨時表“#linshi”里面 exec(select StudentID 學號+sql+,總成績=sum(Score) ,平均分=Convert(dec(5,1),avg(Score) into #linshi from Score as a group by S
57、tudentID-從臨時表和Student表中查詢數(shù)據(jù),并將結(jié)果集按每個學生的平均成績降序排列 select b.Name as 姓名,a.* from #linshi as a inner join Student as b on a.學號=b.ID where b.Class=+Class+ order by a.平均分 DESC)GO班級學期成績報表頁面效果如圖4-10所示:圖4-10班級學期成績報表4.5.3成績分析成績分析模塊包括了班級各科成績分析ClassCourseAnalysis.asp和年級各科成績分析GradeCourseAnalysis.asp兩個頁面,其任務是對選定班級
58、或年級的某學期各科成績的進行查詢,并對查詢結(jié)果進行統(tǒng)計分析。統(tǒng)計分析結(jié)果的報表顯示了各科個分數(shù)段的人數(shù)、各科有成績記錄的總?cè)藬?shù)、各科優(yōu)秀人數(shù)、及格人數(shù),并計算出了各科的優(yōu)生率和及格率。為了讓統(tǒng)計結(jié)果能更直觀的展現(xiàn)給用戶,本系統(tǒng)通過擴展TeeChart組件完成了對各科各分數(shù)段人數(shù)統(tǒng)計結(jié)果以柱狀圖的形式展現(xiàn)。現(xiàn)根據(jù)年級各科成績分析頁面對成績分析模塊做進一步說明。年級各科成績分析頁面效果如圖4-11所示:圖4-11年級各科成績分析頁面利用TeeChart組件生成各分數(shù)段人數(shù)統(tǒng)計柱狀圖的主要代碼:Set TChart1 = CreateObject( TeeChart.TChart ) 首先創(chuàng)建一個T
59、eeChart對象 TChart1.Height = 300 設(shè)置生成的圖片的高度 TChart1.Width = 500 設(shè)置生成的圖片的寬度 TChart1.Header.Text(0)=年級各分數(shù)段人數(shù) 設(shè)置生成的圖片中的標題 TChart1.AddSeries(1) 現(xiàn)實圖形的方式,取值范圍139 TChart1.Aspect.View3D=0 圖形是否為3D,0為否 TChart1.Series(0).Clear 調(diào)用相應的存儲過程來獲取對應分數(shù)段的人數(shù),并靜態(tài)向圖表中添加顯示數(shù)據(jù),參數(shù)依次為數(shù)值大小,名稱,顏色 Call sc_Class.getNOInGrade90_100(CourseID,Grade) TChart1.Series(0).Add sc_Class.dbc_Class.Rs(RenShu), 90-100 ,RGB(35,70,128) Cal
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024《增值稅法》全文學習解讀(規(guī)范增值稅的征收和繳納保護納稅人的合法權(quán)益)
- 2024《文物保護法》全文解讀學習(加強對文物的保護促進科學研究工作)
- 銷售技巧培訓課件:接近客戶的套路總結(jié)
- 20種成交的銷售話術(shù)和技巧
- 銷售技巧:接近客戶的8種套路
- 銷售套路總結(jié)
- 房產(chǎn)銷售中的常見問題及解決方法
- 銷售技巧:值得默念的成交話術(shù)
- 銷售資料:讓人舒服的35種說話方式
- 汽車銷售績效管理規(guī)范
- 銷售技巧培訓課件:絕對成交的銷售話術(shù)
- 頂尖銷售技巧總結(jié)
- 銷售技巧:電話營銷十大定律
- 銷售逼單最好的二十三種技巧
- 銷售最常遇到的10大麻煩