大学生成绩查询系统

发布时间:2021-03-28 06:15:51   来源:文档文库   
字号:

随着科技的进步,计算机知识在各个领域广泛应用,计算机程序在高校教育的系统里面也扮演了举足轻重的地位。近年来高校生日益增多,高校每学期都组织科目考试。考试结束后,学生想要知道考试成绩,来检验自己一学期的听课质量,讲师想知道学生的考试成绩来改进自己的教学计划。在众多学生成绩中,进行人工查询实属不易。我们可以充分利用计算机带来的便利,借助Visual FoxPro 6.0计出大学生成绩查询系统。借助这样的系统,我们可以做到信息的规范管理、科学统计和快速查询,从而减少管理方面的工用量。此次我们小组使用Visual FoxPro 6.0编程,实现了大学生成绩查询系统的过程。本系统通过对大学生成绩查询系统进行可行性分析、需求分析和设计逐步将一个大学生成绩查询系统的实现过程呈现出来。该系统可以对学生的基本信息和成绩进行管理,最后本系统能对学生基本信息和成绩信息进行查询。

关键词:数据库;Visual FoxPro 6.0管理;查询



1 前言

1.1 作业背景

本文根据《数据库应用与开发》课程要求而做。

课程作业要求如下:

用数据库管理系统开发工具(Visual FoxPro)开发一个实用的小型管理信息系统。根据课程设计时间选择适当规模大小的设计题目,按照系统开发的流程及方法,踏实地开展课程设计活动。课程设计活动中,撰写相关技术文档。最后提交详细的课程设计报告。开发出可上机运行的管理信息系统,通过上机检查。

1.2 选题说明

要在有限的两周时间设计出一个小型的信息管理系统,考虑到我们知识面和视野以及信息系统的价值性,我们小组讨论决定设计一个大学生成绩查询系统比较合适。这个系统能够对大学生成绩进行查询和管理,比较贴近我们大学生的实际,具有较强的可行性、实践性和价值性。

1.2.1 基本思

设计该系统时,采用自底向上的设计方法。首先设计数据结构,然后设计表单、菜单、报表,最后设计主程序。

1.2.2 作业目标

大学生成绩查询系统要实现对大学生的成绩进行查询和管理,应该有成绩管理功能。要退出系统,需要有退出功能。如果想打印成绩信息,应该提供打印功能。所以大学生成绩查询系统应该包括以下功能。

成绩管理功能

该模块实现成绩查询的功能。用户在查询学生成绩时,有时需要了解学生的基本信息,因此希望在查询出的内容中包括学生基本情况和成绩信息。有时用户需要查询学生的某些课程成绩,因此应该具有查询课程成绩的功能。有时用户需要查询学生的学期成绩,因此应该具有该功能。

退出系统

完成了对大学生成绩的查询的操作后,应该可以安全地离开该系统。通过该模块实现安全退出大学生成绩查询系统

1.3 工作业绩

1.3.1 个人主要工作

我主要组织了我组成员进行讨论,建立系统结构,并进行可行性分析。我参与了表单的绘制,并进行了学生平均成绩绩点查询学生基本情况及成绩查询表单的设计和制作。我也进行了系统的修改和运行工作。同时参与了文档的录入、修改、排版和打印。

1.3.2 主要收获

通过这学期对数据库这门课的学习,我对数据库有了基本的了解。学会了怎样制作表单,菜单等内容,这对以后的学习工作有了很重大的帮助。

通过这两周的课程设计,我参与了课程设计的选题,构思,讨论,分配任务,设计程序等工作,其中遇到了很多的困难,但是我们组员并没有退缩,而是团结一致参与讨论,解决问题,排除困难,这让我们明白了合作的重要性,更学习到了数据库的主要精华,又使我掌握了使用各种关系数据库为后台数据库设计一个信息管理系统。

总之,这次课程设计受益匪浅,不仅锻炼了我做事坚持不懈的心态,也慢慢地培养了我不懂就查书的好习惯,我的自学能力也有了一定的提高,我更明白了搞计算机程序设计,要学到真正的技术完全要靠自己,在课堂上只能学到最基本的东西,但这最基本的东西也一定要学好。

1.3.3 自我评定

□优 □良 □中 □及格 □不及格

2 系统总体设计

2.1 系统结构图

开发该系统前,先要有一个清晰的系统总体功能图。在大学生成绩查询系统中,由项目管理器统一管理系统中的表单、数据表、程序、报表以及主菜单。系统的整体结构是先运行主程序,由主程序调用用户 登陆界面。成功登陆后,调出本系统的主菜单,通过主菜单访问各个表单和报表。表单和报表中的数据来自数据表中的数据。

2.1.1 总体功能流程图

大学生成绩查询系统的总体功能流程如图2.1所示

2.1 总体功能流程图

2.2.2 总体功能E-R

大学生成绩查询系统的总体E-R图如图2.2所示

2.2 缺少图名

2.2 数据库总体设计

进行数据库总体设计首先要进行需求分析,由需求确定系统所需要的数据表,然后确定表所需的字段,最后确定各个表之间的关联。

2.3 需求分析

大学生成绩查询系统主要包括用户登陆、成绩查询和成绩打印等功能。每个功能都要通过表单和报表来操作数据表中的数据,每个数据表存储了本系统所需要的数据信息。所以在进行数据库设计之前要分析出系统所需要的数据表。

2.4 所需的数据表

2.4.1 所需的数据表分析

分析大学生成绩查询系统的情况,首先需要了解学生的基本信息,即需要基本状况表。登录系统需要密码,因此在基本状况表中需要有密码字段。用户需要查询学生的单科成绩和学期的总成绩,因此需要课程名称表。所以需要的数据表有基本状况表、课程名称表、课程成绩表和学期汇总表。

2.4.2 数据表的字段

基本情况表用来记录学生的基本情况信息。主要包括学号、姓名、班级、性别、入学时间、密码等字段。课程名称表用来记录课程的名称信息,主要包括学期、课程代码和课程名称等字段。课程成绩表用来记录学生的课程成绩,主要包括学号、学期、课程代号、成绩、是否补考和补考成绩等字段。学期汇总表用来记录学生的学期汇总信息,主要包括学号、学期、总分、附加分数、学期汇总、原始名次和标准名次等字段。下面分别列出了各表的表结构,如表2.1-2.4所示。

2.1 基本情况表结构

字段名

字段类型

字段宽度

小数位

索引否

NULL

学号

字符型

10

主索引

姓名

字符型

10

班级

字符型

10

性别

字符型

2

入学时间

日期型

8

密码

字符型

10

2.2 课程名称表结构

字段名

字段类型

字段宽度

小数位

索引否

NULL

学期

字符型

10

普通索引

课程代号

字符型

10

主索引

课程名

字符型

20

2.3 课程成绩表结构

字段名

字段类型

字段宽度

小数位

索引否

NULL

学号

字符型

10

普通索引

学期

字符型

4

课程代号

字符型

10

普通索引

成绩

数值型

6

2

是否补考

逻辑型

1

补考成绩

数值型

6

2

2.4 学期汇总表结构

字段名

字段类型

字段宽度

小数位

索引表

NULL

学号

字符型

10

主索引

学期

字符型

10

普通索引

总分

数值型

8

2

附加分数

数值型

8

2

学期汇总

数值型

8

2

原始名次

整型

4

标准名次

整型

4

2.5 建立项目

项目管理器是visual foxpro 提供的强大的管理工具,它负责管理和组织本系统所需要的数据库、菜单、报表、表单、程序以及一些其他的文件,它是系统中文件、数据、文档和对象的集合。项目管理器共有6个选项卡,分别是【全部】选项卡、【数据】选项卡、【文档】选项卡、【类】选项卡、【代码】选项卡和【其他】选项卡。每个选项卡按一定的顺序和逻辑关系管理着项目中的文件。项目文件以扩展名.pjx.pjt进行保存。

通过项目管理器,用户可以快速、方便地存取存放在项目文件中的任何对象。建立项目管理器的步骤如下所示。

1启动visual foxpro ,进入程序主界面。单击菜单栏的【文件】 【新建】命令,在弹出的【新建】对话框中选择【项目】单选按钮,如图2.3所示。

2.3缺少图名

2单击【新建文件】按钮。在弹出的【创建】对话框中设置一个文件名,文件名设为大学生成绩查询系统,单击【保存】按钮后即可弹出【项目管理器】对话框,这个新项目就在项目管理器中建立起来了,如图2.4所示。

2.4缺少图名

2.6 表之间的关联

在表之间建立关联的目的是为了保持数据的一致性。通过对数据表内容的分析,需要在课程名称表和课程成绩表的【课程代码】字段之间建立关联;在基本情况表和课程表成绩表的【学号】字段之间建立关联;在学期汇总表和课程成绩表的【学号】字段之间建立关联。

完成了系统的总体设计后,就开始进行系统的详细设计,设计项目管理器、数据库、数据表、表单、菜单、报表和主程序

3 建立数据库和数据库表

3.1 建立数据库

首先创建数据库,在项目管理器中创建数据库保存数据库名为【成绩查询.dbc】。

3.2 建立数据表

我们要在数据库中建立表。在数据库设计器中建立基本情况表,课程名称表课程成绩表和学期汇总表。

为了保持表中数据的一致性,需要在各数据表之间建立参照完整性。当插入、删除或者修改表中记录时,就会参照引用相关联的另外一个表中的数据。关系数据库管理系统一个重要的功能就是参照完整性。必须先建立表之间的关系的,才能使用参照完整性。

(此章过于简单)

4 表单的设计

4.1 登录表单设计

登录表单提供用户登录接口。用户只有输入了正确的用户名和密码,才能登录进入系统。该表单使用基本情况表,其界面如图4.1所示。

4.1缺少图名

登录表单中控件属性的说明如表4.1所示。

4.1 表单中的控件设置

控件类型

控件名称及属性

说明

标签

登录表单fontsize属性值设为:18

标签

标签

学号

标签

标签

密码

标签

文本框

No

输入学号

文本框

Password1,passwordchar属性为【*】

输入密码

命令按钮

确定

从登录界面进入下一界面

命令按钮

退出

退出登录界面

该表单的caption属性为【登录表单】,name属性:login

登录表单的设计步骤如下所示。

在【项目管理器】对话框淡定【文档】选项卡中,选中【表单】选项。单击【新建】按钮,弹出【新建表单】对话框,如图4.2所示。

4.2缺少图名

单击【新建表单】按钮,弹出【表单设计器】窗口。一个名为form1 的空表单也随之出现在【表单设计器】窗口中。

右击【表单设计器】窗口,在弹出的快捷菜单中选择【数据环境】命令。

在弹出的【添加表或视图】对话框中,从【数据库中的表】列表中选择【基本情况】表如图4.3所示,单击【添加】按钮。然后单击【关闭】按钮,关闭【添加表或视图】对话框。

4.3缺少图名

布局完成完登录表单的控件后,开始设计表单的方法和事件代码。

登陆表单如图4.4所示

4.4缺少图名

4.2 学生平均成绩绩点查询表单设计

4.2.1 学生平均成绩绩点查询表单设计过程

学生平均成绩绩点查询表单方便用户查询自己的各科绩点,平均成绩及平均绩点。用户只有输入了自己的各科成绩和对应的学分,就能查询各科绩点、平均成绩及平均绩点。该表单界面如图4.5所示。

4.5缺少图名

学生平均成绩及绩点表单中控件属性的说明如表4.2所示。

4.2 表单中的控件设置

控件类型

控件名称及属性

说明

标签

平均成绩绩点查询表单fontsize属性值设为:14

标签

标签

请输入高数成绩

标签

标签

请输入大外成绩

标签

标签

请输入数据库成绩

标签

标签

请输入高数学分

标签

标签

请输入高数学分

标签

标签

请输入高数学分

标签

标签

高数绩点

标签

标签

大外绩点

标签

标签

数据库绩点

标签

标签

平均成绩

标签

标签

平均绩点

标签

文本框

Text1

输入高数成绩

文本框

Text2

输入大外成绩

文本框

Text3

输入数据库成绩

文本框

Text4

输入高数学分

文本框

Text5

输入大外学分

文本框

Text6

输入数据库学分

文本框

Text7

显示高数绩点

文本框

Text8

显示大外绩点

文本框

Text9

显示数据库绩点

文本框

Text10

显示平均成绩

文本框

Text11

显示平均绩点

命令按钮

确定

显示结果

命令按钮

退出

退出界面

该表单的caption属性为【学生平均成绩及绩点查询】,name属性:login

登录表单的设计步骤如下所示。

在【项目管理器】对话框定【文档】选项卡中,选中【表单】选项。单击【新建】按钮,弹出【新建表单】对话框,如图4.6 所示。

4.6缺少图名

单击【新建表单】按钮,弹出【表单设计器】窗口。一个名为form1 的空表单也随之出现在【表单设计器】窗口中。

单击表单控件中的标签控件,添加标签,将它们caption属性分别设为平均成绩绩点查询表单、请输入高数成绩、输入大外成绩、输入数据库成绩、请输入高数学分、请输入大外学分、请输入数据库学分、高数绩点、大外绩点、数据库绩点、平均成绩、平均绩点,其中平均成绩绩点查询表单fontsize属性值设为14

添加两个按钮,按钮caption属性分别为:【确定】和【退出】。

4.2.2 确定和退出代码

【确定】按钮的click事件的代码如下所示

A=THISFORM.Text1.VALUE

B=THISFORM.Text2.VALUE

C=THISFORM.Text3.VALUE

D=THISFORM.Text4.VALUE

E=THISFORM.Text5.VALUE

F=THISFORM.Text6.VALUE

a=val(a)

b=val(b)

c=val(c)

d=val(d)

e=val(e)

f=val(f)

IF a>=60

aa=(a-60)/10+1

ELSE

aa=0

ENDIF

aaa=STR(aa,5,2)

THISFORM.Text7.VALUE=aaa

IF b>=60

bb=(b-60)/10+1

ELSE

bb=0

ENDIF

bbb=STR(bb,5,2)

THISFORM.Text8.VALUE=bbb

IF c>=60

cc=(c-60)/10+1

ELSE

cc=0

ENDIF

ccc=STR(cc,5,2)

THISFORM.Text9.VALUE=ccc

G=(a+b+c)/3

g=STR(G,5,2)

THISFORM.Text10.VALUE=g

H=(aa*d+bb*e+cc*f)/(d+e+f)

h=STR(H,5,2)

THISFORM.Text11.VALUE=h

THISFORM.REFRESH

【退出】按钮的click事件的代码如下所示:

THISFORM.RELEASE

4.2.3 保存与运行

关闭表单设计器,在弹出的保存对话框中保存表单。文件命名为【学生成绩绩点查询】。

在【项目管理器】对话框中,选择【文档】选项卡下的【表单】中的【学生成绩绩点查询】,单击【运行】按钮。运行后的登录表单,如图11所示。

4.7缺少图名

4.3 基本情况及成绩表单设计

4.3.1学生基本情况及成绩表单设计过程

学生基本情况及成绩表单方便用户通过该表单添加或者删除课程成绩信息,也可以查询或者打印成绩信息。学生输入了班级,学号,姓名后,就能查询学生基本情况及成绩。该表单使用课程成绩表和基本情况表,其界面如图4.8所示.

控件类型

控件名称及属性

说明

标签

课程成绩查询表单fontsize属性值设为:8

标签

标签

请输入学号

标签

标签

请输入姓名

标签

标签

请输入班级

标签

命令按钮

第一个

查询第一个成绩

命令按钮

前一个

查询前一个成绩

命令按钮

下一个

查询下一个成绩

命令按钮

最后一个

查询最后一个成绩

命令按钮

查找

查找需要的学生成绩

命令按钮

打印

打印当前学生成绩

命令按钮

添加

添加学生及成绩

命令按钮

编辑

编辑新内容

命令按钮

删除

删除学生成绩

命令按钮

退出

退出界面

4.8缺少图名

用表单向导进行成绩表单的设计,在已经设计好的表单中适当调整各控件的位置。运行后的表单效果如图4.9所示。

4.9缺少图名

登录表单的设计步骤如下所示。

在【项目管理器】对话框定【文档】选项卡中,选中【表单】选项。单击【新建】按钮,弹出【新建表单】对话框,如图4.10所示。

图4.10缺少图名

单击【新建表单】按钮,弹出【表单设计器】窗口。一个名为form1 的空表单也随之出现在【表单设计器】窗口中。

单击表单控件中的标签控件,添加标签,将它们caption属性分别设为学号,姓名,班级。添加10个按钮分别为第一个,前一个,下一个,最后一个,查找,打印,添加,编辑,删除,退出。

4.3.2退出代码

【退出】按钮的click事件的代码如下所示:

THISFORM.RELEASE

4.3.3保存与运行

关闭表单设计器,在弹出的保存对话框中保存表单。文件命名为【学生基本情况及成绩】。

在【项目管理器】对话框中,选择【文档】选项卡下的【表单】中的【学生成绩绩点查询】,单击【运行】按钮。运行后的登录表单即可。

4.4 学期汇总表单设计

用户可以通过该表单添加、删除、查询或者打印学期汇总信息。该表单使用学期汇总表和基本情况表用表单向导进行成绩表单的设计,在已经设计好的表单中适当调整各控件的位置,运行后的表单效果如图4.11所示。

4.11缺少图名

4.5 学期汇总与课程成绩表单设计

用户通过该表单可以添加、删除、查询、或打印学期汇总信息和课程成绩信息。该表单使用学期汇总表和课程成绩表。用表单向导进行成绩表单的设计,在已经设计好的表单中适当调整各控件的位置,运行后的表单效果如图4.12所示

4.12缺少图名

4.6 菜单设计

菜单主要包括菜单的布局,创建自定义菜和菜单的使用。在该系统中,用户登录后就会出现菜单系统,通过菜单系统可以访问到系统的各个模块。本系统中,主要包含以下菜单。

文件:新建、打开、关闭、保存、另存为、页面设置以及推出

编辑:撤销、重做、剪切、复制以及粘贴。

成绩查询:课程成绩、学期汇总以及学期汇总与课程成绩。

成绩打印:报表设计和打印成绩表。

退出系统

帮助:帮助主题和关于。

在【项目管理器】对话框中,单击【运行】按钮,此时屏幕的最上面出现菜单名。例如单击菜单名【成绩查询】,会出现下一级菜单,如图4.13所示。

4.13缺少图名

4.7 报表设计

由于需要打印成绩信息,所以首先要设计出成绩报表。通过报表向导进行报表设计,在已经设计好的报表中适当调整各控件的位置,最终的报表形式如图4.14所示。运行后的报表效果如图4.15所示。

4.14缺少图名

4.15缺少图名

5 主程序和系统连编

5.1 主程序设计

在visual foxpro 6.0中。应用程序的入口称作主文件,是数据库管理系统的最先执行的程序。

主程序一般具有以下功能。

对系统进行初始化,设置系统的运行状态参数

定义全局变量

设置系统栏

调用系统登录界面

结束时清理环境

进行程序设计,首先建立主程序,在设置主文件。被设置的文件以粗体形式显示,如图5.1所示。

5.1缺少图名

5.2 系统连编

把应用程序中所用到的组件都添加到项目管理器中后,才能开始连编应用程序。完成系统连编后,在磁盘上可以找到该系统的可执行程序。运行后的界面如图5.2所示。

5.2缺少图名

结束语

在本次课程设计中,通过我们小组组员的团结合作,课程设计工作得以圆满的结束了。这两个星期的准备和设计制作,让我们小组成员学习到很多东西,尤其是对数据库的基本知识与实践能力。在这次课程设计过程中我们不仅是做了数据库学生成绩查询系统,更重要的是在我们准备这次课程设计过程中通过讨论学习我们接触到了以前在书本上学不到的知识。这次课程设计我们也遇到了很多困难也有停滞不前的时候,但是我们都没有放弃,而是分工合作,查询资料,相互讨论研究,询问其他同学,在一次次的实践当中摸索前进,遇到的一个个困难给了我们一次次重新学习、再次思索的机会。通过不断的整理完善,让我们重新又对数据库这门课程有了新的认识,对目前所掌握的知识进行审理,进行了再次的纠正或者完善,我们明白了光学会理论知识是不行的,理论的知识都是为现实当中的实践活动服务的。理论联系实际就在这里自然地得到实现。这使我们巩固已学知识,而且巩固动手操作的能力也大有进步。

此次课程设计用到的程序是VFP语言,我们就对VFP有了系统的了解,这个程序可以说是运用很广泛的程序,在很多领域中都可以用到。如果我们没有真正的去学习并操作,如果没有这次课程设计,那我们就不会真正掌握VFP的编程技巧呢,就不会用VFP搞前台界面,因此,这次我们在这次课程设计当中得到了宝贵的财富,这将在我们以后学习工作中给与我们力量,是我们光从书本上理解不了的。在这里,真诚的感谢刘老师给了我们这次宝贵的机会。

大学生成绩查询系统能够顺利完成,离不老师的悉心指导和周围同学的帮助。

老师的指导和帮助对我能够顺利完成这次毕业设计起到了关键性的作用,在这里表示最真诚的感谢和敬意。非常感谢我团队同学的团结协作,在大家的共同努力下,我能够顺利攻破每个难题完成数据库系统应用课程设计。

参考文献

[1] 金敏力,刘多林,田兆福. 数据库原理与应用教程——Visual Foxpro9.0[M]. 辽宁:东北大学出版社,2009.

[2] 夏邦贵,河海宾. Visual Foxpro6.0数据库开发经典实例精解[M].北京:机械工业出版社,2006.1

[3] 金敏力,田兆福,刘多林. Visual Foxpro6.0中文版实用教程[M]. 北京:机械工业出版社,2004

[4] 马军,王岩. Visual Foxpro毕业项目指南与项目实践[M].北京:科学出版社

本文来源:https://www.2haoxitong.net/k/doc/db7825f8bf64783e0912a21614791711cd7979fa.html

《大学生成绩查询系统.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式