asp毕业设计——基于asp+sqlserver的考试成绩分析系统设计与实现(毕业论文+程序源码)——考试成绩分析系统

基于asp+sqlserver的考试成绩分析系统设计与实现(毕业论文+程序源码)

大家好,今天给大家介绍基于asp+sqlserver的考试成绩分析系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。需要下载开题报告PPT模板及论文答辩PPT模板等的小伙伴,可以进入我的博客主页查看左侧最下面栏目中的自助下载方法哦

文章目录:

1、项目简介

  1. 在不断信息化的今天,网络的出现让人们能够更快地获取更多的信息。各个领域都引进了计算机网络来为他们提高办事效率。在学校的教学管理中,利用计算机网络实现学生成绩信息的管理、统计和分析势在必行。
  2. 本系统旨在提高学校对学生考试成绩管理工作的效率,使之成为现代教学信息化服务体系的重要组成部分。本系统采用B/S模式开发,以ASP作为主要的开发技术, SQL Server2000作为后台数据库服务器,采用Dreamweaver MX2004制作页面。本系统主要实现了课程设置、成绩管理、学生信息管理以及成绩的查询、统计和分析等功能。其中在对成绩统计和分析部分,通过TeeChart组件,用柱状图直观地展现了统计分析的结果。


2、资源详情

项目难度:中等难度
适用场景:相关题目的毕业设计
配套论文字数:12327个字33页
包含内容:全套源码+配整论文
开题报告、论文答辩、课题报告等ppt模板推荐下载方式:
在这里插入图片描述


3、关键词

成绩管理;统计分析;ASP;SQL Server

4、毕设简介

提示:以下为毕业论文的简略介绍,项目完整源码及完整毕业论文下载地址见文末。

引言
1.1 课题背景
考试是教学中特别重要的环节,通过考试,可以及时发现老师在教学中存在的问题,更重要的是还能发现哪些学生在学习过程中存在严重问题,需要老师和同学们的帮助。考完后的成绩分析就可以使我们得到这些信息。但是从以往的成绩分析中,我们费时费力的结果只能得到很少的有用信息。几年前,大多数学校的学生成绩管理基本上都是靠手工进行,随着近几年各类学校办学规模的扩大和招生人数的增加, 有关学生成绩管理工作所涉及的数据量越来越大,这使学生成绩管理成为一项十分繁重的工作。一些学校不得不靠增加人力、物力来进行学生成绩管理。但手工管理具有效率低、费时、易错误等缺点,面对如此繁多的数据需要进行管理、统计和分析,如果用人工的方法,其过程的艰辛将无发想像。

1.2 国内外研究现状
由于利用计算机代替人力劳动对学生考试成绩数据进行管理、统计、分析体现出了巨大的优势,在实际应用中,基于网络的、跨操作平台的考试成绩管理、分析系统拥有很大的市场。国内外的软件企业开发出了各种不同功能的考试成绩管理、分析系统。这些系统中的大多数是利用VB和Access数据库进行开发的,这样的系统在跨操作平台,和数据存储方面都有明显的不足。

1.3 本课题研究的意义
现在我国的大中专院校的学生成绩管理水平普遍不高,有的还停留在纸介质基础上,这种管理手段已不能适应时代的发展,因为它浪费了了许多的人力和物力。在当今信息时代这种传统的管理方法必然被计算机网络为基础的信息管理系统所代替。如果本系统能被学校所采用,将会改变以前靠手工对学生成绩进行管理、统计和分析的状况,可以大大提高教学工作的效率,树立良好的办学形象。

2 相关技术介绍
2.1 ASP技术的简介
ASP全称为Active Server Pages的简写,是一套由微软公司开发的服务器端运行的脚本平台,使用ASP内置组件可以快速开发动态网页。每一个组件都是由一组富有经验的程序员根据动态网页最常用的功能而开发的。在ASP3.0中,共有6个这样的组件: Application ,ASPError ,Request ,Response ,Server ,Session .常见的Cookies就是利用Session组件实现的。此外,还可以利用第三方组件延伸ASP的作用,如利用MailSender组件发送电子邮件。
省略

2.2 SQL SERVER简介
SQL Server是微软公司所推出的一套运行在Windows平台上的数据库管理系统,用于提供作为应用程序的数据来源,存放各种数据,并可以让用户很容易地实现所要进行的数据存取操作,同时它也提供了一些可视化的管理工具,协助数据库系统管理者更方便快捷地管理及设计数据库内容,以及对数据库进行维护。SQL在客户/服务开发中的角色,因为本考试成绩分析系统所产生和处理的数据量比较大,这就让我们首先想到了SQL server大型数据库,SQL是一组符合工业标准的数据库操作令集。SQL不是一门语言,无法得到一个专门的SQL软件,它只是服务器数据库的部份。
省略

2.3 Dreamweaver简介
Dreamweaver是由美国著名的软件开发商Macromedia公司推出的一个“所见即所得”的可视化网站开发工具。无论在国外还是在国内,它都是倍受专业Web开发人士推崇的软件。在国内,它被大家称为网页“织梦者”,众多的专业网站和个人主页都把它列为建站的首选工具。在最新的MX版本中,对Dreamweaver的代码控制和后台功能作了进一步增强,整合了UltraDev,ColdFusion Studio,Homesite等优秀软件,使得新版本的Dreamweaver比起原有的版本,功能得到了一个飞跃的发展。

3 系统设计
3.1 系统需求分析
使用计算机网络对学生考试成绩信息进行管理,具有手工管理所无法比拟的优点。检索迅速、统计种类多、直观的图形分布显示、管理方便、存储量大、安全性好、成本低、跨平台性等,这些优点极大地提高了学校对学生考试成绩的管理、统计、分析的效率。

本系统正是为了能够为各类型学校提供一套操作简单、应用广泛的考试成绩分析系统,以提高学校对学生考试成绩管理、统计、分析的效率,实现学校考试成绩管理信息化而设计的。本系统应具备对学生信息、课程信息、教师信息、成绩数据信息管理功能,能够对以上信息进行录入、删除、修改、查询、统计。对成绩数据,应实现对各年级、各班的总分、平均分的计算,并进行排序;按年级或班级对单科成绩的及格人数、优秀人数、及格率、优秀率、各分数段人数分布等进行统计分析,对各分数段人数分布还应通过图形的方式直观地展现出来;系统通过设置不同的登录用户权限来对系统进行访问和管理。

3.2 系统具备的功能
系统可按权限分为公共模块,管理员模块,教师模块三个模块。
公共模块:可通过输入学号,学期查询相应的成绩信息。
教师模块:此模块需要登录用户拥有教师权限,用户登录后可以通过选择查询条件查询相关的成绩信息、成绩统计报表、成绩分布柱状图。
管理员模块:此模块需要登录用户拥有管理员权限,用户登录后除了可以通过选择查询条件查询相关的成绩信息、成绩统计报表、成绩分布柱状图外,还可以对系统后台数据进行管理。此模块可以对学生数据、课程数据、成绩数据、用户数据进行管理,实现对学生、课程、成绩、用户的添加、删除、修改。

3.3 系统功能模块图
在这里插入图片描述

图3-1 系统功能模块图
3.4 数据库设计
设计数据库系统时应首先了解用户各个方面的需求,包括现有的以及将来可能增加的需求,用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输入和输出。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。
针对本考试成绩分析系统的需求,通过对考试成绩的管理、统计、分析过程分析,需要使用管理员和教师信息表保存系统管理员和教师的基本信息,使用学生信息表保存学生的个人信息,使用课程信息表保存所开设的课程的信息,使用成绩信息表保存考试成绩数据。

3.4.1数据库的表设计
首先在SQL Server中创建名为score的数据库,根据对系统的分析可以得出本系统需要的表如下:
管理员和教师信息表(admin):用来存放管理员或教师ID、姓名、登录密码和用户类型(系统管理员或普通教师)信息。
Type:此字段用来标示用户为普通教师或系统管理员;
字段值为“1” :用户为系统管理员,拥有管理员权限,可访问查询分析模块和数据管理模块,可对系统数据进行添加、修改、删除操作;
字段值为“2” :用户为普通教师,拥有非管理员教师权限,只能访问查询分析模块,不能对系统数据进行添加、修改、删除操作。
表3-1管理员和教师信息表(admin)
在这里插入图片描述

学生信息表(student):用来存放学生的学号、姓名、性别、所在年级和所在班级信息。
Gender:此字段用来标示学生的性别:
字段值为“0” ,性别为:女;
字段值为“1” ,性别为:男。
表3-2学生信息表(student)
在这里插入图片描述

课程信息表(course):用来存放课程ID、课程名、授课教师ID、课程描述和课程所在的学期信息。
Term:此字段用来标示课程所在的学期,字段值从一年级上半期为“1”开始编号,按学期增加的顺序,字段值依次加1。如:一年级下半期为“2” 。
表3-3课程信息表(course)
在这里插入图片描述

成绩信息表(score):用来存放成绩对应的学生学号、课程ID、分数和考试类型信息,此表的由两个外键“StudentID”和“CourseID”组成复合主键。
Type:此字段用来标示考试的类型;
字段值为“1” ,表示正常考试;
字段值为“2” ,表示补考。
表3-4成绩信息表(score)
在这里插入图片描述

3.4.2 表间关系
数据库中所创建的表有如下的约束关系:课程信息表course中的“TeacherID”字段受教师信息表admin中的“ID”字段约束,成绩信息表score中的“SrudentID”字段受学生信息表student中的“ID”字段约束,“CourseID”字段受课程信息表course中的“ID”字段约束。
如图3-2所示。
在这里插入图片描述

图3-2各表间的约束关系

4 系统设计与实现
4.1 系统首页
系统首页SearchScore.asp为所有浏览者提供了学生个人成绩查询的功能,输入学生的学号,并选择学期项,就可以查询到该学生相应学期的所有已考试课程的成绩,不及格的课程考试成绩将会用红色字体显示。系统还会自动统计查询到的课程数目和不及格的课程数目。
此页面还为系统管理员和教师用户提供了登录页面的链接,用户点击此链接可进入系统登录页面进行用户登录。系统首页页面效果如图4-1所示。
在这里插入图片描述

图4-1 系统首页
首页中查询学生个人成绩的存储过程代码如下:

CREATE PROCEDURE sp_SearchScore
	@StudentID 	varchar(20),@Term		   int	
AS
  Select d.name,a.StudentID,a.Score,
	(case a.Type
		when 1 then '正常考试' 
		 when 2 then '补考' 
	end) as Type,
	b.Name as CourseName,c.Name as TeacherName
	from Score a,Course b,admin c,student d
	where a.StudentID=@StudentID and a.CourseID=b.ID and b.TeacherID = c.ID and b.Term=@Term and d.ID=@StudentID
GO

4.2 系统登录模块
系统管理员和教师用户可通过系统登录页面Login.asp进行登录。填写完登录信息,提交表单后系统通过LoginCheck.asp对用户填写的登录信息和数据库中记录的信息进行对比,若用户填写登录信息有空项,系统会提示“用户和密码不能为空” ,然后系统返回登录页面Login.asp;若用户登录信息填写错误,页面将提示“用户名或密码输入有误” ,然后系统返回登录页面Login.asp;若用户登录信息填写正确,系统将会对用户的权限类型“Type”进行检查,若“Type=1”表示用户为系统管理员,系统会将用户的登录信息记录在Cookies集合和Session变量中,然后系统转到管理员页面Manage.asp;若“Type=2”表示用户为教师用户,系统会将用户的登录信息记录在Cookies集合和Session变量中后转到教师页面Teacher.asp。
省略

4.3 管理员和教师页面
4.3.1管理员页面
拥有管理员权限的用户登录后即进入管理员页面Manage.asp,页面上方将显示登录用户的用户名。用户可以点击左上方的“退出”链接退出系统,系统将转到Logout.asp页面,清空Cookies集合和Session变量后返回到系统首页。管理员可通过此页面进入系统数据管理模块,对系统数据进行管理操作,还可以进入成绩查询与分析模块,对成绩数据进行相应的查询与分析操作,并返回查询分析报表。系统管理员页面效果如图4-2所示。
在这里插入图片描述

图4-2 系统管理员页
4.3.2教师页面
拥有非管理员权限的教师用户登录后即进入管理员页面Teacher.asp,页面上方将显示登录用户的用户名。用户可以点击左上方的“退出”链接退出系统,系统将转到Logout.asp页面,清空Cookies集合和Session变量后返回到系统首页。教师用户可通过此页面进入成绩查询与分析模块,对成绩数据进行相应的查询与分析操作,并返回查询分析报表。教师页面效果如图4-3所示。
在这里插入图片描述

图4-3 教师页
4.4 系统数据管理模块
系统数据管理模块只有拥有管理员权限的用户才能进入进行操作,通过此模块可以对包括成绩录入等一系列的系统数据进行管理。此模块又分为学生管理、课程管理、成绩管理和用户管理四个小模块。
4.4.1学生管理
学生管理模块完成了对学生信息进行添加、修改、删除操作,以达到对学生信息管理的目的。此模块的主页面为StudentManage.asp,管理员可通过输入需要管理的班级的班级号,查询得到现有的学生信息列表,通过列表中相应的链接对学生信息进行修改和删除操作。学生管理主页面效果如图4-4所示。
在这里插入图片描述

图4-4学生管理主页面
(1)修改学生数据信息:
管理员可通过点击如图4-4所示学生管理页面的相应学生的操作列中的笔型按钮,即可进入学生信息修改页面EditStudent.asp,并将待修改学生的学号ID同时传递到该页面。在EditStudent.asp页面上,显示有数据库中记录的待修改学生的全部信息,修改完该学生的信息点击“提交”按钮完成修改。提交修改后,系统会对提交的信息进行检查,若修改过程中存在没有填写完整的项,系统会提示该项信息不能为空,然后返回学生管理主页面StudentManage.asp;若修改学生信息对数据库操作失败,系统将会提示“更新数据时失败” ,并返回学生管理主页面StudentManage.asp。学生信息修改页面效果如图4-5所示。
在这里插入图片描述

图4-5 学生信息修改页面
修改学生信息调用的存储过程代码如下:

CREATE PROCEDURE  sp_UpdateStudent
--为要更新的变量声明参数
	@ID		varchar(20),
	@Name 	varchar(20),
	@Gender	int,
	@Grade 	varchar(20),
	@Class		int
AS
--将待更新的变量更新为参数传入的值
Update Student
	Set ID		=	@ID,
	Name		=	@Name,
	Gender		=	@Gender,
	Grade		=	@Grade,
	Class		=	@Class
	Where ID=@ID
GO

(2)删除学生数据信息:
管理员可通过点击如图4-4所示学生管理页面相应学生的操作列中的叉型按钮,即可完成对该行对应学生的信息进行删除,删除成功后系统将返回学生管理主页面StudentManage.asp。
删除学生信息调用的存储过程代码如下:

CREATE PROCEDURE sp_DelStudent
	@ID   	varchar(20)
AS
     --先删除从表数据再删主表数据
     --删除该学生的成绩数据
    DELETE FROM Score  WHERE StudentID = @ID
     --删除学生基本数据
    DELETE FROM Student  WHERE Student.ID = @ID
GO

(3)添加学生数据信息:
管理员可通过点击学生管理页面StudentManage.asp或管理员页面Manage.asp下方的“添加学生”按钮,即可进入添加学生信息页面AddStudent.asp。在该页面填写完该学生的信息点击“提交”按钮完成对学生信息的添加。提交后,系统会对提交的信息进行检查,若存在没有填写完整的项,系统会提示该项信息不能为空,然后返回添加学生信息页面AddStudent.asp;若添加学生信息时对数据库操作失败,系统将会提示“录入数据时失败” ,并返回添加学生信息页面AddStudent.asp。
添加学生信息调用的存储过程如下:

CREATE PROCEDURE  sp_AddStudent
--为要更新的字段声明参数
	@ID		varchar(20),
	@Name 	varchar(20),
	@Gender	int,
	@Grade	varchar(20),
	@Class		int	
AS
--添加将相应的字段的记录为对应的输入参数的值
 Insert Into Student
	(ID,Name,Gender,Grade,Class)
	Values(@ID,@Name,@Gender,@Grade,@Class)
GO

4.4.2课程管理
课程管理模块可以对课程信息进行添加、修改、删除操作,以达到对课程开设进行管理的目的。此模块的主页面为CourseManage.asp,管理员可通过页面中的下拉菜单选择相应的课程,点击“课程信息”按钮后页面会返回该课程的详细信息,管理员可以通过列表中相应的链接对课程信息进行修改和删除操作。课程管理主页面效果如图4-6所示。
在这里插入图片描述

图4-6课程管理页面
(1)修改课程数据信息:
管理员可通过点击如图4-6所示的相应课程的操作列中的笔型按钮,即可进入课程信息修改页面EditCourse.asp,并将待修改课程ID同时传递到该页面。转到EditCourse.asp页面后,页面显示有数据库中记录的待修改课程的全部信息,修改完该课程的信息点击“提交”按钮完成修改。提交修改后,系统会对提交的信息进行检查,若修改过程中存在没有填写完整的项,系统会提示该项信息不能为空,然后返回课程管理页面CourseManage.asp;若修改课程信息对数据库操作失败,系统将会提示“更新数据时失败” ,并返回课程管理页面CourseManage.asp。
修改课程信息调用的存储过程代码如下:

CREATE PROCEDURE   sp_UpdateCourse
--为要修改的字段声明参数
	@ID		varchar(20),
	@Name 	varchar(20),
	@TeacherID	varchar(20),
	@Remark	varchar(50),
	@Term  	int	
AS
Update Course
	Set ID		=	@ID,
	Name		=	@Name,
	TeacherID	=	@TeacherID,
	Remark		=	@Remark,
	Term		=	@Term
	Where ID=@ID
GO

(2)删除课程数据信息:
管理员可通过点击如图4-6所示相应课程操作列中的叉型按钮,即可完成对该课程信息的删除,删除成功后系统将返回课程管理主页面CourseManage.asp。
删除课程信息调用的存储过程代码如下:

CREATE PROCEDURE sp_DelCourse
	@ID   	varchar(20)
AS
     --应先删除从表数据再删主表数据
     --删除该课程相关的成绩数据
    DELETE FROM Score  WHERE CourseID = @ID
     --删除课程基本数据
    DELETE FROM Course  WHERE Course.ID = @ID
GO

(3)添加课程数据信息:
管理员可通过点击课程管理页面CourseManage.asp或管理员页面Manage.asp下方的“添加课程”按钮,即可进入添加课程信息页面AddCourse.asp。在该页面填写完该课程的信息点击“提交”按钮完成对课程信息的添加。提交后,系统会对提交的信息进行检查,若存在没有填写完整的项,系统会提示该项信息不能为空,然后返回添加课程信息页面AddCourse.asp;若添加课程信息时对数据库操作失败,系统将会提示“录入数据时失败” ,并返回添加课程信息页面AddCourse.asp。
添加课程信息调用的存储过程如下:

CREATE PROCEDURE sp_AddCourse
  @ID         varchar(20),
  @Name      varchar(20),
  @TeacherID  varchar(20),
  @Term      int
AS
  Insert Into Course
  (ID,Name,TeacherID,Term)
  Values(@ID,@Name,@TeacherID,@Term)
GO

4.4.3成绩管理
成绩管理模块完成了对成绩信息进行添加、修改、删除操作,以达到对成绩信息进行管理的目的。此模块的主页面为ScoreManage.asp,管理员通过输入需要对成绩进行管理的班级的班级号,并从页面的下来菜单中选择相应的学期和课程,查询得到某个班级某学期某门课程的成绩信息列表,通过列表中相应的链接对成绩信息进行修改和删除操作。成绩管理主页面效果如图4-7所示。
在这里插入图片描述

图4-7 成绩管理页面
(1)修改成绩数据信息:
管理员可通过点击如图4-7所示的相应成绩的操作列中的笔型按钮,即可进入成绩信息修改页面EditScore.asp,并将待修改成绩对应的学号和课程ID同时传递到该页面。浏览器转到EditCourse.asp页面后,显示有数据库中记录的待修改成绩相关的全部信息,修改后点击“提交”按钮完成修改。提交修改后,系统会对提交的信息进行检查,若修改过程中存在没有填写完整的项,系统会提示该项信息不能为空,然后返回成绩管理页面ScoreManage.asp;若修改成绩信息对数据库操作失败,系统将会提示“更新数据时失败” ,并返回成绩管理页面ScoreManage.asp。
修改成绩数据信息调用的存储过程代码如下:

CREATE PROCEDURE   sp_UpdateScore
--为要修改的字段声明参数
	@StudentID	varchar(20),
	@CourseID	varchar(20),
	@Score	    int,
	@Type 		int	
AS
Update Score
	Set Score 	=    @Score,
	Type		=    @Type
	Where StudentID=@StudentID and CourseID=@CourseID
GO

(2)删除成绩数据信息:
管理员可通过点击如图4-7所示成绩管理页面相应成绩操作列中的叉型按钮,即可完成对该成绩信息的删除,删除成功后系统将返回课程成绩管理主页面ScoreManage.asp。
删除成绩信息调用的存储过程代码如下:

CREATE PROCEDURE sp_DelScore
	@StudentID   	varchar(20),
	@CourseID	    varchar(20)
AS
--从Score表中删除字段StudentID值为参数@StudentID的值,且字段CourseID的值为参数@CourseID的值的记录
     DELETE FROM Score  
WHERE StudentID = @StudentID and CourseID=@CourseID
GO

(3)添加成绩数据信息:
管理员可通过点击成绩管理页面ScoreManage.asp或管理员页面Manage.asp下方的“添加成绩”按钮,即可进入添加成绩信息页面AddScore.asp。在该页面管理员需要从下拉菜单中选择要添加成绩的学生和课程信息,而不能自己填写 填写该项的信息。这样做的目的是避免为数据库中不存在的学生或不存在的课程添加成绩。填写完成绩的相关信息点击“提交”按钮完成对成绩信息的添加。提交后,系统会对提交的信息进行检查,若存在没有填写完整的项,系统会提示该项信息不能为空,然后返回添加成绩信息页面AddScore.asp;若添加成绩信息时对数据库操作失败,系统将会提示“录入数据时失败” ,并返回添加成绩信息页面AddScore.asp。添加成绩信息页面效果如图4-8所示。
在这里插入图片描述

图4-8 添加成绩页面
添加成绩信息调用的存储过程如下:

CREATE PROCEDURE  sp_AddScore
	@StudentID	varchar(20),
	@CourseID	varchar(20),
	@Score 	int,
	@Type 		int	
AS
 Insert Into Score
	(StudentID,CourseID,Score,Type)
	Values(@StudentID,@CourseID,@Score,@Type)
GO

4.4.4用户管理
用户管理模块完成了对管理员和教师信息进行添加、修改、删除操作,以达到对登录用户信息进行管理的目的。此模块的主页面为UserManage.asp,管理员可通过输入需要管理的用户的登录ID号,可以查询得到该用户的相关信息信息列表,通过列表中相应的链接可以对用户信息进行修改和删除操作。管理员还可通过点击用户管理页面UserManage.asp或管理员页面Manage.asp下方的“添加用户”按钮,即可进入添加用户信息页面AddUser.asp。在该页面填写完添加用户的信息提交后,系统会对提交的信息进行检查,若存在没有填写完整的项,系统会提示该项信息不能为空,然后返回添加用户信息页面AddUser.asp;若添加用户时对数据库操作失败,系统将会提示“录入数据时失败” ,并返回添加用户信息页面AddUser.asp。

4.5 查询分析模块
4.5.1单科报表
单科报表模块包括了班级单科成绩报表CourseScoreReport.asp和年级单科成绩报CourseScoreGradeReport.asp表两个页面,完成了对选定班级或年级的某门课程成绩的查询和对查询的统计。查询的结果按成绩分数由高到底排序,并统计出名次。统计包括了有成绩记录的总人数统计和及格人数统计,并通过统计结果计算出该班或该年纪在这门课程的及格率。现根据班级单科成绩报表对单科报表模块做进一步说明。
班级单科成绩报表查询时调用的存储过程代码如下:

CREATE PROCEDURE sp_CourseScoreReport
--为查询条件的变量声明参数
	@Class		        int,
	@CourseID         varchar(20)	
AS
--查询符合条件“课程ID为输入课程ID,班级号为输入班级”的学生ID、学生姓名、课程名、考试成绩、考试类型,并将结果按考试成绩降序排列
Select c.StudentID,a.Name as Studentname,b.Name as CourseName,c.Score,b.id as CourseID,
	(case c.Type
		when 1 then '正常考试' 
		 when 2 then '补考' 
	end) as Type
	from Student a,Course b,Score c 
	where b.id=@CourseID and a.Class=@Class and a.id=c.StudentID and b.id=c.CourseID
   Order by c.Score Desc
GO

班级单科成绩报页面效果如图4-9所示:
在这里插入图片描述

图4-9 班级单科成绩报表
4.5.2成绩统计
成绩统计模块包括了班级学期成绩报表CourseScoreReport.asp和年级学期成绩报表CourseScoreGradeReport.asp两个页面,完成了对选定班级或年级的某学期各科成绩的查询和对查询结果的汇总统计。查询的结果按成绩平均分数由高到底排序,并统计出名次。汇总统计通过使用交叉表和动态SQL语句完成了对学期各科成绩的汇总、计算总分、各科平均分。在本成绩统计模块中交叉表和动态SQL语句的使用是一个难点,可以说本模块页面调用的存储过程sp_ClassScoreReport和sp_GradeScoreReport是本模块的灵魂。另外,对学生名次的统计是通过ASP程序来完成的。现根据班级学期成绩报表页面对成绩统计模块做进一步说明。
班级学期成绩报表页面CourseScoreReport.asp报表部分代码:
省略

班级学期成绩报表页面CourseScoreReport.asp调用的存储过程代码如下:

CREATE PROCEDURE sp_ClassScoreReport
--为查询条件的变量声明参数
@Class    int,  
@Term     int        
AS
--声明局部变量,用来存放动态SQL语句
declare  @sql nvarchar(4000) 
select @sql=''   
select @sql=@sql+',['+Name+']=sum(case CourseID when '''+CourseID+''' then Score else 0 end)'
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   
--执行包含动态SQL语句的查询语句,并将结果集存放在临时表“#linshi”里面 
exec('select StudentID 学号'+@sql+',总成绩=sum(Score) ,平均分=Convert(dec(5,1),avg(Score)) into #linshi  from Score as a group by StudentID
--从临时表和Student表中查询数据,并将结果集按每个学生的平均成绩降序排列
 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两个页面,其任务是对选定班级或年级的某学期各科成绩的进行查询,并对查询结果进行统计分析。统计分析结果的报表显示了各科个分数段的人数、各科有成绩记录的总人数、各科优秀人数、及格人数,并计算出了各科的优生率和及格率。为了让统计结果能更直观的展现给用户,本系统通过扩展TeeChart组件完成了对各科各分数段人数统计结果以柱状图的形式展现。现根据年级各科成绩分析页面对成绩分析模块做进一步说明。
年级各科成绩分析页面效果如图4-11所示:
在这里插入图片描述

图4-11年级各科成绩分析页面

利用TeeChart组件生成各分数段人数统计柱状图的主要代码:
省略

各分数段人数统计柱状图效果如图4-12所示:
在这里插入图片描述

图4-12各分数段人数统计柱状图

4.6 错误处理模块
此错误处理模块建立了一个错误信息的处理类,用来完成错误信息的存储和显示工作。创建的错误信息处理类存放在ErrorClass.asp页面中,在其他文件中引用此文件就可以操作ErrorClass类的属性和方法,引用方法如下:

<!--#Include File="ErrorClass.asp"-->
错误信息处理类的详细代码如下:
Class ErrorClass	
	Public Founderr,Message
	'功能:显示信息
	'参数:page  返回的页,title 页标题
	'返回值:显示信息代码字符串
	Public Sub showMessage(page,title)
	  Dim strReturn
	  strReturn = ""
	  strReturn = strReturn & "<html> <head> "
        strReturn = strReturn & "<meta HTTP-EQUIV=refresh Content='3;url="
	  strReturn = strReturn & CStr(page)
	  strReturn = strReturn &  "'><title>" & CStr(title) & "</title>"
	  strReturn = strReturn & "</head><body>"
	  strReturn = strReturn &  "<br><br><br><br><br><br><br>"
	  strReturn = strReturn & "<TABLE BORDER=0 align=center WIDTH=200 bgcolor='#ff9933'>"	
	  strReturn = strReturn & "<TR><TD align=center><font color=red size=2>" & CStr(Message) 
          strReturn = strReturn & "</font><br><font size=2>"
	  strReturn = strReturn & "本页3秒刷新后,自动返回</font>"
	  strReturn = strReturn & "</TD></TR></TABLE>"
	  strReturn = strReturn & "</body></html>"		
	    Response.Write strReturn		
	End Sub	
End Class

结  论
本系统是一个面向各类型学校的考试成绩分析系统,采用当前主流的页面开发工具ASP来完成整个系统的设计,在数据库的设计上使用了功能强大的SQL Server 2000进行构建。本系统完成了对学生考试成绩的一系列管理、统计与分析,包括学生信息、课程信息成绩数据的添加、删除和修改。录入相关数据后,可单独查询学生个人成绩,可对学生考试成绩分年级或班级进行单科成绩、学期各科成绩汇总,实现了统计单科及格人数、优秀人数,分析各科的及格率、优秀率、各分数段人数,并进行单科排名;计算学期各科成绩总分、总分平均分、总分名次,单科成绩分析各分数段人数的结果支持柱状图显示。本系统无需登录就可通过学号对学生个人成绩进行查询。教师和管理员用户登录后均可对查询分析模块进行访问,但是只有管理员用户才有数据管理模块的访问权限,能对系统数据进行添加、修改、删除操作。

参考文献
[1]. 方睿, 刁仁宏.网络数据库原理及应用[M].成都:四川大学出版社.2005
[2]. 邓文渊,陈惠贞,陈梭荣.ASP与网络数据库技术[M].北京:中国铁道出版社.2003 [3]. 陈明.实用软件工程基础[M].北京:清华大学出版社.2004 [4]. 刘瑞新.ASP编程基础及应用教程[M].北京:机械工业出版社.2004
[5]. 郑阿奇.SQL Server实用教程[M].北京:电子工业出版社.2005 [6]. 黄雷.ASP+SQL Server项目开发实践[M]. 北京:中国铁道出版社.2006
[7]. 刘洪海.网络数据库开发实战 ASP与电子商务[M].北京:中国铁道出版社.2000
[8]. 张树亮.ASP+SQL Server网络应用系统开发案例精解[M].北京:清华大学出版社. 2006
[9]. 李晓黎,张巍.ASP+SQL Server网络应用系统开发与实例[M].北京:人民邮电出版社. 2004

致 谢
省略


5、资源下载

本项目源码及完整论文如下,有需要的朋友可以点击进行下载。如果链接失效可点击下方卡片扫码自助下载。

序号毕业设计全套资源(点击下载)
本项目源码基于asp+sqlserver的考试成绩分析系统设计与实现(源码+文档)_asp_BS架构_考试成绩分析系统.zip

6、更多asp毕业设计项目

精选ASP毕业设计91套——源码+论文完整资源

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

毕业设计方案专家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值