实例学生成绩管理系统设计
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
a
4
实例--学生成绩管理系统设计
2 数据库设计
2.1 数据库表的结构
本系统的数据库(学籍)中有四张表,分别是“管理员”、“学生”、 “课程” 和“成绩”。
1. 管理员表结构如下:
字段名
类 型 宽 度 小数位 说明
姓名
字符型 6
登录名
字符型 8
主码
口令
逻辑型 1
a
5
实例--学生成绩管理系统设计
2.学生表结构如下: 字段名 学号 姓名 性别
使用控制事件循环的步骤如下:
⑴启动事件循环:如果在主文件中执行下面的两个命令,应用程 序将显示表单STARTUP.SCX。
DO FORM STARTUP.SCX
READ EVENTS
⑵结束事件循环:结束事件循环可通过执行CLEAR EVENTS命令实 现。CLEAR EVENTS命令将挂起Visual FoxPro的事件处理过程,同时将 控制权返回给执行READ EVENTS命令并开始事件循环的程序。
a
9
实例--学生成绩管理系统设计
4 编译应用程序
4.1 构造应用程序框架
1.设置起始点
将各个组件联结在一起,然后使用主文件为应用程序设置一个起 始点。主文件作为应用程序执行的起始点,可以包含一个程序或者表 单。当用户运行应用程序时,Visual FoxPro将为应用程序启动主文件, 然后,主文件再依次调用所需要的应用程序其他组件。所有应用程序 都必须包含一个主文件。一般说来,最好的方法是为应用程序建立一 个主程序。设置应用程序的起始点的步骤如下:
度 小数位 说明 主码,建主索引
类 型宽 字符型 6 字符型 4 数值型 5
度 小数位 说明 外码,普通索引 外码,普通索引
1
a
7
实例--学生成绩管理系统设计
2.2 数据库的建立
1.创建项目:创建一个名为“学籍”的项目文件,保存在指定磁盘 的文件夹中(比如C:\VFP中 );
2.创建数据库:在项目文件中新建一个名为“学籍”的数据库文件, 保存在和项目文件同一个文件夹中;
1.2 系统功能分析
本系统用于学校学生成绩管理,主要任务是对成绩管理的各种信 息进行日常管理,如查询、修改、增加、删除。针对这些要求,设计 了本学生成绩管理系统。该系统主要包括两部分:
“学籍数据维护”主要功能是系统维护人员对学生、课程和成绩 等基本信息进行维护,包括输入、删除、修改等功能。这个功能主要 为教务人员使用,故在使用时要核对用户名和口令。
a
12
实例--学生成绩管理系统设计
5. 恢复原始的开发环境。 如果要恢复储存变量原来的值,可以将它们宏替换为原始的SET命
令。例如,如果要在公共变量cTalkVal中保存SET TALK设置,可执行 SET TALK &cTalkval 命令。
2.查询模块:提供学生成绩查询界面,用户可以输入一个学号,该 模块查询并显示该学生的各门课程成绩。
3.数据维护模块:允许用户先选择一个维护对象(数据库表中如: 学生、课程、成绩等),然后进行维护工作(输入、删除、修改)。
4.用户验证模块:对于进入学籍数据维护功能的用户,进行用户名 和口令的验证。对于用户输入的用户名和口令,如果错误显示相应的 提示信息。
2.用户自定义完整性。在“成绩”表中,“成绩”字段的取值必 须在0至110之间。在“学生”表中,“奖学金”字段的取值必须>=0;
3.参照完整性。数据库的参照完整性是指在“子表”当中实现关 联的外部关键字,它的取值必需为“父表”中实现相应关联的主关键 字值的子集。即在“学生”表与“成绩”表之间的参照完整性要求: 在“成绩”表中,字段“学号”的取值必须是“学生”表“学号”字 段取值当中已经存在的一个值。同时,在“课程”表与“成绩”表之 间也必须遵守参照完整性的规则。
⑴在“项目管理器”中,选择要设置为主文件的文件;
⑵从“项目”菜单中选择“设置主文件”命令。
a
10
实例--学生成绩管理系统设计
2.初始化环境
主文件或者主应用程序对象必须做的第一件事情是对应用程序的环 境进行初始化。有时,可能需要使用编写代码来进行初始化,有关步 骤如下:
⑴初始化变量;
⑵建立一个默认的路径;
3.新建表:在数据库中分别新建“管理员”、“学生”、“课程” 和“成绩”表,建立相应的索引(主索引和普通索引),设置表之间 的永久性关联。
a
8
实例--学生成绩管理系统设计
2.3 数据库完整性的实现
1.实体完整性。在表“管理员”、“学生”、“课程”中,对于 主关键字的取值设置不允许为空值( null ),唯一性由主索引来保 证;
“学生成绩查询”主要功能是学生查询自己的各门课程成绩,按 学号检索该学生的信息,其中包括所有的学生记录。
a
3
实例--学生成绩管理系统设计
1.3 系统功能模块设计
1.主界面模块:提供学籍管理系统的主界面,是本系统的唯一入口 和出口。该界面提供用户选择并调用各子模块,对于进入学籍数据维 护功能还要核对用户名和口令。
⑶打开任意需要的数据库、自由表及索引;
⑷添加外部库和过程文件。
3.显示初始的用户界面。
初始的用户界面可以是菜单,也可是表单或其他的用户组件。在 主程序中,可使用DO命令运行一个菜单或使用DO FORM命令运行一个 表单来对用户界面进行初始化。
aห้องสมุดไป่ตู้
11
实例--学生成绩管理系统设计
4.控制事件循环
一旦建立了应用程序的环境,同时显示初始的用户界面,这时需 要建立一个事件循环来等待用户的交互使用。执行READ EVENTS命令, 使Visual FoxPro开始处理像鼠标单击、键盘输入这样的事件。
出生日期 奖学金 简历
类 型宽度 字符型 6 字符型 8 逻辑型 1 日期型 8 数值型 6 备注型 4
小数位 说明 主码,建主索引
2
a
6
实例--学生成绩管理系统设计
3.课程表结构如下: 字段名 课程号 课程名 学时数 学分数
4.成绩表结构如下: 字段名 学号 课程号 成绩
类 型宽 字符型 4 字符型 20 整型 3 整型 3
实例
学生成绩管理系统设计
实例--学生成绩管理系统设计
1 系统设计
1.l 设计思想
本系统设计思想:系统采用模块化程序设计方法,既便于系统 功能的各种组合和修改,又便于管理人员的维护。系统应具备数据 库维护功能,及时根据用户需求进行数据的查询、添加、删除、修 改等操作。
a
2
实例--学生成绩管理系统设计