基于VB的学生成绩查询系统

项目概述
进入登入界面,不同的用户可以进入不同的功能模块,管理员能够对整个系统进行管理,而一般用户输入自己的学号能够进入到查询系统,查询自己的成绩信息,便于学生对自己成绩的掌握。

功能描述:
(1)设计一个友好的登入界面,不同的用户能够进入系统的不同功能模块。
(2)系统管理员能够对整个系统进行管理(对整个数据库的管理,用户权限的设置等)
(3)学生能根据学号查询到自己的成绩信息,但对所查信息不能做任何修改。如果学号输入有错误,提示出错信息。
(4)退出系统。

XX中学学生学籍管理系统

目录
摘要
引言
系统简介
第一章 可行性研究
第二章 需求要析
第三章 概要设计
第四章 详细设计
第五章 设计中遇到的问题及解决方法
(还有暂时未解决的问题)
第六章 结束语
第七章 主要参考文献
附:程序清单
学生:

摘要

-------引言(选题理由)-------
我的母校XX一中为一个市重点中学,但由于长期一来是传统的管理模式……
使用计算机对学生信息进行管理,具有手工管理所无法比拟的优点.例如: ……
学校为了提高工作效率,买了一批电脑,当务之急就是…… 因此,……

我选择母校来设计这个系统主要有两个原因:
一是:在母校我认识许多老师,他们为我提供了许多资料,……
二是:在母校学习的三年里,我受到了很多老师的关怀,他们……也算是对母校的一点回报。

本系统为学生学籍管理系统,是一个的信息管理系统,其开发主要包括数据库的建立和维护以及前端应用程序的开发两个方面。……

经过分析,我使用了 MICROSOFT公司的 VISUAL BASIC 6.0开发工具,利用其提供的各种面向对象的开发工具,在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成一个满意的可行系统。

在下面的各章中我将以开发学生学籍管理系统,谈谈其开发过程和所涉及到的问题及解决方法。
--------------------下面就让我们开始正文的介绍

第一章 可行性研究
计算机管理学生信息的意义:
在各大中小学校,用计算机管理学校的信息已经越来越普遍了。用计算机不但可以提高工作效率,而且还节省了许多人力物力,增强了学校资料的安全性。提高了学校的管理能力,为此,用计算机来管理学校的信息,是非常必要的。
我作为一个计算机应用的大学生,希望能有所贡献。用我三年的所学编制了一个实用的程序来帮助桂阳一中进行更有效的学籍档案管理。

可行性研究:
目的:可行性研究的目的是用最小的代价在尽可能的时间内确定问题是否能够解决。
经济上可行性:
现在,计算机的价格已经十分低廉,性能却有了长足的进步。而本系统的开发,
为学校的工作效率带来了一个质的飞跃,为此主要表现有以下几个方面:
第一,本系统的运行可以代替人工进行许多繁杂的劳动;
第二,本系统的运行可以节省许多资源;
第三,本系统的运行可以大大的提高学校的工作效率;
第四,本系统可以使敏感文档更加安全,等等。
所以,本系统在经济上是可行的。
技术上可行性:

为本系统的开发我特对桂阳一中进行了深入的调查研究。现桂阳一中有32个班,其中一年级有10个班,二年级有9个班,三年级有13个班(包括文、理复读班),共有学生人数为1533人。学校有三十多台电脑及两台主机。并且开发人员对用户所提出的要求也都能够满足。

并且本系统的开发我利用Microsoft SQL Server2000作为本系统的数据库,它是一个支持多用户的新型数据库,适用于大中规模的数据量需求。学校校园网的建设也为新系统服务器/客户端的结构提供了硬件的支持。
使用Visual Basic6.0作为系统开发的开发环境,它作为一种现代的编程语言,提供完善的指令控制语句、类与对象的支持及丰富的数据类型,给开发高性能系统提供的保障为开发满足客户要求的系统,保证了代码的模块化要求,而代码模块化的提高,非常有利于以后对新系统的扩展与修改。
综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,它在技术上是可行的。

运行上可行性:
本系统为一个小型的学生信息管理系统,所耗费的资源非常的小,学校的电脑无论是硬件还是软件都能够满足条件,因此,本系统在运行上是可行的。
法律可行性:
本系统纯为私人设计,在开发过程中没有涉及合同、责任等与法律相抵触的方面。因此,本系统在法律上是可行的。

第二章:需求分析

21世纪以来,人类经济高速发展,人们发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。使原本的旧的管理方法越来越不适应现在社会的发展。许多人还停留在以前的手工操作。这大大地阻碍了人类经济的发展。为了适应现代社会人们高度强烈的时间观念,学校信息管理系统软件为学校办公室带来了极大的方便。我所开发的这个系统所采用的是当前较为流行的编程软件VISUAL BASIC 6.0作为实现语言,以数据库Microsoft SQL Server2000作为系统的后台操作,其功能在系统内部有源代码直接完成。我们只需按系统要求输入即可操作。

引言
在学校,学生信息管理工作是非常重要的一项工作,它负责整个学校的……,学生的……。以前是……。随着学校……,教务工作者急切希望……

学校工作流程分析
学校工作总体规划由教务人员在学生学籍信息管理系统中完成对运行教务处所需的基本数据的维护,包括这些信息的增加、修改及对各项信息的变动都将在这进行操作。
新的学年,教务人员首先加入年级信息,然后编排班级,再对来校学生进行基本的信息录入,新生入学后由教务人员在学籍系统中完成新学生信息的维护。
在每个学期开始,教务处根据班级的情况,以班为单位,为每个班级安排一个班主任及对此年级安排一个年级组长。并对各科老师进行安排。
每举行一次考试后由任课老师对本科的成绩进行录入。班主任对本班的成绩汇总。并进行排名,然后年级组长再进行汇总,并对本年级各科成绩及总成绩进行排名。
教务处、年级组长、班主任及任课老师跟据实际情况对录入的成绩进行维护,各位同学对以上录入的信息可以跟据自己的需要进行适当的查询。

学校具体需求分析
学生:对各科成绩的查询及查看本班成绩排名与年级成绩排名情况。
任课老师:输入并维护所教科目的学生成绩,计算本科的成绩排名、本科成绩在班上的排名。
输出本班科目的成绩及排名情况。
班主任:输入并维护本班的基本信息,对本班的各科成绩汇总,计算各科成绩的总分,排名,本班平均分等需求。
输出学生的基本信息,各科的成绩及各科成绩的部分,各科成绩的排名,总分的排名情况。
年级组长:对本年级学生基本情况的管理,对各班的成绩汇总,计算年级中各科成绩的排名,总成绩排名等需求。
输出年级学生基本信息,各科成绩的年级排名,总成绩在年级中的排名。
教务处: 学校全体成员的信息管理,对考试科目,时间及对所考科目的编号等进行具体的管理,并对任课老师,班主任等输入的信息进行存库,对学生的信息进行必要的维护,可打印学生的所有信息。

系统设计思想
1、 采用现有的资源,先进的管理系统开发方案,充分利用学校现有的资源,减少开发中的时间和财力、物力、提高系统开发的水平和应用效果。
2、 系统就满足学校的需求,例如学生信息的录入、查询、更新等。学生录入与排名。
3、 系统就具备数据库维护功能,及时根据用户需求进行数据添加、删除、修改等操作。

系统设计分析
本系统适用于中小学校,其功能主要分为六大类:
用户管理:用于对用户的添加,赋于不同权限及对用户的修改及查询。
课程管理:用于对各学期课程的开设和修改。
成绩管理:用于对成绩的输入、修改、汇总及排名。
班级管理:用于对班级的录入与修改。
帮助信息:用于对本系统的具体操作进行详解。
本系统性能力求易于使用,具体有较高的扩展性和可维护性。

系统功能分析
权限功能:为用户设置权限功能,可分为普通用户,一般用户,超级用户。普通用户只是查询不能修改,一般用户只能对授权范围内进行相应修改及删除,超级用户能修改、删除所有信息。
录入功能:为一般用户提供相应的录入功能,为超级用户提供对所有信息的录入功能。
查询功能:为所有用户提供查询的功能,可查询允许范围内的所有信息。
维护功能:为一般用户提供查询及相应的修改,删除功能,为超级用户提供对所有信息的修改删除功能。
打印功能:能打印全校学生的信息及积各班信息,科目成绩等。
帮助功能:能帮助初次使用者对本系统的应用及处理常见的问题。
退出功能:结束并关闭系统。

学生学籍系统的目标
节约资源,提高学籍信息的精确度
本系统能减少很多不必要的资源,不用象以前那样用冗余的纸张式的管理。大节省了学校能源。并且计算机的存储与快速查询功能大大提高了学籍管理的效率,并且还提高了学籍信息管理的精确度。
方便快速操作,精减人员,节约开支
方便快速的操作,可减少学籍信息管理的漏洞,又减少因工作的冗余出现的错误,并且操作非常简单,可减少许多不很必要的人员,这无论从物质上还是工作人员的工资上都为学校节约了开支。为学校增加了财富。

数据库分析
用户需求具体有学籍管理系统提供保存、更新、查询、维护和打印,这就需求数据库结构能充分满足各种信息的输入与输出,实现有组织地、动态地存储大量关联数据,方便用户访问系统中的数据,它与文件系统的重要区别是数据的充分共享,交叉访问,与应用程序的高度独立性。

数据流图描述:本系统从总体上分为系统信息管理、学生信息管理、课程管理、班级管理和成绩管理五大部分。每个模块有自己的作用。下面的各模块功能流图就是由各功能之间的关系而得出的。
(图2、图3、图4、图5、图6、图7、图8)

学籍信息录入流图(图2)

学生信息查询流图(图3)

学籍信息维护流(图4)

一般用户、超级用户
用户添加

用户信息

系统管理数据流图(图5)

课程开课信息

课程信息

年级、班级查询条件

课程管理数据流图(图6)

成绩录入

成绩排名

按学号
按科目
按班号

成绩管理数据流图(图7)

班级录入

班级学生名单及成绩

按班号
按年级

班级管理数据流图(图8)
数据字典:是关于数据的信息的集合,对数据流程图中的各个元素做完整的定义与说明
下面给出本系统几个数据元素的字典卡片与具体数据卡片的含义:
名称:用户信息
描述:管理员的基本信息表
定义:用户=用户名+密码+性别+联系电话+出生年月+家庭住址
用户名={英文字母、数字、特殊符号}
姓名={英文字母、数字、文字}
------------------------------------------------------
名称:学生表
描述:学校学生注册基本信息表
定义:学生表=学号+姓名+性别+班级+民族+籍贯+政治面貌+出生日期+入学日期 +家庭住址+联系电话+{备注}4
学号=11 {数字} 11
姓名=2 {文字} 4
--------------------—---------------------------------
名称:成绩录入表
描述:学校学生各科成绩基本信息表
定义:成绩录入=考试编号+学号+姓名班级+课程名+成绩
学号=11 {数字} 11
姓名=2 {文字} 4
----------------—-------------------------------------
名称:班级表
描述:学校各班班级基本信息表
定义:班级表=年级+班号+班主任+教室
班号=3 {数字} 3
年级=2 {文字} 2
-------------------------------------------------------
名称:课程表
描述:各年级所学课程的基本信息表
定义:课程表=课程编号+课程名称+课程类型+课程描述
编号=3{数字}3
名称=4{文字}4

第三章:概要设计

目的:设计系统结构,根据需求要析给出的功能得出系统体系结构。如划分模块。

目标:通过本系统软件,能帮助工作人员利用计算机,快速方便的对所属学校的信息管理进行维护、输入、输出、查找的所需操作,使散乱的学校数据能够具体化,直观化、合理化。
运行环境:Windows2000/NT或更高的版本。
总体设计
处理流程:1.启动系统,激活登陆口令界面。
2.通过验证后,对系统进行初始化。
3.系统进入消息循环,通过事件驱动机制激活相应的功能模块,并执行相应的功能;
4.通过关闭系统事件,激活关闭系统模块,退出系统。
系统模块菜单:
学生学籍信息管理系统
用户管理
添加用户
修改用户
删除用户

学籍信息管理
添加学籍信息
查询学籍信息
修改学籍信息
删除学籍信息

班级信息管理
添加班级信息
修改班级信息

课程信息管理
添加课程信息
修改课程信息
设置年级信息

成绩信息管理
添加成绩信息
查询成绩信息
修改成绩信息
删除成绩信息
帮助文件
帮助信息
学生信息管理系统所需完成具体的功能:
系统管理模块: 用户的添加、删除、修改及权限的赋予。
学生信息管理模块:输入学生基本信息,并可以对学生信息进行添加、查询、修改、删除。还可以关键字查询并从数据库里调出的学生基本信息.
输出学生基本信息,学号、班号、姓名查询的信息结果。
班级信息管理模块: 输入班号、教室号、班主任等信息,并可以对班级信息进行添加、修改。包括班号、教室号、班主任、年级的录入及修改。
输出班号、教室号、班主任年级等信息。
成绩信息管理模块:输入成绩信息,并可以对成绩信息进行添加、查询、修改、删除。还可以用关键字查询并调出数据库里的学生基本成绩信息的修改、删除等。
输出查询的学生成绩信息。
课程信息管理模块:输入课程的基本信息,并可以对课程信息进行添加、修改、删除及课程设置。课程设置能够对各年级的课程进行分类。划分学期所学的课程。
输出课程的基本信息、年级及学期中所要学的课程等。

系统模块图:(图9)

帮助信息

添加班级信息 修改班级信息
添加成绩信息 修改成绩信息 删除成绩信息 查询成绩信息
添加用户 修改用户 删除用户 退出系统
添加学生信息 修改学生信息 删除学生信息 查询学生信息
添加课程信息 修改课程信息 设置年级课程

(图9)

接口设计
外部接口:用户一般通过终端进行操作,用户进入界面后进行相应的操作。
硬件接口:赛扬133 、内存32兆以上PC机满足输入端条件。
软件接口:Windows2000/NT或更高的操作系统。
内部接口:内部接口(模块之间的接口)
验证模块:启动系统时,便激活登陆口令界面;
初始化模块:对系统进行初始化;
系统功能模块:接收系统功能的相应消息,启动信息录入、信息查询、信息维护、SIM维护等模块。

各模块的具体分析:
1.系统管理模块:用于管理系统的用户及赋于权限对本系统的操作。实体E-R图如下:(图10)

(图10)
2.学生信息管理:主要用于学生的基本信息管理(如学号、姓名、性别、出生年月、联系地址等)。实体E-R图如下:(图11)

(图11)
3.班级管理:主要以班为单位对于学校班级信息管理。实体E-R图如下:(图12)

(图12)
4.成绩管理:主要用于学生考试的成绩进行管理(如统计分数等)实体E-R图如下:(图13)

(图13)
5.课程管理:主要用于学生课程的管理(如各学期的课程安排等)实体E-R图如下:(图14)

(图14)
系统维护模块:主要是对学校信息管理系统进行日常维护,该模块又包括:修改用户密码、增加与删除用户、数据备份、数据整理等功能。

关系型数据库的实现:Microsoft SQL Server2000 就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。Microsoft SQL Server2000 的优点在于它非常的可靠、质量好、易用、可伸缩性、简单的管理和调整(能自动运行管理和性能监测,提供了集中的数据库管理。)、灵活的和可扩展的数据转换(能够构建更加坚固的数据转换服务(DTS)软件包)、集成了可扩展的分析服务(提供了数据采集、为生成报表而设计了灵活的向上流动特性,实现单元级和成员安全的功能,还有写回原始大小的能力)。自定义窗体收集信息。数据表示图提供了一种类似于 Excel 的电子表格,可以使数据库一目了然,还提供了排序功能。Microsoft SQL Server2000也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。如上所述, Microsoft SQL Server2000 作为关系数据库开发具备了许多优点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。
运行设计
运行模块的组合图(图15)

(图15)
出错处理设计
出错输出信息:本系统采用人-机对话模式,若操作失误则弹出对话框(如:身份验证、输错信息等)
出错处理对策:用户可根据弹出对话框中的提示信息进行操作。

安全保密设计:系统进入时设计了登录界面,并且对用户进行了权限区分。分为一般用户、管理员,对一般用户只可以进行查询,只有管理员才可以对信息进行删除与修改。另外还设计对数据的备份及还原,从而实现了数据可移植性。

第四章:详细设计
目的: 为系统中的每一个模块确定使用的算法和块内数据结构,并用表达工具给出清晰的描述。
实现数据库之间的联系:数据库之间的关系指明两个库之间共享一个共同的关键字值。一个连接是指一种虚拟的表,这种表是在当用户要求从相互关联的各个不同的表中获取信息时建立的,关键字段用于在相互连接的不同表中查找匹配的记录。一个更高级的连接形式称为自连接。这种连接是指一个表被连接到它自己的一个字段,或在不同的纪录中由重复数据的组合字段。数据库中有三种不同类型的关键字:主关键字、组合关键字和外关键字。在表中使用的关键字类型用于描述库表示什么以及在数据库中如何与其它的库建立关系。
下面为本系统的数据流程图:(图16)

查询成员
学生基本信息录入

维护统计
班级注册

成绩查询结果

成绩和学生挡案打印
成绩维护
成绩录入
成绩打印

(图16)

修改已建的数据库:数据库的修改分为添加、编辑和删除记录。我都由Visual Basic 创建的程序来实现。

与Visual Basic 6.0的连接:Visual Basic 6.0提供了与底层数据库系统紧密的连接。Visual Basic 6.0 支持不同的关系数据库管理系统并充分发挥每一个数据库的特长。生成独立应用或脱离服务器运行的服务以上的应用,Visual Basic 6.0连接数据库的方式有两种:
•通过使用Visual Basic的 DATA控件。
•通过使用由Visual Basic提供的专用的直接与数据库相连的接口。

程序描述
功能模块的描述与数据表的创建如下:

学籍模块:
该模块主要完成学生基本信息的录入、删除 、更新等功能。在此模块中定义了九个域名来进行学生的信息存储。如果用户修改某一纪录中的某一项,可单添加按钮进行学生记录的编辑,此窗口使用数据窗口的FREEDOM风格(典型的录入界面)。该种风格特点是列标题紧挨着数据列在此窗口还可以增加新学生纪录。

学生基本信息表:
学生基本信息表里存储了学生的档案包括:学号、姓名、性别、年龄、班号等 表如下图

主键:学生学号
列名 数据类型 长度 允许空
学生学号
学生姓名
学生性别
出生日期
班号
联系电话
入校日期
政治面貌
籍贯
民族
家庭住址 Varchar 50 Yes
注释 Varchar 200 Yes

班级模块:
班级模块主要完成班级信息的录入、删除 、更新等功能。在此模块中定义了四个域名来进班级信息表的存储。

班级信息表:
班级信息表里存储了学生的信息包括:班号、年级等 表如下图

主键:班号
列名 数据类型 长度 允许空
班号
年级
班主任
教室

课程模块:
该模块主要完成存储课程的所有信息及录入、删除 、更新等功能。此模块主要有四个域名来进行学生课程信息的存储。

课程信息表:
课程信息表存储了课程的信息:课程纺号、名称、描述等如下表:

主键:课程编号
列名 数据类型 长度 允许空
课程编号
课程类型
课程描述

年级模块:
该模块主要完成存储年级与课程信息的录入、删除 、更新等功能。此模块主要有二个域名来进行年级信息的存储。

年级课程信息表:
年级课程信息表存储了年级的信息:年级、课程等如下表

年级课程信息表:
列名 数据类型 长度 允许空
年级
课程

成绩模块:
该模块主要完成学生成绩的基本信息的录入、删除 、更新等功能。在此模块中定义了六个域名来进行学生的信息存储。

成绩信息表:
成绩信息表里存储了学生的成绩包括:学号、成绩等如下表

列名 数据类型 长度 允许空
考试编号
学生学号
课程名称
分数

用户模块:
该模块主要完成用户基本信息的录入、删除 、更新等功能。在此模块中定义了三个域名来进行学生的信息存储。

用户信息表:
用户信息表里存储了用户的信息包括:用户名、密码等如下表
用户信息表:
列名 数据类型 长度 允许空
用户名
用户密码
用户注释
以上几张表为本系统的基本信息,还不够完善,以待改进。

程序逻辑
模块功能实现的算法流程图:(图17、图18、图19、图20、图21)

各实体间的E-R图(图17)

录入模块流程图(图18)

查询模块流程图(图19)

维护模块流程图(图19)

系统维护模块流程图(图20)

系统的实现:
设置数据库,选择“开始设置|控制面板,菜单,打开”管理工具文件夹,双击“数据源”项目,在弹出的对话框中选择“文件DSN”标签页,然后单击“添加”按钮,选择“SQL SERVER”项目。单击“完成”按钮,在名称文本框中填写“Hotel_MIS”,服务器中选择“(local)”, 单击“下一步”按钮,选择登录ID,这里使用认的选择,也可发自己设置其他的登录方式。单击“下一步”按钮,出现选择认数据库对话框,选中“更改认数据库为:”选项,然后选择“student”,单击下一步,单击完成按钮,完成数据源设置。单击“测试数据源”进行数据源测试,出现测试成功,单击“确定”,退出数据源设置。
在系统文件中选择SQL文件,复制此文件,然后按开始菜单选择Microsoft SQL Server2000/查询分析器/把此文件复制到此文件中,单击保存就可以生成数据库了。然后运行这个程序会出现登陆窗口。输入用户名和密码后,就可以进入系统了。

第五章:编码
见附录

第六章: 结束语
经过二个多月的设计和开发,永兴三中学籍管理系统基本开发完毕。其功能基本符合用户需求,能够完成学生学籍的存储和成绩的查询以及各类相关报表的打印。
但是由于毕业设计时间较短,所以该系统还有许多不尽如人意的地方,比如用户界面不够美观,出错处理不够等多方面问题。这些都有待进一步改善。

致谢:
在系统开发的两个月里,我受到了指导老师李平建老师的细心指导,李老师严谨的指导态度与深厚的理论知识都让我受益非浅,从他身上我学到了很多的东西,无论是理论还是实践都使我的知识有很大的提高.借此我特提出感谢.
同时我还感谢母校的老师,谢谢他们为本系统提供的帮助.让我能够顺利地完成本系统的开发.也感谢那些对我提供帮助的同学,没有他们就不会现在的系统.

第七章
参考文献
[1]软件工程 作者:陈明 中央广播电视大学出版社 2001年
[2]Visual Basic程序设计 作者:陈明 中央广播电视大学出版社 2000年
[3]Visual Basic6.0数据库系统开发实例导航 作者: 刘韬、骆娟、何旭洪
人民邮电出版社 2002年
[4]数据库基础与应用 作者:王利 中央广播电视大学出版社 1997年
[5]SQL Server2000系统管理 飞思科技产品研发中心 电子工业出版社 2001年
[6] Visual Basic 6.0 使用指南 作者:Bob Reselman , Richard Peasley , Wayne Pruchniak.
电子工业出版社
[7] Visual Basic 6.0 中文版控件大全 作者:Microsoft电子工业出版社

附录:

参考资料:毕业设计资料参考:http://bylw.woku.com

温馨提示:答案为网友推荐,仅供参考
第1个回答  2007-04-19
使用网页ASP做的吗?

要是是的化我到是有个以前做的
第2个回答  2007-04-19
给你发一个,QQ 找我86711527
第3个回答  2007-04-19
来凑热闹
第4个回答  2007-05-02
楼上的怒了
第5个回答  2007-04-19
很简单的 自己想想
相似回答