学生档案管理系统毕业论文Word文档格式.doc

上传人:wj 文档编号:4020996 上传时间:2023-05-02 格式:DOC 页数:41 大小:602KB
下载 相关 举报
学生档案管理系统毕业论文Word文档格式.doc_第1页
第1页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第2页
第2页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第3页
第3页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第4页
第4页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第5页
第5页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第6页
第6页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第7页
第7页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第8页
第8页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第9页
第9页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第10页
第10页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第11页
第11页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第12页
第12页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第13页
第13页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第14页
第14页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第15页
第15页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第16页
第16页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第17页
第17页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第18页
第18页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第19页
第19页 / 共41页
学生档案管理系统毕业论文Word文档格式.doc_第20页
第20页 / 共41页
亲,该文档总共41页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

学生档案管理系统毕业论文Word文档格式.doc

《学生档案管理系统毕业论文Word文档格式.doc》由会员分享,可在线阅读,更多相关《学生档案管理系统毕业论文Word文档格式.doc(41页珍藏版)》请在冰点文库上搜索。

学生档案管理系统毕业论文Word文档格式.doc

Keywords:

studentsarchivesmanagementdatabaseVisualc++6.0Access

目录

1引言 4

1.1开发背景 4

2系统分析 5

2.1需求分析 5

3系统设计 7

3.1绘制用例图设计系统功能 7

3.2绘制系统流程图 7

3.3开发工具和开发技术的选择 9

4数据库分析与设计 10

4.1数据可分析 10

4.2数据库概念设计 10

图4-9登录用户实体图 12

4.3数据库逻辑结构设计 13

4.4数据库的创建 15

5公共类(数据记录类)设计 18

5.1创建ODBC数据源 18

5.2创建数据记录类 18

6登录模块与界面设计 21

6.1登录模块设计 21

6.2主界面设计 22

7学生档案管理模块设计 25

7.1系、专业、班级的管理设计 25

7.2学生档案信息管理设计 28

8学生成绩管理模块设计 30

8.1考试课程信息设置 30

8.2考试成绩查询设计 32

8.3考试成绩录入设计 33

8.4班级成绩的汇总统计设计 33

8.5学生总分名次统计设计 34

8.6学生单科名次统计设计 35

9系统管理模块设计 37

9.1用户注册设计 37

9.2备份/恢复数据库 38

参考文献 40

致谢 41

1引言

1.1开发背景

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

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

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

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

使用计算机对学生档案信息进行管理,具有着手工管理所无法比拟的优点。

例如:

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

这些优点能够极大地提高学生档案管理的效率。

作为一般小型的教育机构,以往对学生档案的管理采用的是人工的方式管理文件档案,无论是效率还是准确性都受到很大的限制。

因此,开发一套学生档案管理软件成为很有必要的事情。

同时,通过本系统的开发,数据的整理,也为学校将来接入Inter网作好先期的准备工作。

2系统分析

2.1需求分析

对学生档案的管理,目前最主要的需求有两部分,一是学生基本信息的管理,另一个就是学生成绩的管理与统计。

对学生的基本档案,按照系、专业、班级和学生的四级模式进行管理,要包含学生的基本信息,如姓名、性别、民族、年龄、入学、毕业时间等等。

要求便于档案的录入和管理,同时有灵活、快捷的查询功能。

学生成绩的管理与统计,则要求能对学生所有科目的考试成绩进行入档,重要的是具有查询统计功能。

如用户按照班级统计学生的平均成绩、及格率、优秀率等,统计学生个人的总成绩及排名,统计学生个人的单科成绩排名等。

2.2功能分析

为了维护数据系统的安全性和数据的准确性,设置了两种用户角色:

管理员和普通用户。

普通用户可以在现有班级设置的基础上,对学生基本信息进行管理,另外,还可以查询统计学生成绩。

具体功能如下:

查询学生基本信息,可以查看现有系、专业、班级的所有学生个人信息

添加、修改现有系、专业、班级的所有学生个人信息

查询学生的成绩

对成绩进行统计汇总

系统管理员角色,则可以对整个系统进行管理操作,其在普通用户功能的基础上,还增加了如下功能:

行政设置,包括设置系、系下属的专业以及专业下属的班级

考试科目的设置,包括设置考试类型、时间段以及科目名称

学生成绩的录入与管理

数据库的管理,包括数据库的备份与恢复

用户的管理,包括新用户的注册以及用户角色的设置

3系统设计

3.1绘制用例图设计系统功能

学生档案管理系统一共包含两种用户角色,分别是普通用户和管理员。

普通用户只具有基本的学生信息管理和学生成绩查询功能。

该角色只可以在现有的班级中查询、添加、删除、修改学生的基本信息,查询、统计所有学生的考试成绩。

图3-1

管理员角色相比普通用户,还具有设置院系、设置考试信息、录入成绩、用户管理和数据库管理功能。

图3-2

3.2绘制系统流程图

本系统需要对用户身份进行验证,验证通过后再判断用户是管理员还是普通用户,根据角色判断用户可以使用系统中的相应操作功能。

另外,对操作者的操作顺序也有一定的要求。

如,要添加学生记录,首先需要查看该学生所在的系、所学专业以及所在班级在数据库中是否存在,如果不存在,则首先需要添加设置这些信息。

同样,要录入学生成绩,其前提是该学生的基本信息在系统中已经存在。

这里以管理员角色为例,其系统功能模块图如图3-3:

图3-3

3.3开发工具和开发技术的选择

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

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

它简单易学、效率高,且功能强大,可以与Windows的专业开发工具SDK相媲美。

数据库系统采用的是Micorsoft的Access,采用Access2003开发工具

3.4系统的运行环境

系统可以直接在Win98、Win2000、WinXP环境下运行。

注意,系统运行时,不必手工设置ODBC数据源,只需将该数据库文件“StudentInfoManage.mdb”拷贝到与系统的可执行文件“StudentInfoManage.exe”同一目录下即可。

3.5系统类库设计

学生档案管理系统的系统类库设计如下:

数据库操作类:

数据库中的每一个表都定义了一个操作类,包括CDepartmentSet、CExamSubjectSet等。

他们从CRecordSet类继承而来。

对话框类:

用户与系统的交互、数据的显示都是通过对话框窗口来实现,因此需要定义一些对话框类,与相应的对话框资源进行关联,包括CClassDlg、CDepartmentDlg、CExamSubjectDlg等。

系统本身提供的框架类:

因为系统采用的是MFC单文档工程框架,因此其包括的系统类有CMainFrame、CStudentInfoManageApp等。

4数据库分析与设计

4.1数据可分析

考虑到系统的数据量较少,为了便于项目开发和维护,这里后台的数据库系统设计采用的是Micorsoft的Access数据库系统。

Access2000就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。

Access的优点在于它能使用数据表示图或自定义窗体手机信息,数据表示图提供了一种类似于Excel的电子表格,可以使数据库一目了然。

另外,Access允许创建自定义报表用于打印或输出数据库中的信息。

Access也提供了数据存储库,可以使用左面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。

Access是一种关系数据库工具,关系数据库使以开发的最通用的数据库之一。

4.2数据库概念设计

数据库需要存储的主要是两方面的内容,学生的基本档案和学生的成绩。

为了维护数据完整性和准确性,将学生基本信息实体中的系别,专业和班级提取出来,用单独的表来存储这些信息。

系统涉及实体图如下:

系的代码

系的名称

系别的描述

学院的系

图4-1系别实体图

学生所在的专业

专业的代码

专业的名称

专业所在的系

专业的描述

图4-2专业实体图

学生所在的班级

班级的代码

班级的名称

班级所在专业

班级所在的系

班级的辅导员

班级的描述

图4-3班级实体图

学生的基本信息

学号

姓名

所在的系

班级

专业

性别

名族

籍贯

入学时间

、、、、、、

图4-4学生信息实体图

科目代码

考试科目

考试类型

类型代码

图4-5考试类型实体图图4-6考试科目实体图

时间段代码

考试时间段

图4-7考试时间段实体图

编号

学生姓名

补考成绩

缺考指示

考试成绩

图4-8考试成绩实体图

登录用户

是否为管理员

用户名

用户密码

图4-9登录用户实体图

4.3数据库逻辑结构设计

系别信息表用来记录学院中所有系的基本信息,包括代码、名称及简介等信息,该表的逻辑结构如表4-1

表4-1department表

专业信息表用来记录学院中各系设置的专业信息,包括代码、名称、简介及所属系的信息,该表的逻辑结构如表4-2

表4-2major表

班级信息表用来记录各专业所分班级信息,包含代码、名称、简介及所属专业的信息,该表的逻辑结构如表4-3

表4-3class表

学生信息表用了记录学生的基本档案,包括学生的姓名、学号、性别、出生年月、家庭地址的基本信息。

另外,还必须包含学生所在的班级、所的专业及所在的系,该表的逻辑结构如表4-4

表4-4student表

考试类型信息表用来记录所有的考试类型,如期中考试、期末考试、平日测试、过级考试等。

包含类型代码和考试类型两个字段,其逻辑结构如表4-5

表4-5examtype表

考试科目信息表用来记录所有的考试科目,包含科目代码和考试科目两个字段,其逻辑结构如表4-6

表4-6examsubject表

考试时间段信息表用来记录所有的考试时间段,如2009上学期、2009下学期,包含代码和考试时间段两个字段,其逻辑结构如表4-7

表4-7examtime表

考试成绩信息记录表记录了所有的学生所有科目的考试成绩,搞好记录代码、学号、姓名、所在班级、考试类型、考试科目、考试时间段、考试成绩、补考成绩,以及是否缺考等字段,其逻辑结构如表4-8

表4-8score表

用户登录信息表用来记录系统的所有使用用户信息,包含用户名、密码及权限三个字段,其逻辑结构如表4-9

表4-9user表

4.4数据库的创建

各表设计完毕后就可以创建数据库。

在Access2000中,新建数据库,名称为“StudentInfoManage.mdb”,然后通过创建向导创建各表,如图4-10:

图4-10

创建完毕后,即得到了数据库文件:

“StudentInfoManage.mdb”。

为了维护数据库中数据的准确性和完整性,对表中一些字段做了一定的限制。

对student表而言,其class字段(所属班级)的记录必须在class表中存在。

同样,class表中的major字段(所属专业)必须在major表中存在,而major表中的department字段(所属专业)必须在department表中存在。

对score表而言,其subject字段(考试科目)、type字段(考试类型)、time字段(考试时间段)的记录必须在examsubject、examtype和examtime中存在,而code(学号)、name(姓名)、class(班级)字段,必须在student表中存在。

各表的关系图如下图4-11:

5公共类(数据记录类)设计

程序开发中,对数据库访问与操作时通过MFCODBC类来实现的。

从CRecordSet类继承了CDepartmenfSet、CExamSubjectSet、CExamtimeset、CExamtypeSet、CmajorSet、CScoreSet、和CUserSet类,分别用于操作数据库中对应的表。

5.1创建ODBC数据源

要创建这些类,首先要定义ODBC数据源,可以通过手工方式“控制面板”→“管理工具”→“数据源(ODBC)”来设置,也可以在程序中通过编程来实现。

这里使用后者,类系统类CStudentImfoManageSpp的InitInstance函数中,添加如下代码:

BOOLCStudentInfoManageApp:

:

InitInstance()

{

AfxEnableControlContainer();

SQLConfigDataSource(NULL,ODBC_ADD_DSN,

"

MicrosoftAccessDriver(*.mdb)"

DSN=StudentInfoManage\0"

Description=Student\0"

"

FileType=Access\0"

DBQ=.\\StudentInfoManage.mdb\0"

);

//数据库文件

、、、

在第4行代码中通过API函数SQLConfigDataSource设置ODBC数据源,第5~9行代码分别设置相关参数,第9行代码将数据库文件的路径设置为默认目录,即VC工程所在的目录。

因此,编译运行程序前,需要将是数据文件“StudentInfoManage.mdb”复制到工程的根目录下,程序运行后,即实现了ODBC数据源的自动设置。

5.2创建数据记录类

设置了ODBC数据源后,就可以创建数据记录类。

以CScoreSet类为例,它与数据库中的表score表关联,具体创建过程如下:

在VC窗口中,执行“Insert”→“NiwClass”菜单命令,在弹出的对话框中,选择CRecordset作为基础,如图5-1:

图5-1

单击“确定”按钮,弹出“DatabaseOptions”对话框,在ODBC下拉列表框中,会发现新创建的数据源“StudentInfoManage”,如图5-2:

图5-2

选择数据源,单击“OK”按钮,弹出“SelectDatabaseTables”对话框,其中列出了数据库中的所有表,如图5-3:

图5-3

6登录模块与界面设计

系统启动首先进入登录模块,即创建“用户登录”对话框,在下拉列表框中选择登录用户名,只有输入正确的密码偶,才能进入系统界面。

6.1登录模块设计

登录对话框的关联类为CLoginDlg,在对话框的初始化函数OnInitDialog中,读取user表中的所有用户记录,将用户名添加到登录对话框的下拉列表中,代码如下:

BOOLCLoginDlg:

OnInitDialog()

CDialog:

OnInitDialog();

CUserSetrecordset;

CStringstrSQL;

UpdateData(TRUE);

strSQL="

select*fromuser"

;

if(!

recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))

{

MessageBox("

打开数据库失败!

"

"

数据库错误"

MB_OK);

returnFALSE;

}

while(!

recordset.IsEOF())

m_ctrUser.AddString(recordset.m_user);

recordset.MoveNext();

}

recordset.Close();

returnTRUE;

//returnTRUEunlessyousetthefocustoacontrol

//EXCEPTION:

OCXPropertyPagesshouldreturnFALSE

}

在第7、8行代码中通过CUwerSet对象实现查询user表的所有记录,第13——17行代码实现遍历查询结果记录集,将用户名添加到下拉组合框中。

6.2主界面设计

系统主界面为标准的Windows窗口界面,所有操作通过菜单项来实现。

为了美好界面,在视图窗口添加了图片,该图片的大小可以随着视图窗口的大小的改变而缩放,具体在视图类CStudentInfoManageView的OnPaint函数中实现,代码如下:

voidCStudentInfoManageView:

OnPaint()

CPaintDC*pDC=newCPaintDC(this);

//创建设备上下文

CBitmapbmp;

RECT Rect;

RECT RectView;

POINT ptSize;

CDC dcmem;

BITMAP bm;

intb=bmp.LoadBitmap(IDB_BITMAP_BG);

//将位图取出;

dcmem.CreateCompatibleDC(pDC);

//创建兼容设备上下文。

dcmem.SelectObject(&

bmp);

//用设备上下文选择位图;

dcmem.SetMapMode(pDC->

GetMapMode());

//设置映射方式;

GetObject(bmp.m_hObject,sizeof(BITMAP),(LPSTR)&

bm);

//映射位图;

GetClientRect(&

Rect);

ptSize.x=bm.bmWidth;

ptSize.y=bm.bmHeight;

pDC->

DPtoLP((LPPOINT)&

ptSize,1);

//设备单元to逻辑单元;

RectView);

CRectRectBmp=RectView;

//当位图宽度容纳不下的处理

if((RectView.right-RectView.left)>

bm.bmWidth)

RectBmp.left=RectView.left+(RectView.right-RectView.left-bm.bmWidth)/2;

RectBmp.right=bm.bmWidth;

else

RectBmp.left=RectView.left;

RectBmp.right=RectView.right-RectBmp.left;

//当位图高度容纳不下的处理

if((RectView.bottom-RectView.top)>

bm.bmHeight)

RectBmp.top=RectView.top+(RectView.bottom-RectView.top-bm.bmHeight)/2;

RectBmp.bottom=bm.bmHeight;

RectBmp.top=RectView.top;

RectBmp.bottom=RectView.bottom-RectBmp.top;

//加载视图到设备上下文中

StretchBlt(RectBmp.left,RectBmp.t

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

当前位置:首页 > 人文社科 > 文化宗教

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

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