数据库学生成绩管理系统课程设计
- 格式:doc
- 大小:2.98 MB
- 文档页数:15
课程设计报告
• 1 问题描述
1.1 背景
1)某大学有学生若干万名,每个学生每学期必须学习若干门课程。
2)每个学生有学号、姓名、性别、班级、出生日期等基本信息。
3)每门课程有课程号,课程名称、任课教师、学分等信息。
4)学校需要对每个学生的基本信息、所学课程、成绩进行统一管理,以便于对信息进行查询、浏览和修改。
1.2 数据需求
学生成绩管理系统主要用于学生成绩信息管理,据分析学生成绩管理系统的数据表可浓缩为:学生基本信息表、课程基本信息表和学生成绩信息表。根据学校的情况,可按下面的步骤来分析:
(1) 确定学生所在的院系、所学的专业以及所在的班级。
(2) 确定学生所在班级的课程以及该课程学生的成绩;另外还需要知道学生所在班级、学号和学期。
(3) 分析学生的基本信息,如姓名、性别、出生年月、家庭住址、联系电话。
(4) 用户信息分析,通常包括用户名和密码。
• 2 解决方案 ( 或数据库系统设计 ) 2.1 E-R 模型设计
根据E—R图,将其转化为如下数据实体,数据库:学生成绩管理系统.dbc,包括如下的表和视图:
1) 学生登记表——学生表.dbf。
字段名称 字段类型 字段宽度
xh 字符型 10
xm 字符型 6
xb 字符型 2
csrq 日期型 8
bj 字符型 4
2) 课程登记表——课程表.dbf。
字段名称 字段类型 字段宽度
kch 字符型 2
kcm 字符型 10
js 字符型 10
xf 字符型 10
3) 成绩登记表——成绩表.dbf
字段名称 字段类型 字段宽度
xh 字符型 10
kch 字符型 2 课程
学生
班级 学号
出生日期 姓名
查询成绩
任课教师 课程号
课程名称
学分 成绩
性别 cj 数值型 3
4) 借书视图(lyxview)。
为了进行浏览总表的需要,需要设计了一个总表浏览视图,该视图从学生表.dbf等3个表中提取了10个字段的数据:
学生表.xh
学生表.xm
学生表.xb
学生表.csrq
学生表.bj
课程表.kch
课程表.kcm
课程表.js
课程表.xf
成绩表.cj
其视图关系可由以下SQL语句定义:
SELECT 学生表.*, 课程表.*, 成绩表.cj;
FROM 学生成绩管理系统!学生表, 学生成绩管理系统!课程表,;
学生成绩管理系统!成绩表;
WHERE 学生表.xh = 成绩表.xh;
AND 课程表.kch = 成绩表.kch
所建数据库如下图所示:
2.2 数据表 本系统需要使用的数据如下:
•3 系统实现
3.1 开发环境
本系统由SQL语言编写,在Visual Foxpro 6.0软件环境下可以正常运行
3.2 系统流程图
系统流程图模块主要由刘龙洋同学设计,而系统的功能设计主要由李江滨同学完成,我主要负责程序主要功能界面的设计,下面是部分流程图:
开始
用户登陆界面 、
3.3 程序主要功能界面
1、登录界面的设计:
第一步:在表单上单击鼠标右键,并在弹出菜单中选择“数据环境”项,打开数据环境设计器,添加数据表mm.dbf;
第二步:创建表单并保存为“登录”;
第三步:添加lable1,并设置其caption属性为“欢迎使用学生成绩管理系统!”;
第四步:添加lable2和text1并设置相关属性;
第五步:添加timer控件,并设置其Enabled属性为“真”,用于设计窗口动画。
登录界面如下图所示:
2、修改密码表单的设计:
第一步:在表单上单击鼠标右键,并在弹出菜单中选择“数据环境”项,打开数据环境设计器,添加数据表mm.dbf;
第二步:创建表单并保存为“修改密码”;
第三步:添加label1 、label2、 label3,并设置其caption属性分别为“请输入旧密码”、“请输入新密码”、“请确认新密码”;
第四步:添加text1、 text2、 text3,并设置相关属性;
第五步:添加command1和command2,并设置其caption属性分别为“确认”和“取消”;
修改密码表单如下图:
3、学生基本信息维护表单的设计:
第一步:创建表单,并保存为学生表.scx;
第二步:添加lable1~lable5,其caption的属性如下图所示 ;
第三步: 添加文本框text1~text5,并设置相关属性;
第四步:添加“院系”、“专业”、“班级”和“学期”列表框;
第五步:添加类,并设置相关属性,用于增添和修改学生基本信息; 浏览 查询 报表 帮助
总表浏成绩报课程报学生报版权所查询 维护表记浏览成浏览课浏览学更改口系统维护 第六步:添加文本框text6,并设置相关属性;
第七步:添加command1~command10,并设置相关属性;
第八步:添加“返回”按钮,其功能是关闭此界面;
第九步:执行运行命令,并进行测试。
4、课程信息维护表单的设计:
第一步:创建表单,并保存为课程表.scx;
第二步:添加lable1~lable4,其caption的属性如下图所示 ;
第三步: 添加文本框text1~text4,并设置相关属性;
第四步:添加类,并设置相关属性,用于增添和修改课程基本信息;
第五步:添加command1~command10,并设置相关属性
5、学生成绩信息维护表单的设计:
第一步:创建表单,并保存为成绩表.scx;
第二步:添加lable1~lable3,其caption的属性如下图所示 ;
第三步: 添加文本框text1~text3,并设置相关属性;
第四步:添加类,并设置相关属性,用于增添和修改学生成绩基本信息;
第五步:添加command1~command10,并设置相关属性;
第六步:执行运行命令,并进行测试
6、浏览学生表单的设计:
第一步:创建表单,并保存为“浏览学生.scx”;
第二步:使用组合框生成器来生成编辑组合框,其操作步骤是:首先选择要编辑的组合框,然后单击鼠标右键,在弹出的快捷菜单中选择 “生成器”菜单项,屏幕上弹出组合框生成器窗体,设置数据环境为“学生表.dbf”。
第三步: 添加label1和列表框,并设置相关属性;
第四步:添加command1,并设置其caption属性为“查找”。
7、浏览成绩表单的设计:
第一步:创建表单,并保存为“浏览成绩.scx”;
第二步:使用组合框生成器来生成编辑组合框,其操作步骤是:首先选择要编辑的组合框,然后单击鼠标右键,在弹出的快捷菜单中选择 “生成器”菜单项,屏幕上弹出组合框生成器窗体,设置数据环境为“成绩表.dbf”。
第三步: 添加label1和列表框,并设置相关属性;
第四步:添加command1,并设置其caption属性为“查找”。
运行界面如下:
8、查询成绩表单的设计:
第一步:创建表单,并保存为“查询成绩.scx”;
第二步:使用组合框生成器来生成编辑组合框,其操作步骤是:首先选择要编辑的组合框,然后单击鼠标右键,在弹出的快捷菜单中选择 “生成器”菜单项,屏幕上弹出组合框生成器窗体,设置数据环境为“成绩表.dbf”。
第三步: 添加label1,并设置其caption属性为“浏览学生成绩”; 第四步:添加command1、command2,并设置其caption属性为“查询”和“退出”。
运行界面如下: 9、学生表报表的设计:
学生表报表的设计过程说明如下:
报表数据源 学生表.dbf,该表已在前面做了说明。
报表分组条件 学生表.bj
报表排序条件 学生表.xh
该报表由向导程序生成,其后进行了一些格式美化的调整修改工作,关键问题是要先定义好作为数据源的表文件,运行界面如下:
10、课程表报表的设计:
学生表报表的设计过程说明如下:
报表数据源 课程表.dbf,该表已在前面做了说明。
报表排序条件 课程表.kch
该报表由向导程序生成,其后进行了一些格式美化的调整修改工作,关键问题是要先定义好作为数据源的表文件,运行界面如下: 11、成绩表报表的设计:
成绩表报表的设计过程说明如下:
报表数据源 成绩表.dbf,该表已在前面做了说明。
报表分组条件 成绩表.kcm
报表排序条件 学生表.xh
该报表由向导程序生成,其后进行了一些格式美化的调整修改工作,关键问题是要先定义好作为数据源的表文件,运行界面如下:
12、帮助表单的设计:
第一步:创建表单,并保存为 版权.scx;
第二步:添加lable1~lable3,其caption的属性如下图所示 ;
第三步: 设置其picture属性,选择背景图片。
运行界面如下:
3.4程序调试情况
本系统在设计好之后,初次调试过程中一直出现编译不成功的现象,系统总是显示你所编译的目标文件不存在,找不到你所编译的目标文件路径,后来通过查资料才知道,Visual Foxpro 6.0软件在对程序编译的时候默认路径为D盘,随后我们将原vf软件装入D盘,才编译成功。编译成功之后生成可执行文件的过程如下:
第一步:在“项目管理器”中设计完成相应的数据库、数据表、各种应用界面、菜单以及主控程序“主程序.prg”,并将“主程序.prg”设置为主文件;
第二步:生成可执行文件。
在项目管理器中 执行“连编可执行文件”创建可执行文件(.exe),单击“确定”按钮后系统打开“另存为”对话框。将文件另存为“学生成绩管理系统”,然后单击“保存”按钮,系统将自动对项目中的所有程序进行编译。
3.5 结论