学生成绩管理系统论文

发布时间:2012-04-16 16:50:08   来源:文档文库   
字号:

目录

【摘  要】

【关键字】

Abstract

Key words

前言

1 系统的需求分析

1.1 成绩管理系统的背景分析

1.2开发学生成绩管理的必要性

1.3学生成绩管理系统设计的目标的分析

1.4学生成绩管理系统的系统需求

1.5学生成绩管理系统的功能需求分析

2 系统技术以及运行环境的需求分析

2.1 ASP技术简介

2.2 ACCESS2003 技术简介

2.3 SQL语句简介

2.3.1 SQL语句简介

2.3.2 SQL的优点

2.4 IIS简介

2.4.1 IIS的安装

2.4.2 IIS虚拟目录的创建

2.4.3.IIS的日常管理

2.5 运行环境

3 概念结构设计阶段

3.1 系统的功能分析

3.2 学生成绩管理系统流程图

3.3学生成绩管理系统流程图

4 逻辑结构设计阶段 11

4.1主要表关系 11

4.2其它表关系 12

5 物理设计阶段 14

6 详细设计阶段与实现 15

6.1数据的连接 15

6.2 成绩管理系统的登录页面 15

6.3 系统管理员功能简介 16

6.4学生管理界面 17

6.4.1 学生信息的添加与查询 17

6.4.2 学生信息的修改 19

6.5 班级管理界面 20

6.5.1班级的添加与查询 20

6.5.2 班级删除 22

6.6 课程管理界面 23

6.6.1 课程的添加与查询 23

6.7成绩管理界面 23

6.7.1 成绩查询 23

6.7.2 成绩添加 25

6.8 管理员功能界面 26

6.8.1 修改用户 27

6.8.2 添加用户 28

6.8.3 添加学期界面 28

6.9 退出系统logout.asp 29

7 系统在调度中经常出现的问题 30

参考文献 30

致谢 30


学生成绩管理系统

计算机科学技术专业学生 李祖嘉

指导老师 李静

【摘  要】

人类已进入21世纪,科学技术突飞猛进,经济知识和信息产业初见端倪,特别是信息技术和网络技术的讯速发展和广泛应用,对社会的政治、经济、军事、文化等领域产生越来越深刻。学生成绩管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要。本论文叙述到的学生成绩管理系统是用IIS+ASP网页编程+ACCESS数据库+SQL查询语言实现的。重点介绍了学生成绩管理系统的实现过程:包括系统分析、 系统调查、功能设计、数据库设计、系统实现、系统测试和调试等。本系统主要功能有学生管理、班级管理、课程管理、成绩管理等,包括功能需求描述、数据库设计等内容。

【关键字】

ASP成绩管理成绩查询ACCESS

Student Performance Management System

Student majoring in computer Li Zujia

Tutor Li Jing

Abstract

Mankind has entered the 21st century, the rapid development in science and technology, economic knowledge and information industries have appeared. especially information technology and network technology to the fast development and wide application of the political, economic, military, cultural, and other fields have become deeper and deeper. Student performance management system is an education units indispensable part Its contents for the policy makers and school administrators are of great importance. This paper describes the performance of their students management system is used IIS+ASP website database programming +ACCESS +S QL query language achievable. Focus on the students performance management system implementation process include : systems analysis, investigation, functional design, database design, the realization of the system, system testing and debugging. The system functions student management, class management, course management, performance management. Description including functional requirements, such as database design.

Key words

ASPperformance managementperformance inquireACCESS

前言

人类已进入21世纪,科学技术突飞猛进,经济知识和信息产业初见端倪,特别是信息技术和网络技术的讯速发展和广泛应用,对社会的政治、经济、军事、文化等领域产生越来越深刻的影响,也正在改变人们的工作、生活学习、交流方式。信息的获取、处理、交流和应用能力,已经成为人们最重要的能力之一。

在不久的将来知识经济将占世界经济发展的主导地位,国家综合国力和国际竞争能力越来越取决于教育发展、科学技术和知识创新的水平,教育在经济和社会发展过程中将呈现出越来越突出的重要作用。学生成绩管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生成绩管理系统应该能够为用户提供充足的信息和快捷的查询手段。但是一直以来人们使用传统人工的方式管理学生成绩、填写各种表格,这种管理方式存在着许多缺点,:效率低、保密性差,另外所用其时间长,产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。

随着中国加入WTO,意味着我国要在同一个网络平台上参与国际竞争,同世界接轨。这对我们既是一个机遇,也是一个挑战。为此我们必须全面加强全民的信息技术教育,以提高我国的整体素质。科学技术的不断发展和提高,计算机科学技术日渐成熟,其强大的功能人们已有深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。

作为计算机应用的一部分,使用计算机对学生成绩管理系统进行信息管理,有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生成绩系统管理的效率,也是教育单位的科学化、正规化管理,与世界接轨的重要条件,因此,开发一套这样成绩管理软件成为很有必要的事情。

1 系统的需求分析

1.1 成绩管理系统的背景分析

当今时代是飞速发展的信息时代,在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。

管理信息系统是进行信息的采集、存储、加工、维护和使用的系统,它是随着管理科学和技术科学的发展而形成的。学生成绩管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生成绩管理系统应该能够为用户提供充足的信息和快捷的查询手段,对学生来说可以轻松的查阅自己在校的成绩以及信息等。但是一直以来人们都是靠传统人工的方式管理学生成绩,这种管理方式存在着许多缺点,:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。

随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学生成绩信息进行管理,有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生成绩管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。因此,开发这样的一套成绩管理系统成为很有必要的事情。

学生成绩管理系统提供了强大的学生成绩管理管理功能,方便系统管理员对学生成绩等信息的添加、修改、删除、查询、留言等操作,同时一样的方面学生对自己各科成绩查询,学习的交流。

1.2开发学生成绩管理的必要性

21世纪的科技时代,科学技术突飞猛进,计算机已经不仅是在科技上应用,而且在生活中也是同样得到了广泛在应用。如今,不管是小学、初中、高中、甚至是很多大学生的学生成绩管理基本上是靠人工进行管理,但随着时间的变化,学校规模的扩大,有关学生成绩管理工作和所涉及到的数据量越来越大越来越多,大多数学校不得不靠增加人力、物力、财力来进行学生成绩管理。但是人工管理成绩档案具有效率低、查找麻烦、可靠性不高、保密性低等因素。因此开发出一个不仅仅是适用于大中专院校以及其它高校通用的学生成绩管理系统是必要的。

开发一个学生成绩管理系统,采用计算机对学生成绩进行管理,进一步提高了办学效益和现代化水平。为广大教师和学生提高工作效率,实现学生成绩信息管理工作流程的系统化、规范化和自动化。现在我国的大中专院校的学生成绩档案管理水平普遍都不是很高,有的还停留在全用纸介质基础上,这种管理方式已不能适应时代的发展,社会的需求,因为它浪费了大量的人力物力,也存在着许多不足的因素。在今天信息时代这种传统的管理方法必然会被计算机为基础的信息管理系统所代替。一个高效的学生成绩管理系统可以存储历届的学生成绩档案,不需要大量的人力,只需要几名专门录入员即可操作系统,节省大量人力,可以迅速查到所需信息、高效、安全,学生在能方便的查看自己的成绩。

1.3学生成绩管理系统设计的目标的分析

1.管理员能够实现对整个学生信息的添加、修改、删除、查询等操作,对教师用户的添加、删除、修改等操作,对留言信息的添加、删除、修改查询等操作。

2.可以将学生成绩的数据库发布到网上,教师的信息发布的网上,方便学生教师进行查询,达到资源共享的目的。

3.教师能够在一定的权限内对所有学生成绩的查询,所有教师信息的查询,留言信息的添加、删除、修改是、查看等,对的自己的联系信息进行更新,登录密码的修改。

4.学生可以在自己的权限内对对自己成绩的查询,以及个人信息的查询,登录密码的修改,留言的查看、提交留言信息的相关操作。

1.4学生成绩管理系统的系统需求

21世纪的科技时代,科学技术突飞猛进,信息社会的高科技时代,商品经济化的高效益,计算机的应用已普及到经济和社会生活的各个领域。计算机虽然与人类的关系愈来愈密切,还有人由于计算机操作不方便继续用手工劳动。为了适应现代社会人们高度强烈的时间观念,学生成绩管理系统为教学办公带来了极大的方便。该学生成绩管理系统是以ASP网页编程+ACCESS数据库+SQL数据查询语言编写,其系统功能在内部IIS服务器上运行。系统管理员、教师、学生只需通过简单的操作,用户都可以了解本系统软件的基本工作原理。用户只需进行输入一些简单的汉字、数字,或用鼠标点击即可达到自己想要的目标。

1.5学生成绩管理系统的功能需求分析

学生成绩管理系统主要提供成绩查询,方便管理的网上的信息查阅平台,学生可以通过该系统查阅与自己相关信息,查看留言、提交留言。教师可以通过成绩管理系统查阅学生成绩信息,教师信息,查看教师留言、学生留言、提交留言、留言的管理等相关操作。系统管理员可以实现以上的所有功能,还有对学生的添加、删除、修改、教师的添加、删除、修改,数据库的备份、数据库的还原等相关操作。

2 系统技术以及运行环境的需求分析

2.1 ASP技术简介

Microsoft Active Server Pages 即我们所称的ASP,其实是一套微软开发的服务器端脚本环境。Active Server Page 是创建动态网页的一个很好的工具,它起一种编程语言的作用,可以利用它编写动态产生HTML的程序代码。因此,只要用户浏览Web站点并请求一个ASP页,Web服务器就可以处理相应的ASP代码,生成HTML代码,然后将它传递到用户浏览器并显示出网页。

ASP程序的优点:

1.ASP使用VBScript脚本语言直接源于VB语言,秉承了VB简单易学的特点,掌管起来非常容易。

2.无须编译,容易编写,可在服务器端直接执行。

3.利用ADO组件轻松存取数据库。

4.与浏览器无关,客户端只要使用可执行HTML码的浏览器,即可浏览ASP所设计的网页内容。

5.ASP能与任何ActiveX scripting语言相容。除了可使用VBScriptJavaScript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其他脚本语言。

6.ASP技术的处理速度相当快,并且其安全性也很高,ASP的源程序,不会被传到客户浏览器,因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。

7.ASP的对象和组件:ASP7个固有对象这7个固有对象分别是RequestResponseServerApplicationSessionASPErrorObjectContext

2.2 ACCESS2003 技术简介

Access2003 就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。那么什么叫数据库呢?数据库(Database)是由一些有意义和有关系的数据(data)所组合而成。一个数据库中,包含了许多条记录(Record),而每条记录是由多个字段(Field)所组成,不同的字段存放这不同的数据。所以数据库的严格定义是一组相关记录的集合,而字段则是最基本的数据项,也是数据库中最小的单位。在计算机中用来帮我们管理数据库的系统,我们称之为数据库管理管理系统(Database Management System DBMS)。数据库管理系统是架构在一个或多个数据库之上,并针对数据库中的数据进行管理运用。

Access 的优点在于它能使用数据表示图或自定义窗体收集信息,数据表示图提供了一种类似于 Excel 的电子表格,可以使数据库一目了然。另外,Access 允许创建自定义报表用于打印或输出数据库中的信息。Access也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。如上所述,Access 作为关系数据库开发具备了许多优点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。

2.3 SQL语句简介

2.3.1 SQL语句简介

SQL全称是结构化查询语言(Structured Query Language)”,SQL包含4个部分:

1)数据查询语言DQL-Data Query Language SELECT

2)据操纵语言DQL-Data Manipulation Language INSERT, UPDATE, DELETE

3)数据定义语言DQL-Data Definition Language CREATE, ALTER, DROP

4)数据控制语言DQL-Data Control Language COMMIT WORK, ROLLBACK WORK

2.3.2 SQL的优点

1)非过程化语言

2)统一的语言

SQL为许多任务提供了命令,包括:查询数据、数据更新、在表中插入记录、在表中修改记录、在表中删除记录、建立、修改和删除数据对象、控制对数据和数据对象的存取 、保证数据库一致性和完整性 、以前的数据库管理系统为上述各类操作提供单独的语言,而SQL将全部任务统一在一种语言中。

3)是所有关系数据库的公共语言

由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS转到另一个。所有用SQL编写的程序都是可以移植的。SQL是大多数关系型数据库用做查询语言的语言。它是可以移植的,并且容易学习使用,但是所有SQL语句都必须由数据库服务器独立地执行。这就意味着客户端应用必须把每条查询发送到数据库服务器,等待它处理这个查询,接收结果,做一些运算,然后给服务器发送另外一条查询。所有这些东西都会产生进程间通讯,并且如果客户端在另外一台机器上甚至还会导致网络开销。

2.4 IIS简介

2.4.1 IIS的安装

WINDOWS 2000 SERVER提供的WEB服务器组件IIS的安装方法,在开始设置控制面板添加/删除程序命,在添加/删除程序中选择添加/删除WINDOWS组件按钮,就会弹出如图2-1所示的WINDOWS组件向导对话框。在其中选择INTERNET信息服务IIS,然后单击下一步按钮,随后根据系统提示一步一步的操作即可完成IIS的安装。

IIS的安装(图2-1

2.4.2 IIS虚拟目录的创建

在启动Internet后,在默认WEB站点单击鼠标右键如图(2-2),在快捷菜单中选择新建”→“虚拟目录命令,输入虚拟目录的名字,然后按照系统提示操作,即可完成虚拟目录的创建。

IIS虚拟目录的创建 (图2-2

2.4.3.IIS的日常管理

1)启动站点,停止、暂停、删除站点

2)主目录设置、文档管理、ISAPI筛选器、HTTP头、目录安全性、文档、自定义错误、性能

2.5 运行环境

  为了保证成绩管理系统运行的效率和可靠性,服务器应具有较高的软硬件配置,客户端的要求不是很高。此应用程序可广泛运行于国际互联网即Internet,也可适用于内部的局域网。其运行要求如下:

软件环境:

客户端:  Windows95/98/2000/XPInternet Explorer(IE)

服务器端:Windows NT/Windows2000Internet Information Server (IIS)4.0及其以上版本,IE等;或者Windows98Personal Web Server(PWS)IE等。

数据库:采用Access,运行于服务器端。

硬件环境:

服务器 CPU:PIII 500以上 ,内存:512M以上

客户机 CPU:P200MMX以上,内存:32M以上

3 概念结构设计阶段

概念结构设计阶段是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。

设计教室管理数据库包括班级、学生、课程三个关系。

E-R图如下

3.1 系统的功能分析

该学生成绩管理系统是用ASP网页编程+ACCESS数据库+SQL查询语言编句,系统是基于网络在线的学生成绩管理系统,在系统中分为大的三个方面:一是系统管理员页面(分为超级管理员和普通管理员)、二是学生登录页面。

1)超级系统管理员进入学生成绩管理系统的主要功能是:实现管理员账号添加、修改、删除、查询,学生的添加、学生的修改、学生的查询、学生成绩的录入、学生成绩的添加、学生成绩的修改、学生成绩的删除、课程的添加、课程的修改、课程的删除等基本功能。

2)超级系统管理员进入学生成绩管理系统的主要功能是:学生的添加、学生的修改、学生的查询、学生成绩的录入、学生成绩的添加、学生成绩的修改、学生成绩的删除、课程的添加、课程的修改、课程的删除等基本功能。

3)学生进行学生成绩管量系统的主要功能是:实现学生自己成绩查询、自己登录密码的修改、个人信息的查询的基本功能。

3.2 学生成绩管理系统流程图

学生成绩管理系统流程图(图3-1

 3.3学生成绩管理系统流程图

学生成绩管理系统流程(图3-2

超级管理员在学生成绩管理系统中能够为本账号重设密码、修改普通管理员的类型,能够对学生成绩管理系统具体的按学号进行查询,对成绩的添加、修改和删除,班级管理能够对班级进行添加、删除、修改,一般班级是不允许修改的,能对学生进行添加、删除修改等操作。

学生成绩管理系统流程(图3-3

普通管理员在学生成绩管理系统中能够对所有学生的成绩查看,对学生按学号进行查询,可以修改自己的登录密码,能对整个系统中的学生信息、班级、课程、成绩进行添加、删除、修改等。

学生成绩管理系统流程(3-4)

学生在系统中的基本功能是对自己所有成绩的查询,个人登录密码的修改,基本信息的查看。

4 逻辑结构设计阶段

逻辑结构是独立于任何一种数据模型的信息结构。逻辑结构的任务是把概念结构设计阶段设计好的基本E-R图转化为宜选用的DBMS所支持的数据模型相符合的逻辑结构,并对其进行优化。

E-R图向关系模型转化要解决的问题是如何将实体型和实体间的联系转化为关系模式,如何确定这些关系模式的属性和码。

4.1主要表关系

设计学生成绩管理数据库,包括课程、学生、成绩三个关系, 其关系模式中对每个实体定义的属性如下:

课程信息表

Class:(课程号,课程名,学分,学时,类型,备注)

学生信息表

Student1:(学号,姓名,性别,年龄,出生日期,系别,班级,入学时间,备注,密码)

成绩表

Score:(学号,课程号,成绩,补考1,补考2,学期,备注)

1、课程信息表(course)

2、学生信息表(student)

3.成绩表(grade)

4.2其它表关系

1.系统管理员表(admin)

2.系别表(depart

3.专业表(major

4.班级表(class

5.学期表(term

5 物理设计阶段

数据库物理设计的任务是为上一阶段得到的数据库逻辑模式,即数据库的逻辑结构选择合适的应用环境的物理结构,既确定有效地实现逻辑结构模式的数据库存储模式,确定在物理设备上所采用的存储结构和存取方法,然后对该存储模式进行性能评价、修改设计,经过多次反复,最后得到一个性能较好的存储模式。数据库物理设计内容包括记录存储结构的设计,存储路径的设计。

6 详细设计阶段与实现

6.1数据的连接

在整个学生成绩管理系统中,数据库的打开在系统中是很重要的,下面给出本系统连接打开数据库的代码文件conn.asp

<%

set conn=server.createobject("adodb.connection")

conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("data/db.mdb")

%>

6.2 成绩管理系统的登录页面

学生成绩管理系统分为两种登录模式

1)学生登录(如图6-1

2)系统管理员登录(如图6-2

学生登录页(图6-1

系统管理员登录页面 (图6-2

系统是用ASP网页编程+ACCESS数据库+SQL查询语句,学生成绩管理系统中拥有的用户名和密码才能正常进入成绩管理系统,以下给出整个文件的部分代码提供参考:

打开数据文件

<%

if username="" or pwd="" then

response.write ""

response.end

else

‘读取在图(6-1)输入的用户名进行判断,如果为空则自动跳回到系统首页。

set rs = server.CreateObject("adodb.recordset")

sql="select * from admin where username='"&username&"'"

rs.open sql,conn,1,1

if not rs.eof then

if pwd=rs("passward") then

session("admin")=rs("username")

session("flag")=rs("flag")

‘账号、密码正确,则用session记录管理员账号信息,包括账号和管理员的类型。

response.redirect "admin.asp"

else

response.write ""

response.end

end If

else

response.Write ""

end if

end If

%>

以上代码是通过读取输入的用户名和密码在从数据库中进行查找,是否有当前输入的用户和密码,如果用户名正确与密码正确则进入相应页面的同时对SESSION存一个值,如果数据库中没有该用户则弹出提示并跳转到本面。系统中每个页面会有语句:

<% if session("admin")<>"" then %>

如果session中的值为空,则提示非法使用本系统。

6.3 系统管理员功能简介

1)成绩管理可以对学生的成绩的添加、删除、修改

2)成绩查询实现对整个学生成绩管理系统成绩的查询

3)学生管理对学生的添加、删除、修改、详细信息的查看

4)班级管理对所有班级的添加、删除、修改

5)专业管理对所有专业的添加、删除、修改

6)学期管理对学期的添加、删除、修改

7)修改密码是对该用户的登录密码进行修改

8)用户管理是对其它管理员账号类型的修改、删除

超级管理员功能(图6-3

普通管理员则拥有除对用户管理之外的所有功能。而学生的功能仅限于对自身信息、成绩的查询及登录密码的修改。

6.4学生管理界面

6.4.1 学生信息的添加与查询

学生添加界面 (图6-4

1 以下代码为循环输出学生信息

<%

dim b

set rs1 = server.CreateObject("adodb.recordset")

sql1="select s.*,d.dname,c.claname from student s,depart d,class c where c.cla_id=s.cla_id and c.did=d.did order by s.sid asc"

rs1.open sql1,conn,1,1

if datediff("yyyy",(rs1("scome")),date())<4 then

b="在读"

else

b="毕业"

end if

%> 通过当年日期与入学日期之差判断学生状态,在读或毕业

学号

姓名

性别

出生日期

系别

班级

入学日期

状态

操作

<% do while not rs1.eof and mypagesize>0 %>

<%=rs1("sid")%>

<%=rs1("sname")%>

<%=rs1("sex")%>

<%=rs1("birth")%>

<%=rs1("dname")%>

<%=rs1("claname")%>

<%=rs1("scome")%>

<%=b%>

">修改

';}">删除

2)以下代码为添加学生信息

<%

sub addstudent()

dim xuehao,xingming,xingbie,shengri,xi,ban,ruxue

xuehao=request.Form("c1")

xingming=request.Form("c2")

xingbie=request.Form("xingbie")

shengri=request.Form("chusheng")

xi=request.Form("xibie")

ban=split(request.form("banji"),"|")

ruxue=request.Form("ruxue")

set rs_if=server.CreateObject("adodb.recordset")

sql_if="selct count(*) from student where sid='"&xuehao&"'"

rs_if.open sql_if,conn,1,3

if xuehao="" then

response.Write""

elseif rs_if(0)<>0 then

response.Write""

elseif xingming="" then

response.Write""

elseif xingbie="" then

response.Write""

elseif shengri="" then

response.Write""

elseif xi="" then

response.Write""

elseif ban(1)="" then

response.Write""

elseif ruxue="" then

response.Write""

else

set rs0=server.CreateObject("adodb.recordset")

sql0="select * from student"

rs0.open sql0,conn,3,3

rs0.addnew ‘在数据库表中追加新记录

rs0("sid")=xuehao

rs0("sname")=xingming

rs0("sex")=xingbie

rs0("birth")=shengri

rs0("did")=xi

rs0("cla_id")=ban(1)

rs0("scome")=ruxue

rs0.update ‘更新数据库

rs0.close

set rs0=nothing

response.Write""

end if

end sub

%>

6.4.2 学生信息的修改

学生信息修改界面(图6-5

通过学生管理界面传递的参数ID,确定学生的学号,作为查询该学生信息的条件,从而到达显示及修改学生信息的目的。部分代码如下:

<%

dim rs1,b

id=request("id")

set rs1 = server.CreateObject("adodb.recordset")

sql1="select s.*,d.dname,c.claname from student s,depart d,class c where c.cla_id=s.cla_id and c.did=d.did and sid='"&id&"'"&"order by s.sid asc" ‘通过参数ID确定学生

rs1.open sql1,conn,3,3

if datediff("yyyy",(rs1("scome")),date())<4 then

b="在读"

else

b="毕业"

end if

%>

6.5 班级管理界面

6.5.1班级的添加与查询

班级添加界面(图6-6

与学生信处添加相似,添加班级信息时有实体完整性(主键)限制,即主键值唯一。相关代码如下:

<%

sub addclass()

dim cid,nian,claid,xibie,zhuanye

cid=request.Form("c1")

nian=request.Form("c2")

claid=request.Form("c3")

xibie=request.Form("xibie")

zhuanye=request.Form("xb_zy")

set rs_if=server.CreateObject("adodb.recordset")

sql_if="selct count(*) from class where cla_id='"&cid&"'"

‘以输入值为条件查询班级表,确定该班级号是否可用

rs_if.open sql_if,conn,1,3

if cid="" then

response.Write""

elseif rs_if(0)<>0 then ‘若查询返回值不为0,则表明该班级号已存在

response.Write""

elseif nian="" then

response.Write""

elseif claid="" then

response.Write""

elseif xibie="" then

response.Write""

elseif zhuanye="" then

response.Write""

else

set rs0=server.CreateObject("adodb.recordset")

sql0="select * from class"

rs0.open sql0,conn,3,3

rs0.addnew

nz=nian&""&zhuanye

rs0("cla_id")=cid

rs0("claname")=nz

rs0("did")=xibie

rs0("num")=claid

rs0.update

rs0.close

set rs0=nothing

response.Write""

end if

end sub

%>

对于班级名的确定是通过年份和专业名共同决定的,而专业则是由系别决定的,即每个系有自己不同的专业,实现此功能用到的是javascript。相关代码如下:

6.5.2 班级删除

若该班级没有学生,则可直接删除;否则不允许删除。而对于所删除班级的确定,同样是通过前面所传参数确定的。相关代码如下:

<%

id =request("id")

set rs1=server.CreateObject("adodb.recordset")

sql1="select count(*) from student where cla_id='"&id&"'"

rs1.open sql1,conn,1,1

if rs1(0)>0 then ‘确定该班级内是否有学生信息

response.write ""

else

sql2="delete from class where cla_id='"&id&"'"

conn.execute(sql2)

Response.Write ""

end if

rs1.close

set rs1=nothing

%>

6.6 课程管理界面

6.6.1 课程的添加与查询

课程管理界面(图6-7

对于课程类型的选择,在课程表中有字段cif,当cif=1时,为专业课;cif=0时,为公共课。相关代码如下:

<% a=rs1("cif")

if a=1 then

b="专业课"

else

b="公共课"

end if

%>

6.7成绩管理界面

6.7.1 成绩查询

成绩查询界面(图6-8

此功能是基于学号的精确查询,学号任务精确查询的条件,而学期条件可根据需要进行选择。相关代码如下:

<%

dim sid

sid=request.Form("snumber")

set rs_if=server.CreateObject("adodb.recordset")

sql_if="select count(*) from student where sid='"&sid&"'"

rs_if.open sql_if,conn,1,1

if rs_if(0)=0 then

response.Write""

‘首先确认要查询的学号是否存在(即有无此学生)

else

set rs_s = server.CreateObject("adodb.recordset")

sql_s="select s.*,d.dname,c.claname from student s,depart d,class c where c.cla_id=s.cla_id and c.did=d.did and sid='"&sid&"'"

rs_s.open sql_s,conn,1,1 ‘此查询用于输入显示学生的基本信息

%>

<% dim snumber

dim term

snumber=request.Form("snumber")

term=request.Form("term1")

set rs_cj = server.CreateObject("adodb.recordset")

if term<>"" then ‘若学期值不为空,则查询条件包括学期条件

sql_cj="select cj.*, course.* from student s,chengji cj,course where cj.sid=s.sid and cj.cid=course.cid and cj.sid='"&snumber&"'"&"and term='"&term&"'"&"order by cj.cid asc"

else

sql_cj="select cj.*, course.* from student s,chengji cj,course where cj.sid=s.sid and cj.cid=course.cid and cj.sid='"&snumber&"'"&"order by cj.cid asc"

end if

rs_cj.open sql_cj,conn,1,3

if not isnumeric(request("Page")) or isempty(request("Page")) then

Page=1

else

Page=int(abs(request("Page"))) ‘对成绩进行分页显示

end if

rs_cj.PageSize = 10

total = rs_cj.recordcount

……

%>

6.7.2 成绩添加

成绩添加页面(图6-9

添加学生成绩时,首先以填写的学号为条件检索学生表,如果有此学生则继续添加学生成绩,否则交停止添加成绩并提示该学生不存在。相关代码如下:

<%

sql="select * from course"

set rs=server.CreateObject("adodb.recordset")

rs.open sql,conn,1,3

‘查询课程表,并将课程名附值给课程下拉列表框

sql_term="select * from term"

set rs_term=server.CreateObject("adodb.recordset")

rs_term.open sql_term,conn,1,3

‘查询学期表,并将学期名附值给学期下拉列表框

%>

<%

sub addchengji()

dim kecheng,xuehao,xueqi,fenshu

kecheng=request.Form("kecheng")

xuehao=request.Form("xuehao")

xueqi=request.Form("xueqi")

fenshu=request.Form("fenshu")

set rs_if=server.CreateObject("adodb.recordset")

sql_if="select count(*) from student where sid='"&xuehao&"'"

rs_if.open sql_if,conn,1,1

if kecheng="" then

response.Write""

elseif xuehao="" then

response.Write""

elseif rs_if(0)=0 then

response.Write""

‘查询添加的学号是否在于学生表

elseif xueqi="" then

response.Write""

elseif fenshu="" then

response.Write""

elseif not isnumeric(fenshu) then ‘判断所填写的成绩内容是否为数字

response.Write""

else

set rs0=server.CreateObject("adodb.recordset")

sql0="select * from chengji"

rs0.open sql0,conn,3,3

rs0.addnew

rs0("cid")=kecheng

rs0("sid")=xuehao

rs0("term")=xueqi

rs0("mark")=fenshu

rs0.update

rs0.close

set rs0=nothing

response.Write""

end if

end sub

%>

6.8 管理员功能界面

在此功能界面中,超级管理员可进行用户类型修、添加用户、添加学期、修改自身密码的操作,而普通用户则只可以进行添加学期和修改自身密码的操作。

管理员功能界面(图6-10

修改用户类型时,点击“修改”链接,系统将对应用户的用户名(语句控制使其唯一)作为参数传递给修改页面,确定被修改的账号信息。相关代码如下:

">修改

‘将用户名username作为参数传递到页面admin_edituser.asp

6.8.1 修改用户

修改用户界面(图6-11

该界面用以修改用户的类型,普通用户或超级用户,相关代码如下:

<%

dim rs1,a,b

id=request("id") ‘接收上页传来的参数作为查询的条件

set rs1 = server.CreateObject("adodb.recordset")

sql1="select * from admin where username='"&id&"'"

rs1.open sql1,conn,3,3

a=rs1("flag")

if a=1 then

b="超级用户"

else

b="普通用户"

end if ‘判断用户的当前类型

%>

<%

sub saveedit()

dim flag

id=request("id")

flag=request.Form("leixing")

set rs2=server.CreateObject("adodb.recordset")

sql2="select * from admin where username='"&id&"'"

rs2.open sql2,conn,3,3

rs2("flag")= flag ‘将新的用户类型附值给数据库字段

rs2.update ‘更新数据库

response.Write""

rs2.close

set rs2=nothing

end sub

%>

6.8.2 添加用户

添加用户界面(图6-12

该界面主要实现新用户的添加,代码如下:

<%

sub adduser()

dim ming,pwd,leixing

ming=request.Form("ming")

pwd=request.Form("pwd")

leixing=request.Form("leixing") ‘分别将获取到的值附给变量

set rs_if=server.CreateObject("adodb.recordset")

sql_if="selct count(*) from admin where username='"&ming&"'"

‘利用变量值查询管理员admin,判断用户是否已经存在

rs_if.open sql_if,conn,1,3

if ming="" then

response.Write""

elseif rs_if(0)<>0 then

response.Write""

elseif pwd="" then

response.Write""

elseif leixing="" then

response.Write""

else

set rs0=server.CreateObject("adodb.recordset")

sql0="select * from admin"

rs0.open sql0,conn,3,3

rs0.addnew

rs0("username")=ming

rs0("passward")=pwd

rs0("flag")=leixing

rs0.update

rs0.close

set rs0=nothing

response.Write""

end if

end sub

%>

6.8.3 添加学期界面

添加学生成绩时,需要确定该次成绩是哪个学期的考试成绩,所以在管理员功能中添加此项功能,以方便添加成绩时选择考试学期。

添加学期界面(图6-13

如示例所示,学期名称由学年和学期序号组成,需要人工输入,相关功能代码如下:

<%

sub addterm()

dim term

term=request.Form("term")

if term="" then

response.Write""

else

set rs0=server.CreateObject("adodb.recordset")

sql0="select * from term"

rs0.open sql0,conn,3,3

rs0.addnew

rs0("tename")=term

rs0.update

rs0.close

set rs0=nothing

response.Write""

end if

end sub

%>

6.9 退出系统logout.asp

相关代码如下:

<%

Session.Abandon

Response.Redirect "index.asp"

%>

7 系统在调度中经常出现的问题

1 数据库的连接容易出错

2 各种数据写入数据库时容易出错

3 在调度中经常出现数词不匹配

参考文献

1)尚俊杰  《网络程序设计-ASP(第2版)》  清华大学出版社、北方交通大学出版社

2)徐军、吴玉新 《网站ASP后台解决方案》  人民邮电出版社

3)吴振峰  《网站建设与管理》  高等教育出版社

4)白以恩 《计算机网络基础及应用》  哈尔滨工业大学出版社

5)吴林华 《网站建设与维护》  电子工业出版社

6)邵丽萍,张后杨,柯新生 《网页编程技术》 清华大学出版社

7)杨翼川、徐梅 ASP动态网页设计实战》  机械工业出版社

8屈喜龙 ASP + SQL Server 开发动态网站实例荟萃》 机械工业出版社

9张海藩 《软件工程导论》 清华大学出版社

致谢

从接受课题到现在完成毕业设计论文,衷心的感谢我的指导李静老师和好朋友给予了精心的指导和热情的帮助,尤其在课题设计的前期准备阶段和本人的数据库的设计阶段,笃学提出许多宝贵的设计意见,在最后的测试修改阶老师在百忙之中抽出时间为我们提供了必要的帮助,这样使得我们得以顺利的完成毕业设计开发工作,谨此老师和我的朋友表示衷心的感谢和崇高的敬意。

本文来源:https://www.2haoxitong.net/k/doc/9855c4b9f121dd36a32d8272.html

《学生成绩管理系统论文.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式