毕业设计基于BS的学生学籍管理系统的设计与实现.docx
- 文档编号:10462711
- 上传时间:2023-02-13
- 格式:DOCX
- 页数:26
- 大小:122.33KB
毕业设计基于BS的学生学籍管理系统的设计与实现.docx
《毕业设计基于BS的学生学籍管理系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《毕业设计基于BS的学生学籍管理系统的设计与实现.docx(26页珍藏版)》请在冰豆网上搜索。
毕业设计基于BS的学生学籍管理系统的设计与实现
WEB课程设计报告
课程设计题目:
基于B/S的学生学籍管理系统的设计与实现
姓名:
专业:
班级:
指导老师:
2012年5月5日
摘要
随着Internet/Intranet的快速发展,数据库技术的进一步成熟,建立能业务化工作的学生学籍管理系统是当前高校管理部门的迫切要求。
文章参考了目前国内高校学生管理的发展情况及管理模式,借鉴了目前国内先进的大型管理系统,对高校学生学籍管理进行了总体设计,建设基于Web的运行平台,实现方便快捷的前端Web登录和查询,采用了SQl作为后台数据库,采用ASP及ADO技术对数据库进行操作及维护。
基于B/S结构的学生学籍管理系统(以下简称SSMS)是利用ASP技术和Web数据库相结合实现的,它具有数据输入、查询修改、补考处理、毕业处理和报表输出等功能。
它的成功实现对提高高校的学生管理水平具有非常重要的意义。
关键词:
B/S结构Web数据库ASP对象三级客户机/服务器体系
1引言
20世纪90年代以来,全球信息技术发展明显加快。
网络的普及应用大大推动了计算机应用的发展。
从国防军事、交通运输、财政金融、科学教育等大型系统,到一个企业、一个机关、一所学校、一座饭店的内部管理,几乎都采用了计算机网络管理。
网络发展已经超越了国界,跨越了地域,使地球上的人们似乎生活在一个“地球村”里。
在新的世纪里,信息技术迅猛发展,而网络技术和数据库技术又是信息技术最主要的核心。
于是,基于Web的数据库也就应运而生了。
随着Internet/Intranet技术的发展,开发基于Web的应用程序势在必行,数据库技术需要和Web技术相结合,才有更为广阔的前景。
ASP作为微软推出的新兴Web应用程序开发技术,在数据库应用方面发挥着越来越重要的作用,同时浏览器/服务器模式的数据库体系也正逐渐成为数据库结构的主流。
Internet的普及和应用使人们的现代生活方式发生了深刻的变化,学校总是处于接受新知识的最前沿地带,于是校园网的应用和管理系统的开发也正蓬勃发展并发挥着巨大的作用,远程教育、网上查询成绩、网上招生等等对于人们己不再陌生。
然而,目前很多高校的学生管理仍然采用的是传统的管理模式。
这种传统的管理模式既浪费人力资源,又不利于提高工作效率。
于是,开发一套学生学籍管理系统已经迫在眉睫。
基于上述原因,我设计并开发了这套学生学籍管理系统。
2系统分析
学生学籍管理系统是基于Web应用的校园应用方案,提供了学校信息化管理需要的灵活性,使学生、教师、家长和主管部门之间能快速、及时地进行沟通,全面实现校园的师生管理、教学管理、考试管理、学籍管理等,是高校实施信息化管理的强力支撑。
2.1需求分析
2.1.1开发目的
随着计算机信息技术、网络通讯等高新技术的发展,对高校学生管理提出了更高的要求,要求学生管理系统进一步发展成为学生管理信息系统。
这样不仅可以使教师从烦琐的事务中解脱出来,而且还能提供面向学生的网上查询成绩、专家咨询服务等快捷、灵活、方便的智能服务。
学生学籍管理系统旨在使校园教学、教务管理、学生管理信息网络化,解决已往信息传递不方便、不快捷等问题,通过本系统可实现学生学籍管理网络化,方便教师网上登录成绩、学生网上查询成绩。
应用表明,使用该系统可以大大提高工作效率,节省人力资源,提高高校行政管理的管理水平,有利于推动高校学生管理的“无纸化办公”进程。
2.1.2功能需求
论文分析了Web数据库及ASP技术在学生学籍管理系统中的应用,本文的功能需求主要分以下几个方面来讨论:
(1)重点讨论了B/S结构的工作原理及其特点,分析了实现Web数据库的不同方法,客观地分析了它们的优缺点。
讨论结果是:
ASP技术无论在操作的可行性、方便性还是性能上都是一种实现Web数据库的最好方法。
(2)探讨了如何利用ASP技术向数据库中添加、修改和删除数据。
(3)重点讨论了如何利用数据库访问组件ADO技术实现学生成绩数据库与服务器的连接,并利用其属性和方法完成对成绩库的访问。
(4)详尽介绍了学生学籍管理系统的总体框架、工作流程和系统使用的主要技术。
2.1.3.总体框架
采用Browser/Server三层体系结构及符合国际标准的TCP/IP网络协议,采用模块化结构,可以适应不同规模用户的需要。
针对高校学生管理的实际情况,设计其系统的总体框架(如图1所示)。
图1系统总体结构
2.2功能分析
系统的功能主要体现在各模块上,系统各功能模块如下:
(1)“输入成绩”:
主要包括“新生注册”、“输入课程名称”、“修改课程名称”、“输入成绩”和“退出系统”等。
可实现学生学籍、应修课程及应得学分、己修课程及己得学分的登记和归档工作,并方便学生对所选修的课程名称和成绩实现网上查询、实现网上资源的充分共享。
(2)“查询修改”:
主要包括“修改档案”和“修改成绩”两个相对独立的模块,可用于档案和成绩的修改。
(3)“补考处理”:
包括“生成补考库”、“补考成绩汇总”、“补考通知单”、“补考准考证”和“补考成绩录入”六个功能模块。
该子系统是用户获取补考信息和补考成绩的有利途径。
(4)“毕业处理”:
包括“录入毕业去向”、“确定毕业结业”、“毕业生名册”和“毕业生卡片”等。
可对毕业生的详细信息进行查询,并对毕业生提供通讯录、便签等方便。
(5)“报表输出”:
包括“学生名册”、“记分册”和“成绩表”等功能模块。
该子系统可用于获取学生成绩。
(6)“系统帮助”:
包括“系统帮助”、“关于……”和“退出系统”等。
用户能够查看该系统的相关信息。
由于系统采用模块化、结构化设计,各模块在信息上互相沟通,功能上互相独立,使系统的网络扩充、功能增加、业务扩展更容易实现。
2.3系统特点
本系统的主要功能是通过网络实现现代化高校学生管理,提高办公效率。
(1)先进可靠的系统平台和体系结构
系统采用目前比较流行的Internet体系结构和瘦客户机/中间件/服务器体系(B/S)结构。
B/S体系结构前台只负责界面表示,实现了瘦客户机的构想,大大地减轻了维护工作量,程序的修改只限于数据库服务器端及应用程序服务器端,客户端通过浏览器访问应用程序服务器,界面统一简单,软件层次较少,维护容易。
(2)系统提供的智能性
系统中的网络服务器采用了高级系统体系结构以及扩展数据输出(EDO)内存子系统,因而具有强大的工作性能和最大的工/i0带宽。
(3)友好的用户界面及操作的灵活性
系统提供类浏览器界面,便于用户实现各种搜索、查询操作。
在系统的操作过程中体现了简单、方便、灵活的特点。
(4)值得信赖的可靠性和安全性
系统可自动检测输入数据的准确性和完整性。
当出现故障或事故造成系统中断后,系统对数据的完整性具有检测、保护和恢复能力。
(5)开放性及可扩充性
软件设计采用标准化接口,硬件平台采用标准网络接口,采用开放式数据库互连接口(ODBC),使本系统与其它应用系统容易实现互连。
(6)先进的Internet支持
系统采用先进的计算机网络、数据库技术、消息传递与工作流技术Internet技术、安全与容错技术相结合。
本系统为高校跨入信息化教学时代提供技术支撑平台,使校内应用(如成绩管理、学籍管理、毕业生信息管理等)系统从单机操作、C/S结构操作上升到基于Web应用的B/S结构体系中来。
系统提供丰富的服务以满足学校需要。
3相关技术简介
3.1系统实现的主要技术
1.采用B/S结构
基于B/S结构的学生学籍管理系统,客户端是通用浏览器IE业务功能由独立的应用服务器处理,Web服务器成为应用服务器处理的标准配置;数据处理仍由数据库服务器完成,不需要象C/S结构那样安装不同的客户端应用程序,B/S结构的功能都在Web服务器上实现,开发和维护工作简单易行。
这种结构可实现网上查询的基本功能,如用户注册、查询、修改信息和报表输出等。
2.ODBC技术
通过访问数据库的方式在本系统中得到应用,它通过驱动程序(driver)来提供数据库的独立性,驱动程序与具体数据库有关,它是一个用以支持ODBC函数调用的模块(通常是一个d11),应用程序通过调用驱动程序所支持的函数来操作数据库,若想使应用程序操作不同类型的数据库,就要动态地链接到不同的驱动程序上。
ODBC具有良好的数据库独立性,通过ODBC可以使得数据库的更改变得非常容易,因为对应用程序来说只需改换一下驱动程序。
3.ASP技术
ASP(ActiveServerPage)即活动服务器页面,它是由Microsoft推出的用于Web开发的技术。
ASP不是一种单纯的技术,应该说它是一种服务器脚本环境。
在ASP环境下,开发者可以通过创建服务器脚本,编写强大的Web应用程序,实现动态交互式Web页面:
ASP脚本还可以和HTML语言、Java小程序等混合在一起书写,这大大扩充了ASP程序的功能,降低了ASP应用的难度。
4.ADO对象访问数据库
ADO是一个ASP内置的ActiveX服务器组件用于数据库访问,可把它与ASP结合起来,建立提供数据库信息的网页内容,对数据库进行查询、插入、更新、删除等操作。
其具有运行速度快、占用内存小等优点。
本系统中有关成绩查询、记录分页浏览等功能都是应用了ADO的对象、属性和方法来实现的。
3.2Web数据库工作原理
Web数据库基于C/S结构,客户端是浏览器,服务器端是Web服务器。
浏览器和Web服务器通过HTTP交换信息。
Web上的大多数交互均可看成请求和响应,即浏览器向Web服务器发出请求(一般是要求显示一个用户想看的网页),而Web服务器则向浏览器返回响应(通常是一个HTML页面或图像等)。
基于Web的数据库采用3层的客户端/服务器结构:
第一层是浏览器,第二层是Web服务器,第三层包括一些应用程序及相关的数据库。
浏览器作为用户输入查询条件和显示查询结果的交互界面,用户可以通过填写表单或输入关键字的方式来与Web交互。
当用户单击表单上的按钮时,表单中的数据便被发送到Web服务器。
Web服务器负责用户输入信息的接收,它将数据传送至要被处理的脚本或应用程序,并在数据库中查询数据。
最后,Web服务器将返回结果插入到HTML页面,传送至浏览器以响应用户。
如图2所示。
图2Web数据库工作原理
3.3ASP的工作原理
ASP访问数据库的工作原理如下:
ASP脚本实际上是一种服务器端的解释脚本,其脚本包含在以.asp为后缀的文件中。
当在浏览器中访问以后缀名为.asp的ASP主页时,网络服务器响应HTTP请求并调用ASP引擎(asp,dll)执行该文件并解释执行其中的任何脚本(VBScript或JavaScript),若脚本中有访问数据库请求,立刻通过ODBC与相应的后台数据库相连,由数据库访问组件ADO(ActiveXDataObjects)完成操作,最后,ASP根据访问数据库的结果集生成包含有数据查询结果的HTML语言的主页返回给前端用户。
前端浏览器WebServer(ASP)ADO访问ODBC后台数据库
图3ASP访问Web数据库的工作原理
由于ASP在服务器端运行,运行结果以HTML主页形式返回用户浏览器,也就是说,用户在前端浏览器看到的仅仅是ASP页的执行结果所生成的页,而ASP的页本身的内容用户在前端浏览器是看不到的,因而ASP源程序不会泄密,增加了系统的安全保密性。
此外,ASP是面向对象的脚本环境,用户可自行增加ActiveX组件来扩充其功能,拓展应用范围。
3.4ODBC简介
图4ADO访问数据库
ODBC(OpenDatabaseConnectivity)即为开放数据库系统互连,它是微软开发的一套用于开发数据库系统应用程序接口规范。
ODBC规范为应用程序提供了一套高层调用接口规范和基于动态链接库的运行支持环境。
使用ODBC开发数据库的应用程序时,只需要应用程序调用标准的ODBC函数和SQL语句,而数据库的底层操作由各个数据库的ODBC驱动程序来完成。
所以,使用ODBC接口的数据库应用程序具有很好的适应和可移植性,并且具备同时访问多种数据库的能力,彻底地扔掉了传统数据库应用程序的缺陷。
ODBC驱动程序类似于Windows下面的硬件驱动程序,对于使用者来说,驱动程序掩盖了不同的硬件间的差异。
4详细设计
4.1ASP技术访问学生成绩数据库
ASP是微软公司推出的最新网络应用程序开发技术,是服务器端脚本编写环境,使用它可以创建和运行动态、交互的应用程序,可以组合HTML页,脚本命令和ActiveX组件以创建交互的网络页和基于网络的功能强大的应用程序。
目前ASP己成为开发动态网站和网络数据库的主要技术之一。
4.2通过ASP与学生成绩数据库建立连接
因为需要操作服务器端的数据库,所以必须在数据库与服务器之间建立连接,建立连接(Connection)是数据库存取的开始。
1.建立Corulection对象
本文使用ASP的内建对象方法Server.Createobject建立与数据库的连接。
ADODB是ASP内置的数据库存取组件。
<%Setcn=Server.Create0bject("ADODB.Connection“)%>
这样就创建了一个名为cn的Connection对象实例,通过这个对象实例,就可使用Connection对象提供的。
pen方法打开与数据库的连接。
2.使用。
pen方法打开与成绩数据库的连接(成绩数据库stxf.dbf)o
driver参数语法:
driver={1licrosoftAccessDriver(*.mdb)}
告诉系统使用ACCESS数据库的ODBC驱动处理。
DBQ用来指定打开的数据库文件名,它必须是完整的路径。
例如
"c:
\inetpub\wwwroot\data\stxf.dbf",本文使用Server.MapPath的方法取得数据库的完整路径。
LID指定用户名
PWD指定用户密码
对于ACCESS数据库,可以直接在ASP中指定连接,其相应的ASP程序为:
<%
cn.open“driver={MicrosoftAccessDriver(*.mdb){;
DBQ=数据库文件名:
UID=用户名:
PWD=用户密码”
%〉
说明:
Connection仅仅是建立了与数据库间的连接,要存取数据还应该再建立Recordset对象。
Setrs=Server.Create0bject())ADODB.Recordset)))
建立Recordset对象rs。
3.关闭Connection对象
cn.close
4.将Connec七ion对象从内存中删除,以释放资源
关闭Connec-tion对象就切断了Connection对象与数据库之间的连接,但是此对象还是存在于内存中。
如果要将创建的Connection对象从内存中移出,需要用语句
setcn=nothing
4.3如何向数据库中添加、修改和删除数据。
4.3.1向数据库中添加新数据
图5向数据库添加数据
使用Recordset对象的Addnew方法,例stul.aspo
<%@LANGUAGE=VBScript%>
(!
一#includefile="AdoAccess.asp"一>
(!
一#includefile="adovbs.inc"一>
<%’stul.asp
1.使用Recordset对象的AddNew方法添加新数据
DimStrSQL,rsTes七
SetrsTest二server.Create0bject("ADODB.Recordset})
rsTest.CursorType=adOpenKeySet’adOpenDynamic
,没有下面这一句,将不允许更新数据库,为什么?
rsTest.LockType=adLockOptimisis
rsTest.Open‘成绩数据库”,Cnn,,,adCmdTable
rsTes七.AddNew
rsTest(”姓名”)二”wu'feng"
rsTes七(“成绩‘)二‘87"
rsTes七.Update
%>
<%
2.将得到的记录集显示到浏览器上,将数据库指针移到表中的第一条记录
IfNotrsTest.EOF<>0Then
Response.Write“表中现有[‘&rsTest.RecordCount&”]条数据“&
"
"
rsTest.MoveFirst
EndIf
DoWhileNotrsTest.EOF
Response.WritersTest(0)&”&rsTest
(1)&’“&rsTest
(2)&
H&"
"
rsTest.MoveNext
Loop
3.释放内存资源
Cnn.close
SetrsTest=Nothing:
SetCnn二Nothing
%>
4.3.2修改数据库中已存在的数据
使用Recordset对象的Update方法。
程序stu2.asp(类似例程stul.asp)
’使用Recordset对象的Update方法修改数据
DimStrSQL,rsTest
SetrsTest=server.Create0bject("ADODB.Recordset")
rsTest.LockType=adLockOptimistic
StrSQL="SELECT姓氏,名字,出生日期FROM学生WHERE出生日期=#83-03-04#"
rsTest.OpenStrSQL,Cnn,,,adCmdTextrsTest”名字“)=“李玲“
rsTest.Lpdate
分析:
1.SQL语句中,数据库是SQLServer数据库,日期要用’83-03-04’括起来。
2.rsTest.OpenStrSQL,Cnn,,,adCmdText中,由于第一个参数是SQL语句,所以第五个参数为adCmdText,其实,第五个参数完全可以省略,但是加上它会使脚本的执行效率更高。
4.3.3删除数据库中的数据
使用Recordset对象的Delete方法。
,使用Recordset对象的Delete方法删除数据
DimStrSQL,rsTest
SetrsTest=server.Create06ject("ADODB.Recordset")
rsTest.LockType=adLockOptimistic
StrSQL="SELECT*FROM学生姓名WHERE成绩二’85'”
rsTest.OpenStrSQL,Cnn,,,adCmdText
WhileVotrsTest.EOF
rsTest.Delete
rsTest.MoveNext
Wend
若记录集中有多条记录符合条件,则必须使用循环,否则,Delete方法只删除当前记录,即第一条符合条件的记录。
这里介绍了维护数据的三种方法,一般而言,尽量使用SQL语句解决问题,简单明了;而使用Recordset对象的最大好处是可以利用其大量的属性和丰富的游标类型,有更多的选择,但也给使用带来一些难题。
4.4ADO访问学生学籍管理系统的设计
ADO(ActiveXDataObject即ActiveX数据对象)是一个ASP内置的ActiveX服务器组件(ActiveXServerComponent),ADI〕通过在Web服务器上设定ODBC,可建立与多种数据库如:
SQLServer,Oracle,Informix,Access}VFP等建立连接。
可以把它与ASP结合起来建立提供数据库信息的网页内容在网页画面执行SQL命令用户在浏览器页面中输入更新和删除Web服务器信息,由服务器对Web数据库进行相应的操作。
ADO的好处在于易于使用,高速,低内存开销,小磁盘空间占用。
它为用户提供了连接任何兼容ODBC的数据库以及到建全功能数据库应用程序的能力。
要执行ADO,服务器端须安装WindowsMTServer和InternetInformationServer(简称IIS),而客户端只要有IE浏览器即可。
Web数据库访问的五种方法的实现大致可分为两类,一类是以Web服务器作为中介,把浏览器和数据源连接起来,在服务器端执行对数据库进行操作二另一类是把应用程序和数据库下载到客户端,在客户端对数据库进行访问。
ADO中可用VBScript.JavaScript语言来控制数据库的访问(而ASP恰恰是脚本语言的解释环境)和查询结果的输出;ADO中使用RecordSets对象对数据库进行操作;可以连接多种支持ODBC的数据库。
4.4.1用SOL语句对成绩库操作
除了Recordset对象的Addnew,Update和Delete方法可以增加、更新和删除记录外,还可以用SQL语句中的Insert,Update和Delete指令去完成该操作。
如在SSMS中,可用如下语句来插入新的记录。
Insert
Values(‘”&request.form(“id")&”’,”’&request.form(“name")&”’,”
&request.form(“computer")&,,,…)
这种表示方法比起对象的方法更直观。
若用Execute方法读取符合SQL语句的记录并存放在Recordse七对象实例时,将不再调用Recordset对象的Open方法,而且用这个方法返回的Recordset对象实例的指针只能向下移动,若希望指针能够上下移动,则必须使用Recordset对象的Open方法来读取表的记录。
4.4.2ADO存取数据库时如何分页显示
如何将数据库的查询结果分页显示呢?
方法主要有两种:
1、将数据库中所有符合查询条件的记录一次性的都读入Recordset中,存放在内存中,然后通过ADO的Recordset对象所提供的几个专门支持分页处理的属性:
PageSize(页大小)、PageCount(页数目)以及AbsolutePage(绝对页)来管理分页处理。
2、根据客户的指示,每次分别从符合查询条件的记录中将规定数目的记录数读取出来并显示。
两者的主要差别在于前者是一次性将所有记录都读入内存,然后再根据指示来依次做判断、分析,从而达到分页显示的效果;而后者是先根据指示做出判断,并将规定数目的符合查询条件的记录读入内存,从而直接达到分页显示的功能。
显然,当数据库中的记录数达到上万或更多时,第一种方法的执行效率将明显低于第二种方法,因为当每一个客户查询页面时都要将所有符合条件的记录存放在服务器内存中,然后再进行分页等处理。
如果同时有超过100个的客户在线查询,那么ASP应用程序的执行效率将大受影响。
但是,当服务器上数据库的记录数以及同时在线的人数并不是很多时,两者在执行效率上是相差无几的,此时一般就采用第一种方法,因为第一种方法的ASP程序编写相对第二种方法要简单明了得多。
进行ADO存取数据库时的分页显示,其实就是对Recordset的记录进行操作。
所以必须先了解Reordset对象的属性和方法:
BOF属性:
目前指标指到RecordSet的第一笔。
EOF属性:
目前指标指到RecordSet的最后一笔。
Move方法:
移动指针到RecordSet中的某一条记录。
AbsolutePage属性:
设定当前记录的位置是位于哪一页
AbsolutePosition属性:
目前指标在RecordSet中的位置。
PageCount属性:
显示
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 基于 BS 学生 学籍 管理 系统 设计 实现