学生信息管理系统设计与实现.doc_第1页
学生信息管理系统设计与实现.doc_第2页
学生信息管理系统设计与实现.doc_第3页
学生信息管理系统设计与实现.doc_第4页
学生信息管理系统设计与实现.doc_第5页
免费预览已结束,剩余27页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

攀枝花学院Panzhihua University攀枝花学院继续教育学院毕业设计(论文)题 目: 学生信息管理系统设计与实现 年级专业: xx级计算机科学与技术(本)专业 学生姓名: 学 号: 指导教师: 职 称: 导师单位: 攀枝花学院继续教育学院论文完成时间: 2016 年 5 月 20 日攀枝花学院继续教育学院毕业设计(论文) 摘 要在过去的几年里该学校的招生量不断增加,在校学生的数量也是日益增多,随之而来的是学生信息管理工作难度的不断加大。对学生信息的管理,特别是成绩信息的管理是一项非常繁重的工作,如何管理好学生的成绩信息是每个学校都会面临的问题。传统的管理方式大多数是人工管理,这种管理效率低,数据的更新与维护比较困难,已经很难适应当今教学的要求。为了改变上述状况,本课题所开发的学生成绩管理信息系统,就是要用计算机完成对该校学生成绩及其相关信息的管理与维护,弥补手工操作的缺点与不足,为用户提供方便的查询手段和准确的信息,提高学生管理工作的效率,基本实现该校学生成绩管理工作的信息化。由Microsoft推出的Windows NT Server(操作系统)、Internet Information Server(Web服务器)、Internet Explorer(浏览器)开发平台已成功地应用于许多领域,为开发管理信息系统提供了良好的支持。“学生信息管理系统”是在以上开发环境中进行研制的,动态网页编程采用了ASP技术。ASP是近年来新兴的动态站点设计技术,它的优点在于甩开了陈旧的Web技术,集HTML、ODBC数据库访问和其他许多新颖技术于一身,实现了网页的可编程化。从结构上看,Microsoft将IIS作为中间层Web服务器,ASP文件驻留在WEB服务器上,实现复杂应用逻辑的脚本,组件也由Web服务器执行。因此对构造三层结构的Web应用系统提供了很好的支持。关键词:网络,学生信息管理, B/S结构, ASP.NET(C#)技术目 录1 绪论11.1课题研究背景11.2国内外发展现状11.3研究方法21.3.1文献收集法21.3.2调查法22 系统概述42.1用户工作流程42.2功能介绍43 系统分析63.1技术可行性分析63.2经济可行性分析63.3操作可行性分析63.4性能需求73.4.1时间特性73.4.2适用性73.5运行需求73.5.1用户界面73.5.2硬件接口73.5.3软件接口74 系统总体设计84.1设计思路84.2设计原则104.3业务流程104.4模块设计124.5数据设计125 系统功能实现165.1系统登录165.2管理员界面18 5.3用户注册功能的实现19 5.4数据库备份及还原功能216 系统测试256.1模块测试256.2整体测试256.3系统测试256.4安全测试256.5综合测试266.6验收测试267 结论27参考文献28攀枝花学院继续教育学院毕业设计(论文) 27攀枝花学院继续教育学院毕业设计(论文) 1 绪论1.1课题研究背景几年里学校的招生量不断增加,在校学生的数量也是日益增多,随之而来的是学生信息管理工作难度的不断加大。对学生信息的管理,特别是成绩信息的管理是一项非常繁重的工作,如何管理好学生的成绩信息是每个学校都会面临的问题。传统的管理方式大多数是人工管理,这种管理效率低,数据的更新与维护比较困难,已经很难适应当今教学的要求。该校以前根本没用过类似的管理系统,所有的学生注册信息、课程信息、成绩信息等都保存在Excel表格里,到用到的时候再人工的去查一些信息,这样就严重影响到该校老师的工作效率。为了改变这种状况,该校的一位老师特委托我为该校开发一个学生成绩管理系统,但由于该学校一开始没有相应的系统来管理学生成绩信息,并且教务处也没有提供学生信息和课程信息接口,所以我做的学生成绩管理系统也包括了学生信息的注册与管理、课程信息的录入与管理,另外所有的课程和教师都是固定的,所以没有选课这个环节。学生成绩管理系统就是这样一个可以对一个学校学生的信息、课程信息、成绩信息等信息进行统一的管理,并提供相关数据的查询、修改、打印等功能。学生成绩管理系统建成后,可以减轻学生会的工作人员的一些工作负担,提高查询速度,提高劳动效率,实现了学生成绩相关的信息管理的系统化、规范化和自动化。高校招生规模的逐步扩大和人事制度的改革,在校学生人数将不断增加,而学生管理人员则相对减少。加上我国高等学校基层学生管理工作的头绪多,内容杂,管理细,要求高,传统管理办法已基本不适应新形势的要求。如在校生的学籍、奖惩、困贷、干部、党团、毕业生管理,以及有关记录计算等,稍有不慎就会出现错误。同时学生成绩的手工登录与查询,是一项非常繁重而枯燥的劳动,每年课程的变化都需要重新刻章,耗费许多人才和物力,而且会因人的情绪烦燥而出现失误。因此在计算机飞速发展的今天,应用数据库技术实现学生成绩的计算机管理是可行而必要的工作。实现高校学生管理信息系统,既能够提高工作效率,又可以提高工作水平。1.2 国内外发展现状管理信息系统自20世纪60年代的数据库系统发展到现在,经历了层次数据库系统、网状数据库系统、关系数据库系统等发展阶段,到今天可以说管理信息系统的技术已经得到了很大的改善,国外在管理信息系统的应用方面走在了前列,国内对管理信息系统作用的普遍认可还不过是近十来年的事。但是管理信息系统在我国发展非常迅速,现在它的应用已经非常普遍,大到一个企业,小到一个组织,到处可以看到各式各样的管理信息系统的身影。目前中国的大部分大学、高等学院都使用了学生管理系统、学生成绩管理系统之类系统,而且像学生成绩管理这类系统现在正向下面的技术学院、中学和小学快速挺进,特别是一些地方的技术学院掀起了引进学生成绩管理这类系统的热潮。1.3研究方法1.3.1文献收集法我在做毕业设计过程中查阅了大量的资料,我是怎么收集到这些资料的哪?下面是我的一些方法:(1)看大学期间的教材这个方法非常简便但收获较大,我们是计算机相关专业,在以前的三年半的时间里发了大量的关于系统制作和数据库设计的等方面书籍像管理信息系统、软件工程、数据库原理及应用等,这些书籍都是非常经典的参考书,有的地方方法忘了或一些设计原则之类的我们都可以看看这些书,毕竟是自己学过的教材,对里面的知识多少有点印象,所以看起来收获也大。(2)借助网络网络是越来越流行,我们查一些资料时用网络也非常方便,可以说有时候比上图书馆更方便,我们平时在图书馆需要找半天的东西上网去百度用关键字查询一下就出来了,可以说非常方便,我在了系统实施阶段遇到许多技术的问题也是上有关的PowerBuilder俱乐部之类的网站才得到解决的。(3)到图书馆查阅有许多资料例如期刊、学士论文之类在网上需要交钱才能看到,相比之下图书馆查这些东西就比较方便了,图书馆有一些数据库,例如一些学士、硕士论文的数据库,我们都可以免费使用。(4)向他人问问题我觉得把向他人问问题作为文献收集的一种方法不为过,一个是查资料解决,一个是问别人解决,同样是解决问题的方法。这儿的问的对象包括老师、同学及其他一些人。1.3.2调查法我在调查过程中用到两种调查方法:(1)座谈调查座谈调查的主要是对那些对系统需求也不太清楚,只能对自己需求说上一两点,但用书面调查无法列举出来的人。当然我一开始也是做的口头调查等有一些资料可写的时候,在用书面调查。(2)书面调查当手里有一些资料可以列举出来,但我自己又不确定用户选择哪一项的人数较多的时候,就用到书面调查。另外我认为记录用户最终的需求作为以后需求改动证据时也要书面调查。2 系统概述学生信息管理系统是学校教务管理的一个重要系统软件,从传统的手工记录学生、教师及其他人员信息,到21世纪的计算机技术的快速发展,软件成为一个管理方面的重要手段。其中强大的计算机技术为学校提供了强有力的支持,利用计算机的优势,对学生、教师及其他人员的管理就更为方便,且效率更高。众所周知,在高校并没有提供完全固定的课程表,学生在每学期的一开始根据自己的专业要求和兴趣在一些选修课或者限选课中进行选择,从而决定本学期自己要学习的课程,这样可能导致超出选课人数而不得不另选其他课程。因此,此系统的开发设计,恰好可以实现学校管理学生信息和选课信息。2.1用户工作流程管理员登录系统后,可以集中对班级信息,学生信息,学费信息,学生成绩,数据库备份等管理。班级管理:添加新的班级信息,修改和删除班级的信息学生管理:添加班级新的学生,修改和删除学生的信息学费管理:设置和修改各个班级的标准学费信息,登记学生的交费信息,查询和修改学生的交费信息! 课程成绩管理:设置每个学期每个班级的课程信息,登记每个学期的每个学生的成绩信息,并对这些信息进行查询,修改和删除管理操作。成绩查询:学生可以登陆系统查询自己的考试成绩。学生可以注册系统,登录系统后可以查看成绩、修改登录密码。2.2功能介绍(1)具有数据输入功能包括学生信息、课程信息、成绩信息、班级信息的输入。为了保证记录的完整性。(2)具有信息存储功能能够存储学生信息、课程信息、成绩信息、班级信息等重要数据。(3)具有浏览功能浏览功能要求包括以下几项内容。浏览学生信息、课程信息、成绩信息、班级信息等内容。(4)具有查询功能查询功能要求包括以下几项内容:a、按照学号、姓名等查询条件查询相关的学生信息。b、按课程号、课程名、开课学期等查询条件查询相关的课程信息。c、按学号、课程、班级、专业等查询条件查询相关的成绩信息。 学生信息管理系统的功能结构如图2-1所示。图2-1 学生信息管理结构图班级信息管理添加班级班级查询学生信息管理添加学生信息学生管理课程成绩管理班级课程添加班级课程管理学生成绩添加学生成绩管理学费信息管理学费设置添加学费设置管理学生交费学生交费管理系统管理修改密码数据备份3 系统分析3.1 技术可行性分析学生信息管理是高校管理的重要组成部分,是高等学校非常重要的一项数据资源,是一个教育单位不可缺少的一部分。学生的稳定是学校快速发展的有力保障,这不仅仅关系到学生在校期间的表现,还在很大程度上度量了一个学生的跟踪管理,学生管理的重要性不言而喻,但因为其包含的数据量大,涉及的人员面广,而且需要及时更新,所以学生管理在学校中是很繁琐的,在每个系,每个学生都需要有对应的档案记录,在学校各项管理中,学生管理牵涉到的其他管理内容是最复杂的,它牵涉到了学生个人档案管理,学籍管理,成绩管理,课程管理等,所以在实际管理工作中,往往由于记录的数量多,管理复杂,可连续性差,对整个学生管理进行记载,并实行电子化管理。本系统功能要求相对简单,由于Sql Server 2005强大的后台数据管理能力和Visual Studio 2005 友好的开发环境,便于本系统的开发。3.2 经济可行性分析因为通过计算机存储和管理信息可以有效且快速的管理数据,因此可以节约许多的人力和物力,方便管理,由此可以减少不必要的开支,同时该系统可以提高普通考试过程效率,即减少了学校管理的开支,有效地提高的管理工作的效率,所以从经济上完全是可行的。系统开发经费学校是完全可以承担的。在信息管理系统主要面向学校教务处管理人员、在校教师和学生,其功能相对简单,无需功能的升级,服务器要求不高,面向的用户相对较少,因此学校完全可以承担本系统的开发经费。信息管理系统可以明显提高学校管理效率。信息管理系统的设计所需人员少,开发时间比较短,所以相对说投资较少,能很好的满足该学校减少开支的要求,是投入少的资金获取最大的经济效益的好例子,故该方案具备经济可行性。3.3操作可行性分析此方系统使用后,会对组织产生一定的影响,但这些影响是局部的,不会影响整个组织。此系统可以应用到局域网并且人机界面友好,操作简单,帮助详尽,一般人员都可以使用,不需要专门的培训,具备系统的运行可行性本系统是基于windows界面开发的,界面友好,操作简单方便。对于教务处管理员、教师和学生操作简单,新手可以很快的熟练操作,所以本系统操作可以性是非常乐观的。3.4 性能需求3.4.1时间特性该管理系统软件从启动到进入系统登录界面的时间正常情况下应少于5秒,录入并更新数据的时间正常情况下少于2秒。3.4.2适用性该管理系统软件适用于Windows 2000/xp及以上操作系统,并装有SQL Server数据库系统及.NET Framework平台。3.5运行需求3.5.1用户界面本系统采用Microsoft Visual Studio .Net 2005设计,用户交互界面采用的是基于Windows的窗口界面。3.5.2硬件接口运行本系统的硬件基本要求如下:CPU:Intel P3及以上;内存:256MB及以上;硬盘:10GB及以上。3.5.3软件接口.NET框架:Microsoft .Net Framework V2.0版本及以上。 数据库服务器:Microsoft SQL Server 2005及以上。 4 系统总体设计4.1 设计思路系统按照用户分成几个独立的功能模块,便于集中进行管理。如:管理模块有:班级信息管理、学生信息管理、学费信息管理、课程成绩管理和系统管理。合理的数据流设计,在应用系统设计中,相对独立的模块间以数据流相互连接,使各模块间的耦合性较低,方便系统运行,提高系统安全性。分层的结构化模块设计思想,提高了系统的灵活性和可扩展性。为了各个队员的分工合作和日后便于维护为目的,本系统采用三层架构部署的框架来开发。图4-1数据访问层图 4-2 业务逻辑层图 4-3 用户界面层 为了增加系统的环境适应性和降低各层之间的耦合度,我们在DAL层和BLL层之间采用了反射工厂模式的设计模式开发。 图4-4 工厂模式以上即为本系统设计的主要思想,通过分层模块化的设计思路,有效地提高的开发效率,同时提高的系统的灵活性和可扩展性。4.2 设计原则实用性原则:适合在线考试信息管理工作的实际需求,并能够处理一些特殊情况的要求,此外,尽可能预留空间,以便扩充功能。易操作原则:要求设计的系统功能齐全,界面友好,操作方便,必要的地方进行提示。安全性原则:可以为该系统的用户设置用户权限,并考虑数据库的安全性,动态设置连接到数据库的链接。4.3 业务流程学生信息管理主要面向管理员和学生,合理的设计业务流程,不但可以提高系统的开发效率,而且还可以增强系统的可维护性。 业务流程图如下图4-5所示。退出学生图4-5 学生信息管理业务流程图管理员学生信息学生信息管理输出学生信息学生信息学生信息课程信息课程信息管理输出课程信息课程信息课程信息成绩信息管理输出成绩信息成绩信息成绩信息成绩信息主要逻辑业务分析:管理员登录系统后,可以集中对班级信息,学生信息,学费信息,学生成绩,数据库备份等管理。班级管理:添加新的班级信息,修改和删除班级的信息学生管理:添加班级新的学生,修改和删除学生的信息学费管理:设置和修改各个班级的标准学费信息,登记学生的交费信息,查询和修改学生的交费信息! 课程成绩管理:设置每个学期每个班级的课程信息,登记每个学期的每个学生的成绩信息,并对这些信息进行查询,修改和删除管理操作。成绩查询:学生可以登陆系统查询自己的考试成绩。学生可以注册系统,登录系统后可以查看成绩、修改登录密码。4.4模块设计(1)学生信息管理模块说明:学生信息管理是将学生录入的学生注册信息添加到数据存储学生信息中,然后根据要求的进行学生信息的修改、学生信息的删除和学生信息的查询,这些操作大都是基于学生信息进行的,学生信息修改时应得到相应的审核。学生信息查询有可能涉及到多个实际的数据表,然后把相应操作得到的结果更新到学生信息,只有当查询学生信息时,才将查询后的结果输出传给申请人。(2)课程信息管理模块说明:课程信息管理是将教师录入的课程信息添加到数据存储课程信息中,然后根据要求的进行课程信息的修改、课程信息的删除和课程信息的查询,这些操作大都是基于课程信息进行的,课程信息修改时应得到相应的审核。课程信息查询有可能涉及到多个实际的数据表,然后把相应操作得到的结果更新到课程信息,只有当查询课程信息时,才将查询后的结果输出传给申请人。(3)成绩信息管理模块说明:成绩信息管理是将教师录入的成绩信息添加到数据存储成绩信息中,然后根据要求的进行成绩信息的修改、成绩信息的删除和成绩信息的查询,这些操作大都是基于成绩信息进行的,成绩信息修改时应得到相应的审核,这儿有和奖学金评定模块的关联。成绩信息查询有可能涉及到多个实际的数据表,然后把相应操作得到的结果更新到成绩信息,只有当查询成绩信息时,才将查询后的结果输出传给申请人。(4)用户管理模块说明:用户填写用户信息申请使用系统,管理员为其添加用户,管理员负责用户模块的维护,修改用户信息、删除用户、查询用户信息也都是基于用户信息进行的,查询出来的信息传给相应的用户,所有的用户都可以根据自己的需要修改自己的密码。4.5 数据库设计数据库是SQL Server 2005存储和管理数据的单位,从用户的角度来看,数据库是数据表、视图、存储过程等对象组成的集合;从机器的角度来看,数据库是由若干个物理文件组成的整体。创建数据库是创建其他数据库对象的前提和基础,数据文件用于存放数据,事务日志文件是维护数据完整性的重要工具。数据表是用来存储数据的容器,是SQL Server 2005数据库中最重要的数据对象,也是其他数据对象(如索引、视图、存储过程和触发器)创建的基础。统表是维护SQL Server服务器和数据库正常工作的数据表,由DBMS自行创建和维护,DBA可以从中获取很多有价值的信息。念数据模型是按照用户的观点来对数据和信息进行建模,主要用于数据库的设计。它是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流的语言。概念模型的表示方法很多,实体-联系方法即E-R模型是最有力的工具。根据功能抽象出数据关系,学生信息管理涉及的实体有:(1)学生属性:学号、姓名、学生类别、性别、籍贯、出生时间、班级名、电话、注册时间、备注。(2)课程属性:课程号、课程名、课程类别、开课学期、授课院系、课学时、课学分、教师名、备注。(3)院系属性:院系号、院系名。(4)班级属性:班级号、班级名、专业号、院系号。(5)专业属性:专业号、专业名、院系号。(6)学生类别属性:学生类别号、学生类别、学生类别说明。(7)课程类别属性:课程类别、课程类别说明。(8)用户属性:用户号、用户名、密码、权限代码。这些实体之间的关系如下:成绩mn学生学生类别属于n1班级属于1n课程院系课程类别属于n1属于1nn1图4-6学生信息管理的E-R图专业n1包含包含选择教师1n讲授 属于(1)一个院系有一个或多个专业,一个专业必然属于某个特定院系。(2)一个专业有一个或多个班级,一个班级必然属于某个特定专业。(3)一个班级有一个或多个学生,一个学生必然属于某个特定班级。(4)一个学生可以选择多个课程,而一个课程又可以被多个学生所选择。(5)一个学生类别里包含一个或多个学生,一个学生必然属于某个特定学生类别。(6)一个课程类别里包含一门或多门课程,一门课程必然属于某个特定课程类别。答案4选修 表4.1学分信息表(score) 字段名 类型 描述scoreId数字学分号(主键)studentNumber文本学号termId数字学期数examType文本考试类型classCourseId数字班级课程号score数字分数 表4.2 学生信息表(student) 字段名 类型 描述studentNumber文本学号(主键)studentName文本姓名studentPassword文本密码studentSex文本性别classId数字班号studentBirthday文本生日studentAddress文本住址postcode文本邮编telephone文本电话inTime文本注册时间memo文本备注 表4.3班级信息表(class) 字段名 类型 描述classId数字班号(主键)className文本班级名称beginYear数字开始年限classType文本年制specialName文本专业memo文本备注classGuide文本班级姓名 表4.4班级课程信息表(classCourse) 字段名 类型 描述classCourseId数字班级课程号(主键)classId数字班号termId数字学期号courseName文本课程名称 表4.5 学费信息表(money) 字段名 类型 描述moneyId数字钱号studentNumber文本学号termId数字学期giveMoney数字给钱数date文本日期operator文本操作人5 系统功能实现5.1 系统登录系统用户分为三种类型:管理员和学生,用户进行登录时,需提交用户名和密码,系统通过数据库查询判断用户提交的账号和密码是否正确,同时登录界面还要求用户提交登录身份,若成功登录,依据身份赋予一定权限。用户登录成功后,系统会给与提示;若失败,则给出错误原因,用户名或密码错误。登录成功后跳转到相应的管理页面。图5-1 系统登录界面后台核心代码:protected void Button1_Click(object sender, EventArgs e) /*取得帐号密码信息*/ string userName = this.txtName.Text; string password = this.txtPwd.Text; string identify = this.Identify.SelectedValue; if (管理员 = identify) AdminModel adminModel = new AdminModel(); adminModel.AdminUsername = userName; adminModel.AdminPassword = password; AdminLogic adminLogic = new AdminLogic(); /*如果管理员帐号信息正确*/ if (adminLogic.IsExistAdminInfo(adminModel) SessionadminFlag = true; SessionadminUsername = userName; Response.Redirect(Admin/index.aspx); /*如果管理员帐号信息不正确*/ else Response.Write(alert( + adminLogic.ErrMessage + );); else StudentModel student = new StudentModel(); student.setStudentNumber(this.txtName.Text); student.setStudentPassword(this.txtPwd.Text); StudentLogic studentLogic = new StudentLogic(); /*如果学生帐号信息正确*/ if (studentLogic.IsExistStudentInfo(student) SessionstudentFlag = true; SessionstudentNumber = userName; Response.Redirect(Score/scoreResult.aspx); /*如果管理员帐号信息不正确*/ else Response.Write(alert( + studentLogic.getErrMessage() + );); 5.2 管理员界面图5-2 管理员管理界面在该管理界面中,通过嵌入到aspx中的ascx用户控件可以跳转到相应管理页面,可以实现班级信息的管理、学生信息管理、学费信息管理、课程成绩管理以及系统管理。以下为实现的主要代码:function showMenu(menu,tableW)switch (menu)case 1 :mArray = new Array();mArrayURL = new Array();break;case 2 :mArray = new Array(添加班级,班级查询);mArrayURL = new Array(,);break;case 3 :mArray = new Array(添加学生,学生管理);mArrayURL = new Array(,);break;case 4 :mArray = new Array(学费设置添加,学费设置管理,学生交费,学生交费管理);mArrayURL = new Array(,);break;case 5 :mArray = new Array(班级课程添加,班级课程管理,学生成绩添加,学生成绩管理);mArrayURL = new Array(,);break;case 6 :mArray = new Array(修改密码,数据备份);mArrayURL = new Array(,);break; 5.3用户注册功能的实现在登录界面中点击注册按钮,即可进入新用户注册注册的界面。用户可以在这个窗体中输入学号,姓名,学生密码,学生性别,学生生日,入学日期,班级信息,家庭地址等。界面如图5-3:图5-3 用户注册功能界面以下为实现新用户注册的主要代码 protected void Btn_Cancle_Click(object sender, EventArgs e) Response.Write(location.href=studentAdd.aspx;); protected void Btn_Add_Click(object sender, EventArgs e) StudentModel student = new StudentModel(); student.setStudentNumber(this.StudentNumber.Text); student.setStudentName(this.StudentName.Text); student.setStudentPassword(this.StudentPassword.Text); student.setStudentSex(this.StudentSex.SelectedValue); if (this.StudentBirthday.Text != ) student.setStudentBirthday(Convert.ToDateTime(this.StudentBirthday.Text); if (this.InTime.Text != ) student.setInTime(Convert.ToDateTime(this.InTime.Text); student.setClassId(Int32.Parse(this.ClassId.SelectedValue); student.setStudentAddress(this.StudentAddress.Text); student.setPostcode(this.PostCode.Text); student.setTelephone(this.Telephone.Text); student.setMemo(this.Memo.Text); StudentLogic studentLogic = new StudentLogic(); if (studentLogic.AddStudentInfo(student) Response.Write(alert(学生信息添加成功!);location.href=studentAdd.aspx;); else Response.Write(alert( + studentLogic.getErrMessage() + );); 5.4 数据库备份及还原功能 随着办公自动化和电子商务的飞速发展,企业对信息系统的依赖性越来越高,数据库作为信息系统的核心担当着重要的角色。尤其在一些对数据可靠性要求很高的行业如银行、证券、电信等,如果发生意外停机或数据丢失其损失会十分惨重。为此管理员应针对具体的业务要求制定详细的数据库备份与灾难恢复策略,并通过模拟故障对每种可能的情况进行严格测试,只有这样才能保证数据的高可用性。数据库的备份是一个长期的过程,而恢复只在发生事故后进行,恢复可以看作是备份的逆过程,恢复的程度的好坏很大程度上依赖于备份的情况。此外,数据库管理员在恢复时采取的步骤正确与否也直接影响最终的恢复结果。备份还原功能图如图5-4图5-4 数据库备份还原功能 以下为实现的主要代码:public partial class beifen_beifen : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (!Page.IsPostBack) /在DropDownList中绑定所有数据库 SqlConnection connection = new SqlConnection(Data Source=(local);Initial Catalog=StudentDB;Integrated Security=True); SqlCommand command = new SqlCommand(sp_helpdb, connection); command.CommandType = CommandType.StoredProcedure; connection.Open(); SqlDataReader reader = command.ExecuteReader(); ddlDatabaseList.DataSource = reader; ddlDatabaseList.DataTextField = Name; ddlDatabaseList.DataBind(); reader.Close(); connection.Close(); protected void btnOK_Click(object sender, EventArgs e) string dbFileName = txtDbFileName.Text.Trim(); SqlConnection connection = new SqlConnection(Data Source=(local);Initial Catalog=StudentDB;Integrated Security=True); string dbName = ddlDatabaseList.SelectedValue; if (!dbFileName.EndsWith(.bak) dbFileName += .bak; 以下代码是备份数据库的核心代码通过DropDownList Web控件创建一个包含多个选项的下拉列表,用户可以从中选择一个需要备份的数据库进行备份。 if (rbBackup.Checked)/备份数据库 SqlCommand command = new SqlCommand(use master;backup database name to disk=path;,connection); connection.Open(); string path=Server.MapPath(App_Data)+dbFileName; command.Parameters.AddWithValue(name, dbName); command.Parameters.AddWithValue(path, path); command.ExecuteNonQuery(); connection.Close(); 以下代码是恢复数据库的核心代码通过RadioButton 控件选择备份还是还原功能,再通过button控件,点击执行click事件,完成所需功能。 else/恢复数据库 SqlCommand command = new SqlCommand(use master;restore database name from disk=path;, connection); connection.Open(); string path = Server.MapPath(App_Data) + + dbFileName; command.Parameters.AddWithValue(name, dbName); command.Parameters.AddWithValue(path, path); command.ExecuteNonQuery(); connection.Close(); 攀枝花学院继续教育学院毕业设计(论文) 6 系统测试完成对流程的编码后最重要的事情就是对系统的测试工作了,测试在系统设计阶段有两个时期,通常在编写每个模块后做单元测试,另一个时期是对系统的综合测试。6.1 模块测试在模块测试时我们主要从以下几个方面考虑:模块接口、局部数据结构、重要执行通道、出错处理通道、影响上述方面的边界条件。测试时进行代码审查,从数据类型,变量声明,数据结构进行审查,然后进行功能测试,从输入一些简单的数据开始执行一遍,观测运行期间变量的变化,运行中值的变化范围。改变测试方案来变换另一个角度进行测试,发现错误并记录,修改代码,测试条件使程序通过多层分支,判别运行结果从而完成模块测试。6.2 整体测试总体测试是组装软件的系统技术,本系统测试采用渐增集成测试,即测试单一模块,将测试完的模块加入系统中,进行一次系统测试,依次类推将所有模块加入系统中,在具体测试时,采用自顶向下的结合方式,从主控模块开始,沿各控制层向下移动,逐渐把所有模块结合了。在测试过程中使用到调试技术:采用debug调试语句,跟踪数据;嵌入打印语句,输出中间结果;利用Visual Studio 2005中调试工具,从调试窗口观测变量的变化;设置断点,观察程序在断点附近的状况。评估运行的可靠性问题:结果正确、运行速度、空间利用率、算法的可行性。6.3系统测试系统测试是软件开发中至关重要的一个环节,它是衡量我们所开发系统的准绳。通过各种类型的测试(及相应的调试)使软件达到预定的要求。通过对软件测试结果的分析可以预测软件的可靠性;反之,根据对软件可靠性的要求,也可以决定测试和调试过程什么时候可以结束。无论怎

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论