VB+Access学生信息管理系统 第5页
输出:指定班级的学生名单
加工逻辑:根据学生记录,查询所有班级名称等于输入值的学生记录
加工编号:2.3.2
加工名称:修改学生记录
输入:指定班级学生记录,修改要求
输出:学生信息
加工逻辑:根据修改要求,改写学生数据
加工编号:2.4.2.1
加工名称:数据录入
输入:单个学生数据
输出:学生表,成绩表,总分表
加工逻辑:根据学生数据单,接受录入
在学生表中添加一记录,并将录入信息作为记录的值
在总分表中添加一记录,学号域为录入学号值,班级域为班级值,其余域为0
判断该生所在年级和专业,查询课程表,N=本学期所开课程数
在成绩表中添加N个记录,学号域均为录入学号值,班级域为班级值,其余域为0
加工编号:2.4.3.1
加工名称:检查数据格式
输入:学生记录
输出:有效格式的学生记录,无效格式的学生记录
加工逻辑:根据学生记录
IF 格式有效
输出有效格式记录
ELSE
输出无效格式记录
ENDIF
加工编号:2.4.3.2
加工名称:启动EXCEL调整
输入:无效格式学生记录
输出:有效格式学生记录
加工逻辑:启动EXCEL进行人工调整
加工编号:2.4.3.3
加工名称:逐行读取记录
输入:有效格式学生记录
输出:写入学生表,总分表,成绩表
加工逻辑:
DO WHILE 学生记录不为空
在学生表中添加一记录,用学生记录值更新各域
在总分表中添加一记录,用学生记录值中的学号值更新学号域,班级域为班级值
判断学生所在年级和专业,N=本学期该专业所开课程数
在成绩表中添加N个记录,学号域为学生记录值中的学号值,班级域为班级值
LOOP
加工编号:2.6.1
加工名称:查询备份数据
输入:班级名称
输出:备份数据
加工逻辑:在学生表中查询班级名称等于输入值的学生数据
加工编号:2.6.2
加工名称:数据备份
输入:备份数据
输出:备份数据文件
加工逻辑:
IF 数据已备份 THEN
退出
ELSE
生成备份文件
ENDIF
加工编号:2.5.1
加工名称:确认数据类型
输入:删除数据单
输出:班级名称,起止学号,所有数据
加工逻辑:
CASE1 按班级删除
获得班级名称
CASE2 按起止学号删除
获得起止学号
CASE3 按所有数据
查询学生表中的所有学生数据
加工编号:2.5.2
加工名称:删除指定范围数据
输入:起止学号
输出:更新学生表,总分表,成绩表
加工逻辑:在学生表、成绩表、总分表中查询学号值大于起始学号并小于终止学
号的学生记录
从各表中删除这些记录
加工编号:2.5.3
加工名称:删除指定班级数据
输入:班级名称
输出:更新学生表、成绩表、总分表
加工逻辑:查询学生表中班级名称为输入值的记录
从学生表中删除这些记录
从总分表中删除这些记录
从成绩表中删除这些记录
加工编号:2.5.4
加工名称:删除所有学生数据
输入:所有学生记录
输出:更新学生表、总分表、成绩表
加工逻辑:删除学生表、总分表、成绩表中的所有学生数据
(2)成绩管理模块加工条目
加工编号:3.2.1
加工名称:查询学生及课程信息
输入:班级名称
输出:指定班级的学生名单及本学期所开课程
加工逻辑:查询学生表中班级名称为输入值的记录
判断所在年级和专业,查询课程表获得本学期所开课程
加工编号:3.2.2
加工名称:成绩录入
输入:学生名单,课程信息,成绩录入数据
输出:更新成绩表
加工逻辑:选择课程名称,录入成绩
写入成绩表
加工编号:3.3.1
加工名称:查询成绩数据
输入:班级名称
输出:指定班级的学生名单及成绩数据
加工逻辑:判断成绩表,获得指定班级的学生成绩数据
加工编号:3.3.2
加工名称:计算总分及名次
输入:成绩数据
输出:总分与名次信息,更新总分表
加工逻辑:依次计算各记录总成绩,写入总分表
对总分表进行按总分降序排序,写入名次
加工编号:3.4.1
加工名称:查询成绩数据
输入:备份数据单
输出:备份数据
加工逻辑:对学生表和成绩表做笛卡尔积,获得指定班级的成绩与学生数据
加工编号:3.4.2
加工名称:数据备份
输入:备份数据,备份班级名称
输出:成绩备份文件
加工逻辑:根据备份班级名称生成成绩备份文件
(4)课程信息管理模块数据加工条目:
加工编号:5.2.1
加工名称:确认文护要求
输入:文护要求
输出:录入要求、修改要求
加工逻辑:判断对课程的录入或者修改
加工编号:5.2.2
加工名称:课程数据录入
输入:课程数据单,录入要求
输出:更新课程表文件
加工逻辑:根据录入要求,录入课程数据
在课程表中添加一新记录,将录入数据作为新记录值
加工编号:5.2.3
加工名称:课程数据修改
输入:课程数据单,修改要求
输出:更新课程文件
加工逻辑:查询课程信息,根据修改要求进行修改,并更新课程文件
(5)查询模块加工条目:
加工编号:6.2.1
加工名称:要求加工
输入:学生信息查询要求
输出:查询规则
加工逻辑:
CASE1 查询要求涉及[学生表|成绩表|总分表]
在[学生表|成绩表|总分表]中查询
CASE2 查询要求涉及学生表和成绩表
将学生表与成绩表做笛卡尔积,与查询条件形成SQL语句
CASE3 查询要求涉及学生表和总分表
将学生表与总分表做笛卡尔积,与查询条件形成SQL语句
CASE4 查询要求涉及学生表和成绩表、总分表
将学生表与成绩表、总分表做笛卡尔积,与查询条件形成SQL语句
CASE5 查询要求涉及总分表和成绩表
将总分表与成绩表做笛卡尔积,与查询条件形成SQL语句
最后将SQL语句作为查询规则输出
加工编号:6.2.2
加工名称:查询处理
输入:查询规则
输出:查询结果
加工逻辑:根据查询规则查询指定表,并显示结果
2.3 数据库设计
2.3.1 库设计
本系统涉及到的信息主要有5类:学生信息、成绩信息、教师信息、图书信息、后备信息。由于成绩信息和教师信息与学生信息关系密切,因此将这三类信息存放在同一数据库中,以提高多种信息同时读取的速度。按以上分析,将系统的数据库设计为三个:
一、学生数据库:
该数据库为中包含有以下各表:
1、学生表:记录学生的基本信息,是进行学生及其它各类信息处理的基础。
2、成绩表:记录学生的期中、期末及总评的各科成绩。
3、总分表:记录学生的期中、期末及总评的总分及名次。
4、课程表:记录各专业各年级开课情况,在添加学生记录时,可根据该表的情况决定在成绩表添加学生记录的个数。
三、后备数据库:
该数据库主要保存两类信息:学生信息、成绩信息。其数据表是按用户的要求在运行过程中动态建立的。
2.3.2 表设计:
1、学生表结构:
表2.1
编号 |
字段名称 |
字段类型 |
字段宽度 |
1 |
学号 |
CHAR |
15 |
2 |
姓名 |
CHAR |
10 |
3 |
性别 |
CHAR |
2 |
4 |
出生日期 |
DATE |
8 |
5 |
电话 |
CHAR |
10 |
6 |
家庭住址 |
CHAR |
50 |
7 |
班级 |
CHAR |
20 |
8 |
原毕业学校 |
CHAR |
50 |
9 |
是否住宿 |
CHAR |
4 |
10 |
政治面貌 |
CHAR |
6 |
11 |
入学总分 |
LONG |
4 |
12 |
专业 |
char |
20 |
2、课程表结构:
表2.2
编号 |
字段名称 |
字段类型 |
字段宽度 |
1 |
课程名称 |
CHAR |
15 |
2 |
年级 |
CHAR |
10 |
3 |
专业 |
char |
20 |
3、成绩表结构:
表2.3
编号 |
字段名称 |
字段类型 |
字段宽度 |
1 |
学号 |
CHAR |
15 |
2 |
课程名称 |
CHAR |
15 |
3 |
期中成绩 |
LONG |
4 |
4 |
期末成绩 |
LONG |
4 |
5 |
总评成绩 |
LONG |
4 |
6 |
班级 |
char |
20 |
4、总分表结构:
表2.4
编号 |
字段名称 |
字段类型 |
字段宽度 |
1 |
学号 |
CHAR |
15 |
2 |
期中总分 |
LONG |
4 |
3 |
期末总分 |
LONG |
4 |
4 |
期中名次 |
LONG |
4 |
5 |
期末名次 |
LONG |
4 |
6 |
班级 |
char |
20 |
第辣章 详细设计
根据系统的主要功能及上一章的总体设计,系统开发进入第二个阶段:详细设计。在这一阶段的工作中,主要任务有以下几项:
1、根据原型化的开发原则,为系统的每个模块功能进行界面设计,作为进一步优化的基础。
2、进行系统的流程分析,为模块的细化做好准备。
3、对每个模块进行详细的算法设计。
3.1 系统界面设计
一、登录及系统主窗口界面设计
该部分界面主要包括登录窗口、系统主窗口、修改密码窗口。
1、登录窗口界面:
本系统中使用到的数据表主要有班级表、成绩表、缴费表、课程表、学生档案、用户资料,由这辣个表,组成了名为信息的数据库(如图一)。其中学生档案是本系统主要的
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页