学生学籍管理系统.docx

上传人:b****7 文档编号:15845800 上传时间:2023-07-08 格式:DOCX 页数:23 大小:222.07KB
下载 相关 举报
学生学籍管理系统.docx_第1页
第1页 / 共23页
学生学籍管理系统.docx_第2页
第2页 / 共23页
学生学籍管理系统.docx_第3页
第3页 / 共23页
学生学籍管理系统.docx_第4页
第4页 / 共23页
学生学籍管理系统.docx_第5页
第5页 / 共23页
学生学籍管理系统.docx_第6页
第6页 / 共23页
学生学籍管理系统.docx_第7页
第7页 / 共23页
学生学籍管理系统.docx_第8页
第8页 / 共23页
学生学籍管理系统.docx_第9页
第9页 / 共23页
学生学籍管理系统.docx_第10页
第10页 / 共23页
学生学籍管理系统.docx_第11页
第11页 / 共23页
学生学籍管理系统.docx_第12页
第12页 / 共23页
学生学籍管理系统.docx_第13页
第13页 / 共23页
学生学籍管理系统.docx_第14页
第14页 / 共23页
学生学籍管理系统.docx_第15页
第15页 / 共23页
学生学籍管理系统.docx_第16页
第16页 / 共23页
学生学籍管理系统.docx_第17页
第17页 / 共23页
学生学籍管理系统.docx_第18页
第18页 / 共23页
学生学籍管理系统.docx_第19页
第19页 / 共23页
学生学籍管理系统.docx_第20页
第20页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

学生学籍管理系统.docx

《学生学籍管理系统.docx》由会员分享,可在线阅读,更多相关《学生学籍管理系统.docx(23页珍藏版)》请在冰点文库上搜索。

学生学籍管理系统.docx

学生学籍管理系统

 

软件工程(设计)鉴定表

 

题  目

学生信息管理系统

姓  名

伊长宫学号0711701070

院  系

计算机科学与技术学院

专  业

软件工程

指导教师

倪健成职称

曲阜师范大学教务处制

摘要

随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。

管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。

本文介绍了采用“自上而下地总体规划,自下而上地应用开发”的策略开发一个管理信息系统的过程。

通过分析访客管理的不足,创建了一套行之有效的计算机管理学生的方案。

文章介绍了访客管理信息系统的系统分析部分,包括可行性分析、业务流程分析等;系统设计部分主要介绍了系统功能设计和数据库设计及代码设计;系统实现部分说明了几个主要模块的算法,本系统面友好,操作简单,比较实用。

一系统需求分析

为了充分实现素质教育。

多方面发展学生的兴趣爱好,大部分学校都设立了全校范围内的选修课。

学生可以根据自己的兴趣爱好和特长,选择自己喜爱的课程。

由于高等院校的快速发展,高校的规模越来越大,学生的数量与课程的数量都在迅速的增长,管理上的手工操作不仅仅会耗费学生和工作人员大量的时间和精力。

效率以及准确性也很低。

如何使同学们方便、快捷、准确的选课,已经成为一个重要的问题。

利用计算机进行学生选课方面的管理,不仅仅能够保证准确、无误、快速输出,而且还可以利用计算机对有关信息进行查询,检索迅速、查找方便、可靠性高、存储量大、保密性好。

要科学的实现信息化管理,开发一个适合学校的,能够进行信息存储、查询、修改等功能的管理信息系统是十分必要的;

通过调查,要求系统需要有以下功能:

由于操作人员的计算机知识普遍较差,要求有良好的人机界面;

原始数据修改简单方便,支持多条件修

方便的数据查询,支持多条件查询;

在相应的权限下,删除数据方便简单,数据稳定性好;

数据计算自动完成,尽量减少人工干预;

二可行性分析

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

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

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

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

数据库是MIS中的重要支持技术,在MIS开发过程中,如何选择数据库管理是一个重要的问题,本系统选用的数据库语言介绍如下:

Java具有以下特点:

(1)可视化编程:

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

如果对界面的效果不满意,还要回到程序中修改有时候,这种编程-编译-修改的操作可能要反复多次,大大影响了软件开发效率。

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

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

(2)面向对象的程序设计

Java支持面向对象的程序设计,是应用面向对象的程序设计方法(OOP),把程序和数据封装起来作为一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西。

在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上。

三系统设计

3·1.系统功能分析

系统开发的总体任务是实现学生信息关系的系统化,规范化和自动化。

学生管理系统需要完成的功能主要有:

●学生信息的输入,包括输入学生基本信息、所在班级、所学课和成绩等。

●学生信息的查询,包括输入学生基本信息、所在班级、已学课程和成绩等。

●学生信息的修改。

●班级管理信息的输入、查询、修改,包括输入班级设置,年级信息等。

●基本课程信息的输入、查询、修改。

●学生成绩信息的输入、查询、修改。

对上述各功能进行集中、分块、按照结构化程序设计的要求。

3·2.系统流程图

四数据库设计

4·1.数据库需求分析

●用户信息:

包括的数据项有:

用户名、密码、用户描述。

●学生基本信息:

包括的数据项有:

学生学号、学生姓名、性别、出生日期、班号、联系电话、入校日期、家庭地址、备注等。

●班级信息:

包括的数据项有:

班号、所在年级、班主任姓名、所在教室等。

●课程基本信息:

包括的数据项有:

课程号、课程名称、课程类别、课程描述等。

●课程设置信息:

包括的数据项有:

年级信息、所学课程等。

●学生成绩信息:

包括的数据项有:

考试编号、所在班号、学生学号、学生

姓名、所学课程、考试分数等。

学生管理系统数据流程图

 

4·2.数据库概念结构设计

本系统的实体有:

学生实体、班级实体、年级实体、课程实体。

各个实体具体的描述E-R图如图下所示。

学生图

班级图

课程图

年级图

现在需要将上面的数据库概念结构转化为SQLServer2000数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。

学生管理系统数据库中各个表格的设计结果如下面的几个表所示。

每个表表示在数据库中的一个数据表

表student-info学生基本信息表

表4-2class-info班级基本信息表

表course-info课程基本信息表

4·3.数据库结构的实现

经过前面的需求分析和概念结构设计以后,得到数据库的逻辑结构。

就可以在SQLServr2000数据库系统中实现该逻辑结构,利用SQLServer2000数据库系统中SQL查询分析器实现的。

(1)创建系统用户表格user_info

CREATETABLE[dbo].[user_Info](

[user_ID][char](10)COLLATEChinese_PRC_CI_ASNOTNULL,

[user_PWD][char](10)COLLATEChinese_PRC_CI_ASNULL,

[user_Des][char](10)COLLATEChinese_PRC_CI_ASNULL

)ON[PRIMARY]

GO

(2)创建学生基本信息表格student_info

CREATETABLE[dbo].[student_Info](

[student_ID][int]NOTNULL,

[student_Name][char](10)COLLATEChinese_PRC_CI_ASNULL,

[student_Sex][char]

(2)COLLATEChinese_PRC_CI_ASNULL,

[born_Date][datetime]NULL,

[class_NO][int]NULL,

[tele_Number][char](10)COLLATEChinese_PRC_CI_ASNULL,

[ru_Date][datetime]NULL,

[address][varchar](50)COLLATEChinese_PRC_CI_ASNULL,

[comment][varchar](200)COLLATEChinese_PRC_CI_ASNULL

)ON[PRIMARY]

GO

(3)创建班级信息表格class-info

CREATETABLE[dbo].[class_Info](

[class_No][int]NOTNULL,

[grade][char](10)COLLATEChinese_PRC_CI_ASNULL,

[director][char](10)COLLATEChinese_PRC_CI_ASNULL,

[classroom_No][char](10)COLLATEChinese_PRC_CI_ASNULL

)ON[PRIMARY]

GO

(4)创建课程基本信息表格course-info

CREATETABLE[dbo].[course_Info](

[course_No][int]NOTNULL,

[course_Name][char](10)COLLATEChinese_PRC_CI_ASNULL,

[course_Type][char](10)COLLATEChinese_PRC_CI_ASNULL,

[course_Des][char](50)COLLATEChinese_PRC_CI_ASNULL

)ON[PRIMARY]

GO

(5)创建年级课程设置信息表gradecourse-info

CREATETABLE[dbo].[gradecourse_Info](

[grade][char](10)COLLATEChinese_PRC_CI_ASNULL,

[course_Name][char](10)COLLATEChinese_PRC_CI_ASNULL

)ON[PRIMARY]

GO

(6)创建学生成绩信息表result-info

CREATETABLE[dbo].[result_Info](

[exam_No][char](10)COLLATEChinese_PRC_CI_ASNOTNULL,

[student_ID][int]NOTNULL,

[student_Name][char](10)COLLATEChinese_PRC_CI_ASNULL,

[class_No][int]NULL,

[course_Name][char](10)COLLATEChinese_PRC_CI_ASNULL,

[result][float]NULL

)ON[PRIMARY]

GO

五详细设计

主窗体的创建

上面的SQL语句在SQLServer2000中查询分析器执行后,将自动产生需要的所有表。

有关数据库结构的所有后台工作已经完成。

现在将通过学生管理系统中各个功能模块的实现,来编写数据库系统的客户端程序。

创建工程项目——Student-MS

如图5-1:

创建Student-MIS项目

创建主窗体

VisualBasic创建的应用程序可以是SDI(单文档界面)和MDI(多文档界面)。

在SDI的程序中,每个窗体之间是独立的。

而MDI的程序中,有一个窗体是主窗体,可以包含其他窗体,它的类型是MDIForm。

本系统采用多文档界面,这样可以使程序更加美观,整齐有序。

单击工具栏的“ADDMDIForm”按钮,生成一个如下所示的窗体,

公用模块

在VisualBasic中可以用共用模块来存放整个工程项目公用的函数、全局变量等。

整个工程项目中的任何地方都可以调用公用模块中的函数、变量,这样可以极大地提高代码的效率。

在项目资源管理器中为项目添加一个Module,保存为Module.bas。

下面就可以开始添加需要的代码。

由于系统中各个功能模块都将频繁使用数据库中的各种数据,因此需要一个公共的数据操作函数,用以执行各种SQL语句。

添加函数ExecuteSQL,代码如下:

PublicFunctionExecuteSQL(ByValSQL_

AsString,MsgStringAsString)_

AsADODB.Recordset

'传递参数SQL查询语句,MsgString传递查询信息

'自身以一个数据集对象的形式返回

DimCNnAsADODB.Connection

'定义连接

DimrstAsADODB.Recordset

'定义字符串

DimsTokens()AsString

'异常处理

OnErrorGoToExecuteSQL_Error

'用Split函数产生一个包含各个子串的数组

sTokens=Split(SQL)

'创建连接

SetCNn=NewADODB.Connection

CNn.OpenConnectString

'判断字符串中是否有指定内容

IfInStr("INSERT,DELETE,UPDATE",_

UCase$(sTokens(0)))Then

'执行查询语句

CNn.ExecuteSQL

'返回查询信息

MsgString=sTokens(0)&_

"querysuccessful"

Else

'创建数据集对象

Setrst=NewADODB.Recordset

'返回查询结果

rst.OpenTrim$(SQL),CNn,_

adOpenKeyset,_

adLockOptimistic

'rst.MoveLast'getRecordCount

SetExecuteSQL=rst

MsgString="查询到"&rst.RecordCount&_

EndIf

ExecuteSQL_Exit:

'清空数据集对象

Setrst=Nothing

'中断连接

SetCNn=Nothing

ExitFunction

'错误类型判断

ExecuteSQL_Error:

MsgString="查询错误:

"&_

Err.Description

ResumeExecuteSQL_Exit

EndFunction

ExecuteSQL函数有两了参数:

SQL和MsgString。

其中SQL用来存放需要执行的SQL语句,MsgString用来返回执行的提示信息。

函数执行时,首先判断SQL语句中包含的内容。

当执行查询操作时,ExecuteSQL函数将返回一个与函数同名的记录名对象(Recordset),所有满足条件的记录包含在对象中。

当执行如删除、更新、添加等操作时,不返回记录集对象。

在ExecuteSQL函数中使用ConnectString函数,这个函数用来连接数据库,代码如下:

PublicFunctionConnectString()_

AsString

'返回一个数据库连接

ConnectString="FileDSN=studentinfo.dsn;UID=sa;PWD="

EndFunction

由于在后面的程序中,需要频繁检查各种文本框的内容是否为空,这里定义了Testtxt函数,代码如下:

PublicFunctionTesttxt(txtAsString)AsBoolean

IfTrim(txt)=""Then

Testtxt=False

Else

Testtxt=True

EndIf

EndFunction

由于学生管理系统启动后,需要对用户进行判断。

如果登录者是授权用户,将进入系统,否则将停止程序的执行。

这个判断需要在系统运行的最初进行,因此将代码放在公用模块中,代码如下:

PublicfMainFormAsfrmMain

PublicUserNameAsString

SubMain()

DimfLoginAsNewfrmLogin

'显示登陆窗体

fLogin.ShowvbModal

'判断是否授权用户

IfNotfLogin.OKThen

LoginFailedsoexitapp

End

EndIf

UnloadfLogin

SetfMainForm=NewfrmMain

fMainForm.Show

EndSub

过程Main将在系统启动是首先执行,这就保证对用户的管理。

 

3学籍管理模块的创建

学籍信息管理模块主要实现如下功能:

●添加学籍信息

●修改学籍信息

●查询学籍信息

1.添加学籍信息窗体的创建

选择“学籍管理|添加学籍信息”菜单,将出现如下的窗体;

在窗体上放置多个文本框和下拉式文本框,用来输入学籍信息。

两个按钮用来确定是否添加学籍信息。

多个标签用来提示文本框中需要输入的内容。

2.修改学籍信息窗体的创建

选择“学籍管理|修改学籍信息”菜单,将出现如下所示的窗体。

图5-8修改学籍信息窗体

 

3.查询学籍信息窗口的创建

选择“学籍管理|查询学籍信息”菜单,将出现如下所示的窗体。

在这里可以按照各种方式以及他们的组合进行查询。

5·4班级管理模块的创建

班级管理模块主要实现如下功能:

●添加班级信息

●修改班级信息

●查询班级信息

2.修改班级信息窗体的创建

选择“班级管理|修改班级信息”菜单,将出现。

图5-11修改班级信息窗体

窗体中“查看班级信息”中的按钮,可以浏览数据库中的个条记录,这里就不在重复。

“修改班级信息”框架中的按钮用来修改记录,实现的方法和前面介绍的一样。

3.查询班级信息窗体的创建

选择“班级管理|查询班级信息”菜单,将出现。

5·5课程设置模块的创建

课程设置模块主要实现如下功能:

●添加课程信息

●修改课程信息

●查询课程信息

1.添加课程信息窗体的创建

选择“课程设置|添加课程信息”菜单,将出现。

2.修改课程信息窗体的创建

选择“课程设置|修改课程信息”菜单,将出现

“修改课程信息”框架中的4个按钮用来修改数据集中的记录,方法见前面的内容。

3.查看年级课程窗体的创建

选择菜单“课程设置|查看年级课程”,将出现。

将触发Click事件显示所选择年级的课程,代码如下:

PrivateSubcomboGrade_Click()

DimmrcAsADODB.Recordset

DimtxtSQLAsString

DimMsgTextAsString

DimiAsInteger

'清除列表框内容

listSelectcourse.CleartxtSQL="select*fromgradecourse_Infowheregrade='"&comboGrade.Text&"'"

Setmrc=ExecuteSQL(txtSQL,MsgText)

IfNotmrc.EOFThen

Fori=1Tomrc.RecordCount

listSelectcourse.AddItemmrc.Fields

(1)

mrc.MoveNext

Nexti

EndIf

mrc.Close

EndSub

单击“确认”按钮,将显示所有课程的确认信息,代码如下:

PrivateSubcmdSet_Click()

DimmrcAsADODB.Recordset

DimtxtSQLAsString

DimMsgTextAsString

'使各个控件有效

listAllcourse.Enabled=True

listSelectcourse.Enabled=True

cmdModify.Enabled=True

'查询数据

txtSQL="select*fromcourse_Info"

Setmrc=ExecuteSQL(txtSQL,MsgText)

While(mrc.EOF=False)

listAllcourse.AddItemmrc.Fields

(1)

mrc.MoveNext

Wend

mrc.Close

flagSet=True

EndSub

单击取消按钮,可以取消查看课程的信息,代码如下:

PrivateSubcmdAdd_Click()

'判断是否有内容被选中

IflistAllcourse.ListIndex<>-1Then

listSelectcourse.AddItemlistAllcourse.List(listAllcourse.ListIndex)

EndIf

EndSub

PrivateSubcmdDelete_Click()

'判断是否有内容被选中

IflistSelectcourse.ListIndex<>-1Then

listSelectcourse.RemoveItemlistSelectcourse.ListIndex

EndIf

EndSub

列表框的ListIndex属性用来指示当前选择项,说明没有被选中的数据项。

单击“确认设置”按钮,将课程设置数据保存到数据库中,代码如下:

PrivateSubcmdModify_Click()

DimiAsInteger

DimmrcAsADODB.Recordset

DimmrccAsADODB.Recordset

DimtxtSQLAsString

DimMsgTextAsString

DimmyBookmarkAsVariant

IfNotTesttxt(comboGrade.Text)Then

MsgBox"请先选择年级!

",vbOKOnly+vbExclamation,"警告"

ExitSub

EndIf

IfNotTesttxt(listSelectcourse.List(0))Then

MsgBox"请选择课程!

",vbOKOnly+vbExclamation,"警告"

ExitSub

EndIf

txtSQL="select*fromgradecourse_Infowheregrade='"&Trim(comboGrade.Text)&"'"

Setmrc=ExecuteSQL(txtSQL,MsgText)

Ifmrc.EOFThen

Fori=1TolistSelectcourse.ListCount

mrc.AddNew

mrc.Fields(0)=comboGrade.Text

mrc.Fields

(1)=listSelectcourse.List(i-1)

mrc.Update

Nexti

mrc.Close

MsgBox"课程设置成功!

",vbOKOnly+vbExclamation,"警告"

Else

mrc.Close

txtSQL="deletefromgradecourse_Infowheregrade='"&Trim(comboGrade.Text)&"'"

Setmrcc=ExecuteSQL(txtSQL,MsgText)

txtSQL="select*fromgradecourse_Info"

Setmrcc=Exe

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

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2