《学生管理系统毕业论文.doc》由会员分享,可在线阅读,更多相关《学生管理系统毕业论文.doc(53页珍藏版)》请在三一办公上搜索。
1、 毕业论文 学生信息管理系统 Personnel Management System学 生 姓 名: 专 业 班 级: 指 导 教 师: 完 成 日 期: 2010-5-08 吉林工业职业技术学院 Jilin Vocational College of Industry and Technology摘 要随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。 本文介绍了在ASP环境下采用“自上而下地总体规划,自下而上地应用开发
2、”的策略开发一个管理信息系统的过程。通过分析某一学校学生管理的不足,创建了一套行之有效的计算机管理学生的方案。文章介绍了学生管理信息系统的系统分析部分,包括可行性分析、业务流程分析等;系统设计部分主要介绍了系统功能设计和数据库设计及代码设计;系统实现部分说明了几个主要模块的算法,本系统界面友好,操作简单,比较实用。【关键字】:管理信息系统、学生管理、ASP应用。SummaryWith more and more widespread and profound application of information technology in management, the implement o
3、f management information system has become mature in technology step by step. Managing information system is a new subject. Enterprise needs existence and development, so enterprise activities should be organized efficiently and organically, which means tightening up the enterprise management and st
4、rengthening effective management of any resource (staff, finance, property, etc.) internal the enterprise, and also establishing a management information system fitting in with its own characteristics.This article introduces the detailed process of exploring a management information system under the
5、 environment of visual foxpro, utilizing “Top-Bottom” overall plan and a strategy according to “Bottom-Top” application and exploitation. That is to establish a set of effective scheme for student management by computer, through analyzing disadvantages of student management by human resources. This
6、article emphasizes on three sections. The system analysis section of student management information includes feasible analysis, management function analysis.The system design section mainly focuses on system function design and data base design and data number design. And the system realization sect
7、ion has provided several major function , together with the main windows and programs.This economical and pragmatic system has explicit interface, with simple operation.Keywords :MIS、student management、A S P application前 言今天的中国已经加入了WTO,利用计算机进行现代化管理已经接近于普及。我们身处在一个知识日新月异、时刻充满挑战的时代,科技的飞速发展使我们知道只有走在时代前言
8、的人才可以随时随地抓住机遇来获取生存,而这一切的前提就是你要拥有比别人更多、更前卫的知识,知识的来源是学习随时随地的学习!学习!再学习!作为当代大学生,应有长远的目光和随机应变的能力,应走在时间的前面,掌握最新的社会动态、最先进科学技术,以调整自己的知识结构和能力结构,去适应社会的发展。新世纪需要具有丰富现代科学知识的人;需要能够独立解决问题、完成工作的人;需要能独当一面、时常挑战自己极限的人;需要有创新意识的人。我们在不断努力中学习做一个与时代并进的人。科技的飞速发展,计算机的现代化管理使人们在从事各行各业内部管理上都进行快速便捷的管理,每个行业的各个环节都不另外,所以为了方便启见,我现做出
9、学生信息管理系统.用来方便管理学生的个人档案,所在班级,所学课程,所属专业等。本系统主要目的是方便管理员对学生的个人档案及详细情况进行管理。关键词: 学生信息管理系统、数据库摘 要2Summary3前 言4编程环境基础知识61.1 ASP的特点61.2 程序使用的对象及其属性和方法81.3 Web服务器的选择91.4 IIS简介9需求分析102.1功能需求102.2性能需求10总体设计103.1系统模块结构设计103.2数据库设计143.2.1概念结构设计153.2.2 逻辑结构设计183.3数据库的实现20详细设计204.1模块详细设计204.1.1客户端注册模块模块详细设计204.1.2用
10、户登录模块详细设计224.1.3管理员登录模块模块详细设计244.1.4 学生信息系统编辑模块模块详细设计264.1.4学生信息系统添加模块模块详细设计274.1.6学生课程的添加模块324.1.7注册学生课程344.1.8学生课程的修改374.1.9学生课程删除404.1.10学生的成绩添加444.1.11查询模块48结束语53参考文献54编程环境基础知识1.1 ASP的特点ASP是一种未经编译的开放式的应用软件,是微软公司推出的一种用以取代CGI(公共网关接口即Common Gateway Interface)的技术,它实质上是一种服务器端脚本环境。ASP被包含在IIS 3.0及其更高版本
11、之中。通过ASP,用户可以结合HTML网页、ASP指令和ActiveX组件建立动态、交互且高效的Web服务器应用程序。ASP的出现使用户不必担心客户端不能正确运行所编写的代码,因为所有的程序将在服务器端执行,包括所有内嵌的普通HTML中的脚本程序。客户端只要使用可执行HTML代码的浏览器,即可浏览通过ASP设计出来的页面内容。当程序执行完毕后,服务器仅将执行的结果返回给客户端浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。ASP并不是一种纯粹的编程语言,它所用的语言是大多数人都非常熟悉的两种脚本语言,即VBScript和JavaScript语言。在一个ASP应用程序中可以用其中
12、一种脚本语言,也可以结合这两种语言使用。另外ASP还能与任何ActiveX Scripting语言相兼容。ASP使用的ActiveX技术是基于开放设计环境的,用户可以使用Visual Basic、Java、Visual C+、GOBOL等编程语言将自己定义和制作的组件加入其中,是自己的动态网页具有无限的扩充能力,这是传统的CGI等程序所远远不及的地方。另外,ASP可利用ADO(Active Data Object,微软公司的一种数据访问模型)方便地访问数据库,从而使得开发基于WWW的应用系统成为可能。ASP的编辑环境要求非常简单,任何一种文本编辑器都可以编写ASP应用程序。使用ASP开发网页应
13、用程序具有以下一些特点:(1)完全内嵌,与HTML和Script语言充分结合。(2)无需编译,容易编写,可在服务器端直接运行,且Web程序开发时间短。(3)无浏览器兼容问题。(4)程序代码隐藏,在客户端只能看到由ASP输出的动态HTML文件。(5)使用任何文本编辑器都可以进行编辑设计。(6)可使用任何语言编写自己的ActiveX Server组件。(7)使用ADO组件轻松存取数据。(8)面向对象,并可扩展的ActiveX Server组件。一个以ASP为基础的应用程序包含了Web服务器的虚拟目录(Virtual Directory)以及虚拟目录下的所有文件夹与执行文件。虚拟目录主要是为了保护服
14、务器端站点的内容和资料,避免受到网络黑客的恶意破坏和攻击而产生的。在提供WWW服务的服务器端,虚拟目录的作用是不让客户端用户知道一些目录与重要文件的真实路径,也就是说每一个绝对路径(即真实路径)都已经隐藏起来,这些可以供网络客户访问的Internet资源都会以服务器的文档根目录(Document Root)作为相对路径的基点(Base),或者另取一个从表面上看来毫无关系的别名(Alias Name)来隐藏真实目录名称。这些相对目录就称为虚拟目录,相对路径和绝对路径是相对立的。另外,每个ASP Web应用程序都拥有一个Global.asa文件,后缀名asa是Active Server Appli
15、cation的缩写。(1) ASP文件的存取方式使用任何一种文本编辑器都可编写ASP应用程序,编写的程序要以后缀名.asp保存,不可以保存为.html形式。如果是以.html形式保存的话,服务器端将不编译文件中所有的包含ASP语法的语句。将文件保存为后缀名.asp的形式是为了告诉提供ASP服务的服务器,这是一个ASP应用程序,必须在给客户端送出文件之前把它编译一遍。将.asp后缀名的文件编写存储完毕之后,就可以把它放在自己的Web服务器上执行,这样就能够在浏览器端看到ASP页面的输出效果了。(2) ASP文件的结构特点到目前为止,我们已经知道ASP能够和HTML、Script语言完美结合。在这
16、之前一直都称开发的项目为应用程序,或许有些人认为ASP文件是一个已经被编译过的文件,但ASP文件是一个文本文件,可以用任何一种编辑器打开它,并对它进行适当的编辑修改。一般情况下一个ASP包含以下几个部分:(1)普通的HTML文件。(2)客户端的Script程序代码,放置于和标签之内。(3)服务器端的ASP Script程序代码,放置于标签之内。(4)Server Side Include语句,即使用#Include的语法在本页面嵌入其他的Web页面。ASP的服务器会将其原封不动的发送到客户端,由客户端的浏览器进行处理。目前在ASP中可以使用的脚本语言主要是VBScript和Jscript,其中
17、系统默认的脚本语言为VBScript。不过任何一个可以和ActiveX Script标准兼容的脚本语言引擎都可以很好地应用于ASP之中。1.2 程序使用的对象及其属性和方法(1)Request对象(从客户端获取信息,主要是读取提交表单中的数据)QueryString: 从查询字符串中读取用户提交的数据;Form:获取客户端在FORM表单中所输入的信息;Cookies: 取得客户端浏览器的Cookies信息。(2)Response对象(返回信息到客户端,主要是向浏览器输出文本、数据、Cookies等)Response.Write: 直接送出信息到客户端;Response.Redirect: 引导
18、客户端浏览器至新的Web页面;Response.End: 终止处理ASP程序,并返回当时的状况。(3)Session对象(为单个用户保存信息)利用Session存储信息的语法:Session(”Session名字”)=变量或字符串信息(4)Server对象CreatObject方法: 用于创建组件、应用对象或脚本对象的实例CreatObject的语法如下:Set Server.CreatObject(ActiveX Server组件)(5)Connection对象(ADO的内部对象,用来建立与数据库的连接) 在ADO中建立对象一般要用Server对象的CreatObject方法,语法如下:Se
19、t Connection 对象=Server.CreatObject (“ADODB.Connection”)Open方法: 用于建立和数据库的连接;Close方法: 用来关闭一个已打开的对象及其相关的各种对象;Execute方法: 用来执行数据库查询。(6)Command对象(用来对数据库执行命令,如查询、添加记录等命令)Execute方法: 用来执行数据库查询。(7)Recordset对象(用来得到从数据库返回的记录集)建立Recordset对象的语法如下:Set Recordset 对象=Server.CreatObject(“ADODB. Recordset”)用Open方法打开数据库
20、的语法如下:Recordset对象.OpenSourse,ActiveConnection,CursorType,LockType,Options1.3 Web服务器的选择要使自己的计算机成为Web服务器就要安装相应的Web服务器软件。有许多的Web服务器可以用来建立Windows下的Web站点。但是不同的Web服务器支持不同的功能。选择Web服务器时,最重要的是使Web服务器易于建立和管理。其次选择服务器时应注意服务器提供的安全程序,如果Web站点只为浏览Web站点的用户提供大量的信息,那么安全性问题并不十分重要,但如果要在网上提供重要信息时,应确保数据在传输之前进行加密,这时可以使用一种安
21、全机制进行传输。另外,Web服务器必须支持CGI脚本(包括ASP)。通过提供动态内容和及时响应用户输入,CGI脚本使得用户可以与服务器进行交互。此外Web服务器还应支持日志文件,这对于Web管理员及时了解站点的反问情况并做出相应的决策有帮助。1.4 IIS简介IIS是Windows NT提供的Internet服务的核心,Windows NT的安装光盘上带有IIS。IIS是微软公司为企业和部门发布信息而设计的,一般用于大型的站点。IIS 5.0 是新一代的Web服务器软件,它包括许多新的特征:(1) ASP3.0解释工具和ASP调试工具。(2) 功能强大的Microsoft Management
22、 Console、Microsoft TransactionServer等管理工具。(3) 对多Web站点(虚拟主机)支持。(4) 对Web站点内容完全控制。(5) 使用SSL3进行更加安全的客户验证。(6) Microsoft Index Server微软高性能索引器。(7) HTTP1.1和HTTP重定向支持。(8) 用来进行站点评估的Site Analyst。 需求分析2.1功能需求学生信息管理系统分为两个模块即客户端和服务器端,客户端可以实现的是用户进入浏览页后通过注册用户名和密码,然后登录查看学生的简单信息,还可以通过学号查询一些学生信息. 服务器端是管理员登录后进入管理员页可以对学
23、生信息,成绩,课程,班级进行查找、添加、修改和删除。使管理更加便捷更加系统化2.2性能需求依据功能需求,系统开发所要使用的硬件环境:.中央处理器 133MHZ中央处理器.内存 256M .硬盘 至少大约1G空间.分辨率:1024*768软件环境:可使用的软件有Dreamweaver MX、Access,开发语言:VB script、SQL总体设计3.1系统模块结构设计本系统主要实现以下一些基本功能:1) 学生信息管理系统的主页:主要是实现对客户端的浏览及各模块的连接.2) 学生信息系统的编辑:主要是管理员对学生个人信息,班级所选专业,每个学生所选课程及成绩的添加,删除和修改.3) 学生信息系统
24、的查询:主要是管理员对学生个人信息,班级所选专业,每个学生所选课程及成绩进行各自的查询.4) 学生信息的统计:主要是统计学生成绩的各课成绩,总分,平均分.5) 数据维护和安全管理:数据维护主要对后台数据库进行管理和维护,包括添加、删除、修改等操作,实现对数据库的更新,可以提高系统的运行效率;安全管理主要是对用户的信息进行管理。学生信息管理客户端管理员登录管理员浏览页管理员页用户注册用户登录用户查询学生信息查询学生信息编辑学生信息添加学生信息查询学生课程查询学生成绩查询学生班级查询学生课程学生信息学生成绩学生班级学生信息修改学生信息删除学生成绩添加学生成绩删除学生班级删除学生课程添加学生课程修改
25、学生课程删除学生成绩修改学生班级修改学生班级添加图3.1网站内容login.aspdefault.aspindex.aspzc.aspStudent.aspstudentimagesindex.asp数据库管理员客户端brows.aspsu.aspxsxx.aspkcxx.aspbjxx.aspcjxx.asplogin.aspcx.asp学生表课程表成绩表班级表管理表用户表subject.aspsubjectadd.aspclass.aspclassadd.aspchengji.aspcjadd.aspcjupdata.aspstudentadd.aspcjdel.aspscjupdata.
26、asp图3.2网站目录设计default.asplogin.aspbrows.aspindex.aspzc.aspStudent.aspsubject.aspsubjectadd.aspclass.aspclassadd.aspchengji.aspstudentadd.asp是否是管理员login.asp是否su.aspkxxx.aspxsxx.aspcjxx.aspcx.aspbjxx.aspcjadd.asp图3.3链接设计和导航类型3.2数据库设计数据库在任何系统中占有非常重要的地位,它是数据的来源。数据库的结构好坏,将直接影响到系统功能的实现。所以建库前要做好充分的准备。首先,要了解
27、用户各个方面的需求,他们的需求主要体现在各种信息的提供、保存、更新、查询。其次,要收集基本的数据,并理清其中的关系,以备后用。Access2000 就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。Access 的优点在于它能使用数据表示图或自定义窗体收集信息。数据表示图提供了一种类似于 Excel 的电子表格,可以使数据库一目了然。另外,Access 允许创建自定义报表用于打印或输出数据库中的信息。Access也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。Access 是一种关系数据库工具,关系数据库是已开发的最通用的数据
28、库之一。如上所述,Access 作为关系数据库开发具备了许多优点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。根据学生信息管理系统的要求,通过对学生信息管理工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:学生信息包括的数据项有:姓名、性别、出生日期、学号、家庭地址、专业、班级、电话、政治面貌、个人简介、密码。学生课程信息包括的数据项有:,班号、课程1、课程2、课程3、课程4、课程。学生成绩信息包括的数据项有:,班号、课程1、成绩、课程2、成绩2、课程3、成绩3、课程4、成绩4。、成绩。班级信息表包括的数据项有:班号、专业、学制.管理员登录信息包括的数据项有
29、:自动编号、用户名、密码。用户信息表包括的数据项有:自动编号、用户名、密码。有了上面的数据结构、数据项和数据流程,我们就能进行下面的数据库设计3.2.1概念结构设计得到上面的数据项和数据结构以后,就可以设计出满足用户的各种窗体,以及它们之间的关系,为后面的逻辑结构设计打下基础。本实例根据上面的设计规划出的实体有:管理员登录实体、用户信息表实体、学生信息实体、实体、学生课程信息实体、学生成绩信息实体、班级信息实体。各个实体具体的描述E-R图如下。1. 管理员登录实体的E-R图如下:管理员登录用户名密码自动编号2. 用户信息实体的E-R图如下:用户信息用户名密码自动编号3. 学生课程信息实体实体的
30、E-R图如下:学生课程课程班号课程2课程4课程34. 学生成绩信息实体的E-R图如下:学生成绩课程4班号课程3课程2课程1成绩3成绩2成绩1成绩45. 学生信息实体的E-R图如下:专业学生信息家庭地址电话出生日期班号性别姓名学号个人简介政治面貌6. 班级信息实体的E-R图如下:班号班级专业学制3.2.2 逻辑结构设计数据库的概念结构设计完成后,现在可以将上面的数据库概念结构转化为数据库的逻辑结构。学生课程班级学生学生成绩选修学生学生所在考试3 2.3物理结构设计1. 管理员信息表如下:列名数据类型字段大小必填字段说明yhm文本50否用户名mm文本50否密码ID自动编号50是ID2. 用户信息表
31、如下:列名数据类型字段大小必填字段说明yhm文本50否用户名mm文本50否密码ID自动编号50是ID3. 学生信息表如下:列名数据类型字段大小必填字段说明xh文本50是学号xm文本50否姓名xb文本50否性别born日期50否出生日期jd文本50否家庭地址zy文本50否专业bh文本50否班级dh文本50否电话zzmm文本50否政治面貌jl文本50否个人简介mm文本50否密码4. 学生课程信息表如下:列名数据类型字段大小必填字段说明ID自动编号50是IDbh文本50否班号Kc1文本50否课程1Kc2文本50否课程2Kc3文本50否课程3Kc4文本50否课程45. 班级信息表如下:列名数据类型字段
32、大小必填字段说明bh文本50是班号zy文本50否专业xz文本50否学制6. 学生成绩信息有如下:列名数据类型字段大小必填字段说明ID自动编号50是IDbh文本50否班号Kc1文本50否课程1Cj1日期50否成绩Kc2文本50否课程Cj2文本50否成绩Kc3文本50否课程Cj3文本50否成绩Kc4文本50否课程Cj4文本50否成绩3.3数据库的实现经过前面的需求分析和概念结构设计以后。现在就可以在Access数据库中创建数据表了。打开Access软件,新建数据库命名为“xsgl.mdb”。在其上通过表设计器分别新建用户信息表、管理员信息表、学生信息表、学生课程表、学生班级信息表、学生成绩信息表。
33、在用户信息表中添字段时,必须考虑到用户名和密码的数据类型和字段大小。经过我的考虑,我定用户名和密码的数据类型为文本型即什么类型的字符都可以。定用户名的字段大小为50个字符,密码的字段大小为50个字符。同理,我考虑好了管理员信息表、学生信息表、学生课程表、学生班级信息表、学生成绩信息表中应填写的字段名,且经过考察,定下了这些字段的数据类型和字段大小。在填写记录时,一定要谨慎,和字段名必须相对应,且要符合字段名的数据类型和字段大小。我按照自己定下的规格,将自己收集到的数据填写在了相应的表中。 详细设计4.1模块详细设计4.1.1客户端注册模块模块详细设计1模块功能:通过表单用户注册姓名和密码到数据
34、库(xsgl.mdb)表(yhxx)中,填写姓名,密码不能为空;若为空则返回当前页,注册成功后回到登陆页(default.asp).2.界面设计:3处理过程设计:模块标识:zc.asp编程语言:VBScript模块接口:调用模块名:zc.asp 被调用的模块名:zc.asp default.asp输入的文件:zc.asp输出的文件:default.asp xsgl.mdb(yhxx)使用的文件或数据库标识:使用主要内存变量的名称与类型:yhm,mm处理概要:通过zc.asp中的表单输入数据,若其中的用户内容、姓名不为空,建立记录集对象,指定相关属性,打开记录集,通过记录集对象的添加记录到数据库
35、表中,然后返回default.asp。4.关键代码分析:%if request.Form(yhm) and request.Form(mm) thendim dbset db=server.CreateObject(adodb.connection)db.open driver=microsoft access driver (*.mdb);dbq= &server.MapPath(xsgl.mdb)dim syhm,smm,strsqlsyhm=trim(request.form(yhm)smm=trim(request.form(mm)strsql=insert into yhxx(yhm
36、,mm) values( & syhm& , & smm & )response.Write strsqldb.execute(strsql)response.Redirectdefault.aspelseresponse.Write 请把信息填写完整response.Write 重新填写 end if%4.1.2 用户登录模块详细设计1. 登录名称:用户登录模块标识:default.asp模块功能:通过表单将输入的用户名和密码加入到用户数据库(xsgl.mdb)表中(yhxx)表的用户名不能为空;登录成功后回到首页(index.asp).编程语言:VBScript2 模块接口:调用模块名:d
37、efault.asp 被调用的模块名:index.asp default.asp输入的文件:default.asp输出的文件:index.asp xsgl.mdb(yhxx)使用的文件或数据库标识:使用主要内存变量的名称与类型:yhm,mm3 处理概要:通过default.asp中的表单输入数据,若其中的用户内容、用户不为空,建立记录集对象,指定相关属性,打开记录集,通过记录集对象的记录和数据库表中条件比较,然后返回index.asp。4.关键代码分析:%dim db,strsql,rs,strsql1,rs1set db=server.CreateObject(adodb.connectio
38、n)db.Open driver=microsoft Access driver (*.mdb);dbq= &server.MapPath(xsgl.mdb)if trim(request(yhm1) and trim(request(mm1) thenstrsql1=select * from yhxx where yhm=&request(yhm1)& and mm=&request(mm1)&set rs1=db.execute(strsql1)if not rs1.bof and not rs1.eof thensession(id)=rs1(id)response.redirect
39、index.aspelseresponse.write 对不起,密码不正确,请重新输入end ifend if%用户登录姓名:密码: 4.1.3 管理员登录模块模块详细设计1 登录名称:管理员登录模块标识:login.asp模块功能:通过表单将输入的用户名和密码加入到管理员数据库(xsgl.mdb)表中(gly)表的用户名不能为空;登录成功后回到管理员页(brows.asp).编程语言:VBScript2 模块接口:调用模块名:login.asp 被调用的模块名:(brows.asp default.asp, login.asp输入的文件:login.asp输出的文件:(brows.asp x
40、sgl.mdb(gly)使用的文件或数据库标识:使用主要内存变量的名称与类型:yhm,mm3.界面设计:4 处理概要:通过login.asp中的表单输入数据,若其中的用户内容、密码不为空,建立记录集对象,指定相关属性,打开记录集,通过记录集对象的记录和数据库表中条件比较,然后返回brows.asp。5.关键代码分析:%dim db,strsql,rsset db=server.CreateObject(adodb.connection)db.Open driver=microsoft Access driver (*.mdb);dbq= &server.MapPath(xsgl.mdb)if trim(request(yhm) and trim(request(mm) thenstrsql=select * from kly where yhm=&request(yhm)& and mm=&request(mm)&