学籍管理系统-VB编程毕业设计_第1页
学籍管理系统-VB编程毕业设计_第2页
学籍管理系统-VB编程毕业设计_第3页
学籍管理系统-VB编程毕业设计_第4页
学籍管理系统-VB编程毕业设计_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

1、学籍管理系统摘 要 学籍管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。本系统主要完成对学生情况和学生成绩的管理,包括数据库中表的添加、修改、删除等。系统还可以完成对各类信息的浏览、查询、添加、删除、修改、报表等功能。系统的核心是数据库中各个表联系,每一个表的修改都将联动的影响其它的表,当完成对数据的操作时系统会自动地完成数据库的修改。查询功能也是系统的核心之一,在系统中即有单条件查询和多条件查询,也有精确查询和模糊查询,系统不仅

2、有静态的条件查询,也有动态生成的条件查询,其目的都是为了方便用户使用。系统有完整的用户添加、删除和密码修改功能,并具备报表打印功能。经过分析,我们使用 MICROSOFT公司的 VISUAL BASIC开发工具,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。关键字:管理信息系统、数据库、vb6.0、access2000。ABSTRACTStudent status management system is development two as

3、pects that typical information management system, IMS( MIS), its development includes primarily the background database creates with support and the front end applies the procedure.Creates to rise to the former request the consistency of data is strong with the integrity, the library that the safene

4、ss of data like.But request the latter very much to apply the procedure function complete, easy usage etc. characteristics.This system completes primarily to students circumstance with the management of students score, include the database the inside the watch increase, modify, delete etc.The system

5、 can also complete to the browsing of various information, search, increase, delete, modify, report etc. function.System of nucleus is other table in an influence for of relation, each a modification of watch moving in a table in database that modification that operation hour system, be to complete

6、the logarithms according to will complete the database of oneself.Search the function is also one of the nucleus of the system, having namely in system the single condition search to search with many conditions, also having the accurate search to search with blur, system not only contain static cond

7、ition search, also have the dynamic born condition search, its purpose is all for the sake of the convenient consumer to use.System contain complete consumer increase, delete to modify the function with the password, the union has the report prints the function.Through analysis, we use the MICROSOFT

8、 company VISUAL BASIC development tool, making use of its every kind of the tool of development that provide that face to the object, particularly is intelligence that the window of data this on canning be convenient but manipulate the database in brief to turn the object, create in the in a short t

9、ime first system application prototype, then, start to the beginning the prototype system proceeds to require with the iteration, revising continuously with improve, until forming the consumer is satisfied can row system.Keywords: MIS, database, vb6.0, access2000.目 录前 言1第一章 概述11.1课题来源11.2 开发工具的选用21.

10、2.1 Visual Basic的使用21.2.2 Microsoft Access的使用31.3 系统的初步调查31.4 系统的可行性研究41.4.1技术上的可行性41.4.2管理上的可行性41.4.3安全上的可行性41.5 系统分析41.5.1系统的安全性41.5.2系统的快捷性51.5.3系统的准确性51.5.4系统的严谨性5第二章 概要设计52.1 系统设计思路52.1.1界面设计52.1.2用户登陆52.1.3学籍信息内容查询和录入62.1.4数据库分析62.2 设计简述62.2.1 vb设计的界面简述62.2.2 Access2000设计数据库72.2.3系统简图72.3 设计需求

11、72.3.1 运行设计72.3.2 出错处理设计82.3.3安全保密设计82.3.4维护设计8第三章 详细设计93.1 数据库的实现93.1.1课程表93.1.2学生情况表93.1.3学生与课程表93.2 界面的实现93.2.1登陆界面93.2.3 主界面103.2.4 基本信息录入113.2.5 成绩录入143.2.6 信息查询163.2.7 报表输出18第四章 数据测试18第五章 总结195.1 编程心得195.2 感谢19参考文献20前 言学籍管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学籍管理系统应该能够为用户提供充足的信息和快捷的查询手段

12、。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学籍信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生档案管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。因此,开发这样一套学籍管理软件成为很有必要

13、的事情。第一章 概述1.1课题来源本课题是以某学校的学生学籍管理办公自动化需求为背景,而进行设计开发的一个学籍管理系统。本系统开发后不是为了马上可以应用到实际工作,而是与学院现有应用软件相比较,在开发技术,开发思路以及软件的稳定性,安全性,可用性等等方面进行比较,综合各个方面的优点,以期开发出一套更为完善的学籍管理系统。1.2 开发工具的选用1.2.1 Visual Basic的使用Visual Basic 是Microsoft 公司推出的一个可视化的面向对象的应用程序开发工具。由于VB继承了Basic语言简单、易学的优点,又增强了可视化、数据库及Internet编程功能,因此很快便成为开发W

14、indows应用程序的有效工具。在本次设计中只所以采用VB进行开发,主要是以为VB具有以下两大特点:1.面向对象编程传统的结构化语言(如C,Pascal和Basic等)都是采用面向过程的编程方法来解决问题。在面向过程的编程方法中,代码和数据是分离的,由此带来了很多缺陷,其中最重要的就是程序的可维护性差。面向对象编程(OOP:Object Oriented Programming)则把数据和处理数据的代码封装到一个类中,类的实例就是对象。与面向对象的编程方法相比,面向对象编程方法有三个优点:1)程序易于阅读和理解;2)程序易于修改;3)对象能重复使用多次,即程序员可以随时根据需要将对象插入到程序

15、中去。2.事件驱动的编程机制在面向对象的编程方法中,每个程序通常包含一个主程序和若干个子程序,由某个子程序来处理某个小问题,再由主程序自顶向下调用各个子程序来逐步解决整个问题。VB彻底解决了这种编程机制。在VB中,没有传统意义上的主程序,程序执行通过事件来驱动,即只有在事件发生时,程序才执行,若没有发生任何事件,则处于停滞等待状态。 事件驱动使得用VB编程没有必要建立明显的开始和结束程序,而只需编写若干微小的子程序,这些子程序分别由各种事件来驱动执行。由于子程序规模不大、功能单一,因此编程难度得意大大降低。本次毕业设计需要用一种新软件来开发学习,但是接触一门新的软件往往上手容易,使用起来很困难

16、,而且这次毕业设计时间短,任务重。显然使用非常复杂的软进行开发是不太现实的。而Visual Basic简单易懂,控件操作简单方便,且集成了多种开发和应用软件,使用的人比较多,方便在一起讨论学习,所以在这次设计中,我们采用了VB作为我们主要的开发工具。1.2.2 Microsoft Access的使用Access作为Microsoft的office套件产品,目前已经成为世界上最流行的桌面数据库系统。Access与许多优秀的关系数据库一样,可以让你很容易地连接相关的信息而且还对其他的数据库系统有所补充。它能操作其它来源的资料,包括许多流行的PC数据库程序(如Paradox,Microsoft Fo

17、xPro)和服务器、小型积极大型机上的许多SQL数据库。Access还提供windows操作系统的高级应用程序开发系统。Access与其它数据库开发系统之间相当显著的区别就是:您不用写一行代码,就可以在很短的时间里开发出一个功能强大而且相当专业的数据库应用程序,并且这一愉快的过程是完全可视的!如果您能给它加上简短的VBA代码,那么您的程序决不比专业程序员潜心开发的程序差。在本次设计中,需要建立一个数据库系统,并且在开发中希望能够建立一个专业的数据库系统,但是去系统地去学习编程时间和精力上不允许,并且写SQL语句,也是一项比较麻烦的工作。而微软公司开发的Access软件很好的解决了这方面的问题,

18、所以在本系统的开发中,数据库的建立就是使用了微软公司开发的Microsoft Access软件。1.3 系统的初步调查所开发系统主要是对中等规模学院的学生档案信息进行管理,而不对其他公司或单位内容进行涉及。在对学籍信息的管理中,对管理员赋予所有的权限,即既有具有查询的权限,又具有对数据库进行录入和修改的功能,以及对数据库进行清空的功能。由于该系统主要应用在学院内部使用,而不在网络上公开,因此在设计开发时可以做成单机版。1.4 系统的可行性研究1.4.1技术上的可行性由于VB语言简单、易学的优点,又增强了可视化、数据库及Internet编程功能,很容易就可以进行系统开发。因此系统开发工具可以采用

19、Visual Basic进行开发。而对数据库的建立,由于建立的数据库主要是对光纤的信息进行管理,所以可以采用微软公司开发的Microsoft Access。该软件简单易懂,应用广泛,比较适合新手上路使用,而且建立的数据库较为安全。1.4.2管理上的可行性因为系统主要应用于学院内部,而不具备网络查找功能,因此在实现时可以做成单机版,对管理员赋予数据录入、查询、修改以及对数据库的清零等功能。1.4.3安全上的可行性在建立数据库时可以通过对数据库的设计用户名和密码进行保密,以及在建立数据库以后可以对数据进行压缩等技术,保证数据的安全,使数据库具有安全保障。1.5 系统分析1.5.1系统的安全性所开发

20、系统必须保证系统的安全,必须保证系统数据库不能被任意修改,系统不容易被病毒侵蚀。对光纤信息数据库只有 管理员才能进行录入,修改和删除。1.5.2系统的快捷性系统必须快速准确的对所做的操作做出反映,不能出现长时间的延迟和错误或者莫名其妙的死机。1.5.3系统的准确性系统必须准确的对所做的操作做出反映,要保证所输出结果的准确无误。1.5.4系统的严谨性所开发系统必须严谨,不能随意被修改,不能随意被人下载源代码。第二章 概要设计2.1 系统设计思路2.1.1界面设计用VB设计基础界面,在初步设计时,可以只对窗体进行设计,而不涉及程序的内容,待窗体设计完毕后,再进行程序编程,这也是VB的优点之一。2.

21、1.2用户登陆用户登陆时,用户信息进入存放用户名和密码的db5数据库,打开超级用户表,可用从中找到用户名和密码。如果用户名或密码错误,会弹出窗口提示无效的用户名或密码,返回用户登陆界面。2.1.3学籍信息内容查询和录入查询结果可以通过网格输出,输出时显示各个学籍信息的汉字意义。在管理员进行录入工作时,对所输入信息插入数据库内,并保证其安全和主属性的唯一。2.1.4数据库分析在系统实现时,可以建立一个数据库,但是建立多个表。对用户名和密码,设计一个用户密码表包括“用户名”和“密码”两个字段;建立学生情况、课程情况、学生与成绩情况时,考虑到各专业和班级的课程不相同,建立统一的表比较困难。所以让系统

22、管理员按照实际情况动态的建立数据表,但要保证所查询出的结果完全满足用户的需求。2.2 设计简述2.2.1 vb设计的界面简述漂亮界面,这个窗体要求让人感觉到舒服、好看。登陆界面,要求管理员输入帐户密码,并根据密码是否正确决定进入主界面。主界面,是一张自己制作的图片,可以通过各个菜单调用各种功能。新建班级,要求可以生成以班级名称命名的成绩表,具体表中的字段由管理员决定。数据输入,可以在这个窗体中对数据库中的任意表进行添加、修改、删除等操作。数据导入,管理员可以把excel表中的数据导入到数据库中。查找向导,可以根据各种条件对学生进行查找,并显示。成绩查询,对成绩进行单人或者全班查询。打印管理,管

23、理员可以打印单人或者全班成绩,并且对打印的字段进行设置。帮助信息,说明作者,版本信息。2.2.2 Access2000设计数据库课程数据表,包括课程各种基本属性,“课程号”为主属性。学生情况表,包括学生的各种基本属性,“学号”为主属性。学生与课程联系表包括学生与课程的各种基本属性,“学号”与“课程”为主属性。用户权限表包括“用户”和“密码”两个属性,“用户”为主属性。其余成绩表由管理员建立,包括“学号”,“姓名”和以课程名字命名的属性,“学号”为主属性。2.2.3系统简图读出读出读出输入输入创建退出成绩查询主界面登陆成功建立新表数据输入数据导入学生查询打印报表零退出 用户登陆 学 籍 信 息

24、库 学籍管理系统 2.3 设计需求2.3.1 运行设计1、运行模块的组合具体软件的运行模块组合为程序多窗口的运行环境,各个模块在软件运行过程中能较好的交换信息,处理数据。 2 运行控制 软件运行时有较友好的界面,基本能够实现用户的数据处理要求。 3 运行时间 系统的运行时间基本可以达到用户所提出的要求 2.3.2 出错处理设计 1 出错输出信息 在用户使用错误的数据或访问没有权限的数据后,系统给出提示:“对不起,你非法使用数据,没有权限!”而且用户的密码管理可以允许用户修改自己的密码,不允许用户的匿名登录。 2 出错处理对策 由于数据在数据库中已经有备份,故在系统出错后可以依靠数据库的恢复功能

25、,并且依靠日志文件使系统再启动,就算系统崩溃用户数据也不会丢失或遭到破坏。但有可能占用更多的数据存储空间,权衡措施由用户来决定。 2.3.3安全保密设计 系统的系统用户管理保证了只有授权的用户才能进入系统进行数据操作,而且对一些重要数据,系统设置为只有更高权限的人员方可读取或是操作。系统安全保密性较高。 2.3.4维护设计由于系统较小没有外加维护模块,因为维护工作比较简单,仅靠数据库的一些基本维护措施即可。 第三章 详细设计3.1 数据库的实现3.1.1课程表课程号(字符)、课程名称(字符)、授课老师(字符)。3.1.2学生情况表学号(字符)、班级(字符)、名字(字符)、性别(字符)、出生日期

26、(时间)、民族(字符)、父母姓名(字符)、地址(字符)、邮政编码(字符)、电话号码(字符)、院系(字符)、专业(字符)、身份证(字符)、备注(备注)。3.1.3学生与课程表课程号(字符)、课程名称(字符)、学号(字符)、备注(备注)、成绩(字符)。3.2 界面的实现3.2.1登陆界面第一个出现在用户面前的就是这个界面,因此要求漂亮、简洁。本界面的picture属性被设置成一个图片(经过coreldraw处理),还放有几个ICO图标,全图片式的登陆界面使显得更美观。本界面一共有label控件2个,两个textbox控件,两个commandbutton(并加上了图片)。控件上设置caption属性

27、有提示作用,text控件可以储存用户输入的数据。设置全局变量Public LoginSucceeded As BooleanInteger并初始化。在button1_click中添加代码,db与数据库连接,rs打开表“用户密码”。当rs.eof为flase的时候,循环,判断rs.fields(0)和text1.text,rs.fields(1)和text2.text是否相等,只有当两个都相等(用户密码都正确)的时候flag变量为1,当flag为1的时候调用“主界面”,否则给出提示。在timer_timer中添加代码,判断label1.left是否为0,如果为0则变量rightlabel为0,变

28、量leftlabel为1,label1以一定速率向右移动;如果label1.left等于form的长度减去label1的长度则变量rightlabel为1,变量leftlabel为0,label1向左移动。在button2_click中添加代码,卸载整个系统(退出系统)。3.2.3 主界面“主界面”包括菜单和经过处理的图片组成。在各个菜单中包含子菜单,各个菜单里添加显示其功能的窗体的代码,并且使“主界面”的enabled属性为true(主界面可用)。在Form_Load()中根添加代码,是登录用的根据用户的级别限制某些菜单可用或者不可用。UserType = True为超级用户,否则为一般用户

29、。如果是一般用户系统管理、信息录入、打印报表菜单将不可用。在Form_QueryUnload添加代码,就是退出的时候释放掉所有窗口的资源免得造成内存泄漏,cn.Close是关闭ADO连接,For Each frm In Forms是销毁所有窗口。 3.2.4 基本信息录入本界面包括14个label控件,12个textbox控件,5个combo控件,12个commandbutton控件,一个datagrid控件和一个Timer控件。通过combo可以选择具体表,datagrid可以显示选择表,14个label分别为“学号”、姓名、性别、父母姓名、出生年月、地址、邮政编码、班级、专业、院系、电话号

30、码、附注,12个button分别是“第一个”、前一个、下一个、最后、修改(对基本信息)、更新、取消修改、删除(对基本信息)、添加、修改(对成绩)、删除(对成绩)、关闭。定义全局变量Option ExplicitDim rs As ADODB.RecordsetDim rs1 As ADODB.RecordsetDim txtSQL As StringDim MsgText As StringDim mybookmark As VariantDim mcclean As Boolean。在Timer1_Timer中添加代码对变量db,rs进行初始化,db连接数据库,rs打开“课程表”表。在com

31、bo中用方法combo4.additem选择数据库中的课程号和课程名。Combo3中添加文本优异、良好、中等、及格、不及格。循环rs.recordcount次,在combo2中用方法combo2.additem添加文本rs.fields,rs记录集使用方法rs.Fields(0)打开文件中的记录。这样combo中有所有的信息,管理员可以任意选择想对应的课程和课程号。在command1_click(添加)中添加代码。在这里用到了多个IF条件语句可以添加学生的成绩,课程号(Combo4)和课程名称(Combo2)在数据库已给出对并建立的连接,Adodc1.Recordset.Update MsgB

32、ox 添加成功! Else MsgBox 备注不能为空,请输入备注!。添加的成绩可以在DataGrid2显示出来。在command7_click(修改(对成绩)中添加代码。Set rs = cn.Execute(select 成绩 from 学生与课程 where 课程号= & Trim(Combo1.Text) & and 课程名称= & Trim(Combo2.Text) & and 学号= & Trim(Text2.Text) & ),根据变量rs的属性rs.state 判断rs是否已经存在,如果已存在,设置datagrid的属性datagrid2.enabled(由于已经设置了rs的属

33、性所以datagrid支持修改);如果不存在则根据各个IF条件语句msgbox给出提示“成绩和备注不匹配,请核对!”、“没有该课程成绩,不能修改!”、“ 该项不能为空,请输入备注!”、“ 该项不能为空,请输入课程名称!”、“ 该项不能为空,请输入课程号!”、“ 该项不能为空,请输入成绩!”。在command8_click(删除)中添加代码。输入以给成绩的课程号和课程名称,根据变量rs的属性rs.state 判断rs是否已经存在,调用rs的方法rs.delete;给出提示 If MsgBox(你的操作将会删除当前的纪录,你确信吗?),rs1.Close MsgBox 没有这条记录,无法删除!。在

34、command9_click(关闭)中添加代码。显示“主界面”,隐藏本界面,关闭rs集合,断开db连接。 在command2_click(第一个)中添加代码。用go to语句跳转第一条学生学籍的基本信息。 在command3_click(最后)中添加代码。用go to语句Adodc2.Recordset.MoveLast跳转最后一条信息。 在command4_click(下一个)中添加代码。Adodc2.Recordset.MoveNext 转到下一条信息。 在command5_click(前一个)中添加代码。Adodc2.Recordset.MovePrevious go to语句转到前一条

35、信息。 在command6_click(修改(对基本信息)中添加代码。使Command2、Command3、Command4、Command5、Command10的Enabled为False,text1致text12、Combo1和DataCombo1为True。 在CmdUpdata_Click(更新)中添加代码。更新是用于修改之后,使用IF条件语句,根据条件设置MsgBox,给出提示提示(请先修改学籍信息),若有信息示输入,提示(请输入学号!)。 在CmdBolish_Click(取消修改)中添加代码。使Command2、Command3、Command4、Command5、Command

36、10的Enabled为true,text1致text12、Combo1和DataCombo1为False。MsgBox 什么也没修改,无所谓取消不取消!。 在command10_click(删除(对基本信息))中添加代码。MsgBox Err.Description 提示(“你确信删除吗?”)。选是删除当前的一条记录。3.2.5 成绩录入成绩录入模块的界面包括五个个label控件,四个command控件,三个combo控件,两个adodc控件。Label主要起提示作用,command的caption属性分别为“添加”,“更改”,“删作”,“退出”。定义全局变量Dim rs As New ADO

37、DB.Recordset,设置db,rs,db1,rs1的属性为可以修改。在Command1(添加)中添加代码。使用八个IF条件语句设置各种条件,若符合条件则提示“添加成功!”否则谈出各种不匹配的窗口。在Command2(更改)中添加代码。Set rs = cn.Execute(select 成绩 from 学生与课程 where 课程号= & Trim(Combo1.Text) & and 课程名称= & Trim(Combo2.Text) & and 学号= & Trim(Text2.Text) & ),课程号和课程名称必须匹配,同样用到多个IF条件语句,例如成绩为80分的,备注中不能选不

38、及格,MsgBox 提示成绩和备注不匹配,请核对! 。在Command3(删除)中添加代码。If MsgBox(你的操作将会删除当前的纪录,你确信吗?, vbOKCancel, 警告) = vbOK Then,信息必须与学籍信息相同才能删除学生成绩。若没有记录则提示“没有这条记录,无法删除!” 。rs.Open 打开数据库中的连接(用来连接课程号和课程名)在Command4(退出)中添加代码。Unload Me 退出连接,显示“主界面”。 此外系统还提供了“课程录入”、“学生基本信息录入”等模块,界面图如下所示。由于处理过程与成绩录入类似,在此不在赘述。3.2.6 信息查询本界面包括两个frame控件,一个label控件,一个text控件,四个option控件,一个Adodc控件,一个datagrid控件。Frame控件可以乘放其他控件,使界面美观,label文字提示作用,datagrid控件显示记录集

温馨提示

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

评论

0/150

提交评论