学籍管理系统经典式.docx

上传人:b****5 文档编号:8517197 上传时间:2023-01-31 格式:DOCX 页数:20 大小:600.39KB
下载 相关 举报
学籍管理系统经典式.docx_第1页
第1页 / 共20页
学籍管理系统经典式.docx_第2页
第2页 / 共20页
学籍管理系统经典式.docx_第3页
第3页 / 共20页
学籍管理系统经典式.docx_第4页
第4页 / 共20页
学籍管理系统经典式.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

学籍管理系统经典式.docx

《学籍管理系统经典式.docx》由会员分享,可在线阅读,更多相关《学籍管理系统经典式.docx(20页珍藏版)》请在冰豆网上搜索。

学籍管理系统经典式.docx

学籍管理系统经典式

前言

学生籍管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生学籍管理系统应该能够为用户提供充足的信息和快捷的查询手段。

但一直以来人们使用传统人工的方式管理文件学籍,这种管理方式存在着许多缺点,如:

效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。

随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。

作为计算机应用的一部分,使用计算机对学生学籍信息进行管理,具有着手工管理所无法比拟的优点。

例如:

检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。

这些优点能够极大地提高学生学籍管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。

因此,开发这样一套管理软件成为很有必要的事情,在下面的各章中我将以开发一套学生学籍管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法。

 

面向对象的程序设计

摘要

学生学籍管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。

对于前者要求建立起数据一致性和完整性强、数据安全性好的库。

而对于后者则要求应用程序功能完备,易使用等特点。

本系统主要完成对学籍的管理,包括添加、修改、删除,查询,打印信息以用户管理等六个方面。

系统可以完成对各类信息的浏览、查询、添加、删除、修改等功能。

系统的核心是添加、修改和删除三者之间的联系,每一个表的修改都将联动的影响其它的表,当完成添加或删除操作时系统会自动地完成学籍的修改。

查询功能也是系统的核心之一,在系统中主要根据学生姓名和学号进行查询,其目的都是为了方便用户使用。

系统有完整的用户添加、删除和密码修改功能,并具备报表打印功能。

系统采用MicrosoftOffice中的Access2000来设计数据库,并使用当前优秀的开发工具—VB6.0,它有着最为灵活的数据库结构,对数据库应用有着良好的支持。

论文主要介绍了本课题的开发背景,所要完成的功能和开发的过程。

重点的说明了系统设计的重点、设计思想、难点技术和解决方案。

[关键字]:

控件、窗体、数据库、visualbasic语言

目录

前言1

摘要2

绪言4

第一章系统规划4

1.1系统开发的意义4

1.2现状分析(背景分析)5

1.3目标分析6

1.4系统开发的目标6

第二章系统分析11

2.1业务流程分析11

2.2数据流程分析12

2.2.1数据流程图12

2.3数据存储分析及实体联系图12

2.4功能分析及功能层次图13

第三章系统设计与实施14

3.1软件模块结构设计14

3.1.1系统方案确定14

3.1.2软件结构设计14

3.2数据库设计14

第四章界面设计及代码设计15

4.1主界面具体实现见下图15

4.2登录界面图及源代码15

4.3主界面图及代码16

4.4用户管理介面17

4.5个人信息查询界面及源代码19

第五章系统测试与运行22

5.1测试计划22

5.1.1测试方案22

5.1.2测试项目22

5.2测试项目说明23

5.2.1查询基本信息窗口的测试23

总结23

参考文献24

 

绪言

本软件使用MicrosoftVisualBasic6.0进行编写。

数据库技术的产生与发展源于对于数据的组织和管理。

数据库技术是数据管理的技术,它随着数据管理任务的需要而产生于20世纪60年代中期。

这是一门综合性技术,涉及操作系统,数据结构,算法设计和程序设计等知识。

数据库技术的基本思想是对数据实行集中,统一,独立的管理,用户可以最大限度的共享数据资源。

数据库系统实际上是一个应用系统,它是在计算机硬,软件系统支持下,由用户,数据库管理系统,存储在存储设备上的数据和数据库应用程序构成的数据处理系统。

数据库系统是由数据,数据库管理系统,应用程序,用户组成。

数据库的特点:

1.实现数据共享2.实现数据独立3.减少了数据冗余度4.避免了数据不一致性5.加强了对数据的保护。

 

第一章系统规划

1.1系统开发的意义

今天,计算机的价格已经十分低廉,性能却有了长足的进步。

它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面:

首先:

计算机可以代替人工进行许多繁杂的劳动;

其次:

计算机可以节省许多资源;

第三:

计算机可以大大的提高人们的工作效率;

第四:

计算机可以使敏感文档更加安全,等等。

现在我国的大中专校中学籍的管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。

我作为一个计算机应用的专科生,希望可以在这方面有所贡献。

改革的总设计师邓小平同志说过“科学技术是第一生产力”,我希望能用我在校的所学,编制出一个实用的程序来帮助老师进行更有效的信息管理。

归纳起来,好处大约有以下几点:

1.可以存储学生的基本信息以及历届的学生信息,安全、高效;

2.只需一到二名信息录入员即可操作系统,节省大量人力;

3.可以迅速查到所需信息。

1.2现状分析(背景分析)

21世纪以来,人类经济高速发展,人们发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。

使原本的旧的管理方法越来越不适应现在社会的发展。

许多人还停留在以前的手工操作。

这大大地阻碍了人类经济的发展。

为了适应现代社会人们高度强烈的时间观念,学校信息管理系统软件为学校办公室带来了极大的方便。

我所开发的这个系统所采用的是当前较为流行的编程软件VISUALBASIC6.0作为实现语言,以数据库MicrosoftAccess作为系统的后台操作,其功能在系统内部有源代码直接完成。

我们只需按系统要求输入即可操作。

1.3目标分析

1.3.1系统总体目标

由于本系统管理的对象单一,都是在校学生,且每个数据内容具有较强的关联性,涉及的计算过程不是很复杂。

因此,比较适合于采用数据库管理。

且学校用于学生管理的微机都是PIII以上的机器,在存储量、速度方面都能满足数据库运行的要求。

在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上资料,特别是参考其它程序的功能,因此完全可以实现。

本系统的设计是在WindowsXP中文版操作系统环境下,使用VisualBasic6.0中文版开发成功的。

数据库是MIS中的重要支持技术,在MIS开发过程中,如何选择数据库管理是一个重要的问题,目前,数据库产品较多,每种产品都具有各自的特点和适用范围。

据库语言介绍如下:

VisualBasic语言

VisualBasic是一种可视化的、面对对象和条用事件驱动方式的结构化高级程序设计,可用于开发Windows环境下的种类应用程序。

它简单易学、效率高,且功能强大,可以与Windows的专业开发工具SDK相媲美,而且程序开发人员不必具有C/C++编程基础。

在VisualBasic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口(API)函数,以及动态链接库(DLL)、动态数据交换(DDE)、对象的链接与嵌入(OLE)、开放式数据访问(ODBC)等技术,可以高效、快速地开发出Windows环境下功能强大、图形界面丰富的应用软件系统。

总的来说,VisualBasic具有以下特点:

可视化编程:

用传统程序设计语言设计程序时,都是通过编写程序代码来设计用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察。

如果对界面的效果不满意,还要回到程序中修改。

有时候,这种编程-编译-修改的操作可能要反复多次,大大影响了软件开发效率。

VisualBasic提供了可视化设计工具,把Windows界面设计的复杂性“封装”起来,开发人员不必为界面设计而编写大量程序代码。

只需要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对象,并设置这些图形对象的属性。

VisualBasic自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而可以大大提高程序设计的效率。

面向对象的程序设计

4.0版以后的VisualBasic支持面向对象的程序设计,但它与一般的面向对象的程序设计语言(C++)不完全相同。

在一般的面向对象程序设计语言中,对象由程序代码和数据组成,是抽象的概念;而VisualBasic则是应用面向对象的程序设计方法(OOP),把程序和数据封装起来作为一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西。

在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,VisualBasic自动生成对象的程序代码并封装起来。

每个对象以图形方式显示在界面上,都是可视的。

结构化程序设计语言

VisualBasic是在BASIC语言的基础上发展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维方式。

VisualBasic语句简单易懂,其编辑器支持彩色代码,可自动进行语法错误检查,同时具有功能强大且使用灵活的调试器和编译器。

VisualBasic是解释型语言,在输入代码的同时,解释系统将高级语言分解翻译成计算机可以识别的机器指令,并判断每个语句的语法错误。

在设计VisualBasic程序的过程中,随时可以运行程序,而在整个程序设计好之后,可以编译生成可执行文件(.EXE),脱离VisualBasic环境,直接在Windows环境下运行。

事件驱动编程机制

VisualBasic通过事件来执行对象的操作。

一个对象可能会产生多个事件,每个事件都可以通过一段程序来响应。

例如,命令按钮是一个对象,当用户单击该按钮时,将产生一个“单击“(CLICK)事件,而在产生该事件时将执行一段程序,用来实现指定的操作。

在用VisualBasic设计大型应用软件时,不必建立具有明显开始和结束的程序,而是编写若干个微小的子程序,即过程。

这些过程分别面向不同的对象,由用户操作引发某个事件来驱动完成某种特定的功能,或者由事件驱动程序调用通用过程来执行指定的操作,这样可以方便编程人员,提高效率。

访问数据库

VisualBasic具有强大的数据库管理功能,利用数据控件和数据库管理窗口,可以直接建立或处理MicrosoftAccess格式的数据库,并提供了强大的数据存储和检索功能。

同时,VisualBasic还能直接编辑和访问其他外部数据库,如dBASE,FoxPro,Paradox等,这些数据库格式都可以用VisualBasic编辑和处理。

VisualBasic提供开放式数据连接,即ODBC功能,可通过直接访问或建立连接的方式使用并操作后台大型网络数据库,如SQLServer,Oracle等。

在应用程序中,可以使用结构化查询语言SQL数据标准,直接访问服务器上的数据库,并提供了简单的面向对象的库操作指令和多用户数据库访问的加锁机制和网络数据库的SQL的编程技术,为单机上运行的数据库提供了SQL网络接口,以便在分布式环境中快速而有效地实现客户/服务器(client/server)方案。

动态数据交换(DDE)

利用动态数据交换(DynamicDataExchange)技术,可以把一种应用程序中的数据动态地链接到另一种应用程序中,使两种完全不同的应用程序建立起一条动态数据链路。

当原始数据变化时,可以自动更新链接的数据。

VisualBasic提供了动态数据交换的编程技术,可以在应用程序中与其他Windows应用程序建立动态数据交换,在不同的应用程序之间进行通信。

对象的链接与嵌入(OLE)

对象的链接与嵌入(OLE)将每个应用程序都看做是一个对象(object),将不同的对象链接(link)起来,再嵌入(embed)某个应用程序中,从而可以得到具有声音、影像、图像、动画、文字等各种信息的集合式的文件。

OLE技术是Microsoft公司对象技术的战略,它把多个应用程序合为一体,将每个应用程序看做是一个对象进行链接和嵌入,是一种应用程序一体化的技术。

利用OLE技术,可以方便地建立复合式文档(compounddocument),这种文档由来自多个不同应用程序的对象组成,文档中的每个对象都与原来的应用程序相联系,并可执行与原来应用程序完全相同的操作。

动态链接库(DLL)

VisualBasic是一种高级程序设计语言,不具备低级语言的功能,对访问机器硬件的操作不太容易实现。

但它可以通过动态链接库技术将C/C++或汇编语言编写的程序加入到VisualBasic应用程序中,可以像调用内部函数一样调用其他语言编写的函数。

此外,通过动态链接库,还可以调用Windows应用程序接口(API)函数,实现SDK所具有的功能。

1.4系统开发的目标

出于本系统是学校学生管理的一个综合性的系统,本系统的设计目标将最终定位于完成以上所述的系统主要业务的基本模型上。

第二章系统分析

先用语言文字将企业中的组织结构有那些描述一下,然后画出组织结构图。

2.1业务流程分析

班级管理业务流程图:

 

2.2数据流程分析:

2.2.1数据流程图

由于本系统的数据模块较多,下面仅以学生成绩管理模块为例来进行编制。

 

学生成绩管理系统0层数据流程图

2.3数据存储分析:

实体联系图

1、数据模型设计。

首先来做出学生成绩管理系统的E-R图,分析这个问题的实体,从系统分析可以知道,学生的成绩是由任课教师按照课程给出的,学生、课程、教师组成了这个系统的三个实体。

2、再分析三个实体之间的联系。

首先,这三个实体不是一个统一体,学生成绩与教师没有内在联系,教师必须通过课程实体才能与学生建立联系,因而先不考虑。

课程与学生这两个实体是多对多联系;一位学生要学习多门课程,一门课程有多位学生共同学习。

而学习成绩是这两个实体“学生”和“成绩”共有的属性,应填在二者的联系“学习”边。

因为成绩既不是学生独有的,也不是课程独有的;“学生甲70分”或“英语70分”是不完全的,说“学生甲英语70分”才是正确的,因为70分是学生甲和英语课二者共有的。

这个E-R图可画成下图。

教师与课程这两个实体之间,是一对多联系;一位教师可以都多门课程,而一门课程对于学生成绩来说只能有一位教师(英语、高等数学有多位教师教,但对某个固定的学生来说只能有一位教师)。

其E-R图,如下所示。

 

2.4功能分析:

功能层次图

 

 

第三章系统设计与实施

3.1软件模块结构设计

3.1.1系统方案确定

通过对系统的调研与分析,系统主要应完成的功能有:

班级管理、学生成绩管理、学生交费管理、课程管理、成绩管理、系统管理等功能。

3.1.2软件结构设计

本系统在执行时,先根据不同的操作人员的需要来进行相应的模块,然后可以输入数据或者进行其它的查询或浏览等操作;总体来说,本系统属于一个事务型管理系统。

3.2数据库设计

数据库设计的好坏,关系到整个程序的好坏,数据库的结构是否合理,能不能满足现有的要求,今后系统的升级过程中是不是方便,能不能把数据库的结构直接移植到其它的数据库中使用,比如把ACCESS数据库的结构直接导入SQLServer中能不能直接使用,是不是还要修改程序等等。

这些都是非常重要的,本系统的数据库设计比较合理,而不是非常合理,因为每一个程序都可能有错误,有一位程序设计大师说过一句话,没有BUG(错误)的程序,那不叫程序!

下面列出数据库中的每一个表,包括表中的字段的含意。

第四章界面设计及代码设计

4.1主界面具体实现见下图

4.2登录界面图及源代码

OptionExplicit

PrivateDeclareFunctionGetUserNameLib"advapi32.dll"Alias"GetUserNameA"(ByVallpbufferAsString,nSizeAsLong)AsLong

PublicOKAsBoolean

DimtxtSQLAsString

DimmrcAsADODB.Recordset

DimMsgTextAsString

DimmiCountAsInteger

PrivateSubcmdOK_Click()

txtSQL="select*fromuser_Formwhereuser_ID='"&txtUserName.Text&"'"

Setmrc=ExecuteSQL(txtSQL,MsgText)

Ifmrc.EOF=TrueThen

MsgBox"没有这个用户,请重新输入用户名!

",vbOKOnly+vbExclamation,"警告"

txtUserName.SetFocus

Else

IfTrim(mrc.Fields

(1))=Trim(txtPassword.Text)Then

OK=True

mrc.Close

Me.Hide

UserName=Trim(txtUserName.Text)

Else

MsgBox"输入密码不正确,请重新输入!

",vbOKOnly+vbExclamation,"

PrivateSubtxtUserName_Click()

txtPassword.Text=""

EndSub

PrivateSubtxtUserName_KeyDown(KeyCodeAsInteger,ShiftAsInteger)

EnterToTabKeyCode

EndSub

4.3主界面代码:

PrivateSubcjdy_Click()

DataReport2.Show

EndSub

PrivateSubclaiMenu_Click()

frmclai.Show

EndSub

PrivateSubcusiMenu_Click()

frmcusi.Show

EndSub

PrivateSubMDIForm_Load()

dColor.Show

EndSub

5.4用户管理介面

用户管理代码:

DimmrcAsADODB.Recordset

DimMsgTextAsString

PrivateSubCommand1_Click()

DimtxtSQLAsString

IfText1(0)=""Then

MsgBox"用户名称不能为空!

",vbOKOnly,"提示"

Text1(0).SetFocus

ExitSub

EndIf

IfText1

(1)=""Then

MsgBox"用户密码不能为空!

",vbOKOnly,"提示"

Text1

(1).SetFocus

ExitSub

Else

IfText1

(1)<>Text1

(2)Then

MsgBox"两次密码输入不同!

",vbOKOnly,"提示"

Text1

(1)=""

Text1

(2)=""

Text1

(1).SetFocus

ExitSub

EndIf

EndIf

txtSQL="select*fromuser_Formwhereuser_ID='"&Trim(Text1(0))&"'"

Setmrc=ExecuteSQL(txtSQL,MsgText)

Ifmrc.EOF=FalseThen

MsgBox"此用户名已经存在!

",vbOKOnly,"警告"

Text1(0).SetFocus

ExitSub

EndIf

mrc.Close

txtSQL="select*fromuser_Form"

Setmrc=ExecuteSQL(txtSQL,MsgText)

mrc.AddNew

mrc.Fields(0)=Trim(Text1(0))

mrc.Fields

(1)=Trim(Text1

(1))

mrc.Fields

(2)=Now

mrc.Update

mrc.Close

Fori=0To2

Text1(i)=""

Next

MsgBox"用户信息添加成功!

",vbOKOnly,"提示"

Listapp

EndSub

PrivateSubCommand2_Click()

UnloadMe

EndSub

dColor.ZOrder1

EndSub

PrivateSubListapp()

DimtxSQLAsString

DimmrccAsADODB.Recordset

txSQL="select*fromuser_Form"

Setmrcc=ExecuteSQL(txSQL,MsgText)

List1.Clear

DoWhileNotmrcc.EOF

List1.AddItemTrim(mrcc!

user_ID)

mrcc.MoveNext

Loop

mrcc.Close

EndSub

PrivateSubList1_Click()

IfPicture1

(1).Visible=TrueThen

Text1(3)=List1.Text

EndIf

IfPicture1

(2).Visible=TrueThen

Text1(7)=List1.Text

EndIf

EndSub

PrivateSubList1_KeyDown(KeyCodeAsInteger,ShiftAsInteger)

EnterToTabKeyCode

EndSub

PrivateSubText1_GotFocus(IndexAsInteger)

Text1(Index).SelStart=0

Text1(Index).SelLength=Len(Text1(Index))

EndSub

4.5个人信息查询界面及源代码

DimmrcAsADODB.Recordset

DimMsgTextAsString

DimtxtSQLAsString

PrivateSubForm_Load()

WithMSFlexGrid1

.Cols=4

.ColWidth(0)=0

.ColWidth

(1)=0

.ColWidth

(2)=1700

.ColWidth(3)=1700

.TextMatrix(0,2)="奖惩日期"

.TextMatrix(0,3)="奖惩名称"

.Rows=1

EndWith

WithMSFlexGrid2

.Cols=6

.ColWidth(0)=0

.ColWidth

(1)=1550

.ColWidth

(2)=1550

.ColW

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > IT认证

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1