学生档案管理系统SQL+MFC.docx
《学生档案管理系统SQL+MFC.docx》由会员分享,可在线阅读,更多相关《学生档案管理系统SQL+MFC.docx(15页珍藏版)》请在冰豆网上搜索。
学生档案管理系统SQL+MFC
课程设计报告
课程名称:
数据库原理课程设计
专业:
软件工程
姓名:
班级:
学号:
指导教师:
学生档案管理系统
一、需求分析
1引言
1.1编写目的
本系统的开发目的是为了开发出一套功能完善、操作便捷、及时性好、适用面广的高校学生档案管理系统,以提高高校学生档案管理的效率学生档案信息是学校管理的重要组成部分,它记录了学校所有学生的基本信息。
由于学生信息量的庞大,需要一个学生档案管理系统,这个系统能帮助档案理人员利用计算机,快速方便的对学生的基本信息、教育经历信息、奖惩信息等基本档案进行插入、删除、更改、查询等所需操作。
。
1.2背景
高校学生档案管理最初是人工方式进行,显然在信息化发展的今天,这远远不能满足档案管理的需要。
后来,随着单机板档案管理系统的开发,这在很大程度上解决了上述矛盾但是,这种系统如今也不能满足档案管理的要求了,这主要是由于高校的扩招,在校学生人数的增加。
本课程设计是在这种背景下提出的。
2任务概述
2.1目标
开发一个使用于学生档案管理的系统。
2.2用户的特点
学生档案的管理者。
3需求规定
3.1对功能的规定
(1)院系信息的添加、修改、删除和查询,院系信息包括院系名称、院系编号。
(2)学生基本信息的添加、修改、删除和查询,学生基本信息包括学生编号、学生姓名、性别、民族、籍贯、出生日期。
(3)学生教育经历信息的添加、修改、删除和查询,学生教育经历信息包括编号、起始日期、截止日期、学校名称。
(4)学生奖励和处罚信息管理,包括奖惩记录编号、奖惩日期、奖惩类型(0表示奖励、1表示处罚),奖惩说明。
(5)学生学籍变动信息管理,包括调转管理,学生学籍变动信息包括学籍变动编号、变动日期、转入学校、软入院系,原因说明。
3.2对性能的规定
检索迅速、查找方便、可靠性高、存储量大。
3.3界面需求
首先出现登陆界面,用户为学生档案的管理者。
3.4操作需求
点击按钮,可以执行相应操作。
4.数据流图
4.1功能数据流图,如图1。
图1-1学生档案管理功能数据流图
二、概念结构设计
1.E-R图
1.1院系信息模块,如图2-1。
图2-1院系信息模块
1.2学生基本信息模块,如图2-2。
图2-2学生基本信息模块
1.3学生奖励和处罚模块,如图2-3。
图2-3学生奖励和处罚模块
1.4学生奖励和处罚模块,如图2-4。
图2-4学生教育经历模块
1.5学生奖励和处罚模块,如图2-5。
图2-5学生学籍变动模块
1.6E-R图,如图2-6。
图2-6学生档案管理系统E-R图
2.E-R图说明
本系统的E-R图,主要包括6个实体,分别是学生基本信息、院系信息、学生奖惩信息、学生学籍变动信息、学生教育经历信息和档案管理员。
档案管理员可以管理多个学生档案,一个学院管理多个学生,一个学生可以有多个教育经历、多个奖励和处罚、多次学籍变动。
三、逻辑结构设计
在概念设计的基础上,根据设计得到系统总体的E-R图,按照概念模式与关系表转化的一般规则,结合实际的需要进行逻辑设计,E-R图中的实体、实体的属性和实体之间的联系转化为关系模式。
1.系统关系模型
(1)院系(院系编号、院系名称),主码:
院系编号。
(2)学生(学生编号、学生姓名、性别、民族、籍贯、出生日期、院系编号),主码:
学生编号,外码:
院系编号。
(3)学生教育经历(编号、学生编号、起始日期、截止日期、学校名称),主码:
编号,外码:
学生编号。
(4)学生奖励和处罚信息(奖惩记录编号、学生编号、奖惩日期、奖惩类型(0表示奖励、1表示处罚),奖惩说明),主码:
奖惩记录编号,外码:
学生编号。
(5)学生学籍变动信息(学籍变动编号、学生编号、变动日期、转入学校、软入院系,原因说明),主码:
学籍变动编号,外码:
学生编号。
(6)档案管理员(用户名、密码),主码:
用户名。
四、数据库物理设计
1.系统数据库表结构
数据库包含6个表
(1)院系表,保存学校院系的信息,结构如表4-1。
表4-1Classes的结构
编号
字段名称
数据类型
说明
1
Class_Id
int
院系编号,主键
2
Class_Name
varchar40
院系名称
(2)学生信息基本表student,结构如表4-2。
表4-2Student的结构
编号
字段名称
数据类型
说明
1
Student_Id
int
学号,主键
2
Student-name
varchar20
姓名
3
Sex
char2
性别
4
Birth
int
出生日前
5
Nationality
varchar40
民族
6
Family_Place
varchar60
籍贯
7
Class-card
varchar50
所在的院系编号
(3)学生教育经历记录表Experience,保存学生教育经历的基本信息,结构如表4-3。
表4-3Experience的结构
编号
字段名称
数据类型
说明
1
Expld
int
编号,主码
2
Student_Id
int
学生编号
3
Start_Date
char10
开始日期
4
End_Date
char10
终止日期
5
School
varchar50
学校名称
(4)学生奖惩表Evaluation,保存学生的奖励和处罚信息,结构如表4-4。
表4-4Evaluation的结构
编号
字段名成
数据类型
说明
1
Evaid
int
奖惩记录编号,主码
2
evadate
char10
奖惩日期
3
Student_Id
int
学生编号
4
EvaType
bit
奖惩类型(0表示奖励,1表示处罚)
5
Memo
varchar200
奖惩说明
(5)学籍变动表格Change,保存学生学籍变动的信息,结构如表4-5。
表4-5Change的结构
编号
字段名成
数据类型
说明
1
ChangeId
int
学籍变动编号,主键
2
Student_Id
int
学生编号
4
Changedate
Char10
变动日期
6
NewSchool
varchar50
转入学校
7
NewClass
int
转入院系编号
8
Reason
varchar200
学籍变动原因
9
Memo
varchar200
备注
(6)用户信息表Users,保存系统用户信息,结构如表4-6。
表4-6Users的结构
编号
字段名称
数据类型
说明
1
UserName
char50
用户名,主码
2
UserPwd
char50
密码
五、数据库的实施
1.系统模块图,如图5-1
图5-1系统模块图
2模块功能
2.1登陆模块
输入用户ID和用户密码,并判断输入是否正确,如图5-2
图5-2登陆模块程序流程图
2.2学生基本信息模块
开始程序并且选择学生基本信息按钮,可对学生基本信息进行增加、修改、删除和查询的操作,如图5-3。
图5-3学生基本信息模块图
2.2学院基本信息模块
开始程序并且选择院系信息按钮,可对院系信息进行增加、修改、删除和查询的操作,如图5-4。
图5-4院系信息模块图
3创建数据库Student,配置数据源,数据源名为“Student”。
用MFCAppWizard创建一个名为“学生档案管理系统”的基于对话框的应用程序框架。
设计各界面的对话框,为每个对话框创建类,并为对话框中控件绑定变量。
使用MFCClassWizard以CRecordset为基类,为各个表创建新类,并以“Student”为ODBC数据源。
六、系统运行结果
1.运行后显示登录对话框,输入用户ID号和用户密码(用户ID:
1234,密码:
1234)如图6-11
图6-1登陆界面
2点击基本信息管理按钮,显示学生基本信息表,如图6-2
图6-2显示基本信息管理界面
3点击添加按钮,显示编辑学生基本信息,如图6-3
图6-3编辑学生信息界面
4选中一行信息,点击删除按钮,弹出提示对话框,若确定则删除此条信息,如图6-4
图6-4删除一条学生基本信息记录
5选中一行信息点击修改按钮,出先修改学生基本信息,如图6-5
图6-5修改学生基本信息页面
6点击查询按钮,弹出输入学生学号的对话框,并输入学生学号,按确定输出要查询的学生基本信息,如图6-6和6-7
图6-6查询学生基本信息
图6-6查询学生基本信息
七、实习总结
本系统采用目前比较流行的ODBC数据访问技术,并将每个数据库表的字段和操作封装到类中,从而成功地将面向对象的程序设计思想应用到数据库应用程序设计中。
在实习中,我们可以把这学期所学的理论知识和实践联系起来,在所要开发的程序中渐渐融会贯通。
虽然我们对这些知识还运用得还不是很熟练,但是相信在现在和今后的学习中会得到更加深刻的掌握。
实习过程中我们一边设计一边探索,发现理论和实践要充分地结合,是需要扎实的基本功的,这就表明学好基础知识是理论付诸实践的前提。
在实习中我们学到了很多,希望在以后我们能充分利用实习的机会充实自己,并希望这样的机会能被更好更多地提供。