毕业设计论文VF6.0学生成绩管理系统设计

上传人:无*** 文档编号:62808831 上传时间:2022-03-16 格式:DOC 页数:41 大小:1.67MB
返回 下载 相关 举报
毕业设计论文VF6.0学生成绩管理系统设计_第1页
第1页 / 共41页
毕业设计论文VF6.0学生成绩管理系统设计_第2页
第2页 / 共41页
毕业设计论文VF6.0学生成绩管理系统设计_第3页
第3页 / 共41页
点击查看更多>>
资源描述
摘 要随着社会的发展,学生培养计划已不再一成不变,各个学校纷纷推出了面向全体学生的成绩查询服务。通过开发一个简化的学生成绩管理系统,旨在为大家提供一个更加宽松的环境,而且更符合学生的意愿已成为当代学生学习中不可缺少的一部分。也是学校更方便,快捷,准确的掌握,了解,管理每个学生的各个方面信息,对学校的发展,也为培养出一批更优秀的学生作为前提。以示VF6.0的强大功能。正是计算机技术迅速发展使得人们从过去繁复的手工劳动中解脱出来,从而使这种服务在现在才迅速普及,同时,编写一套完善的学生信息管理系统的任务就显的尤为重要了。成绩管理是学校管理的重要组成部分。成绩不仅关系到学生成绩升迁,在很大程度上度量了一个学生的学习效果;同时成绩关系到教师的教学成果的考评。成绩管理的重要性不言而喻,但是成绩管理在学校中是很繁重的,在每门课中,每个学生都要有对应的成绩记录。在学校各项管理中,成绩管理牵扯到的其它管理内容是最复杂的,它牵涉到了学生成绩管理、教师管理和课程管理等。所以在实际管理工作中,往往由于成绩记录的数量众多、管理复杂,造成成绩管理的混乱。鄂东职院学生成绩管理系统以VF6.0为软件平台,包括用户管理、成绩查询、成绩管理、报表打印四大模块。是一个实效,快捷,友好的系统,为学校管理者提供了更好的了解本学校学生的基本情况、教师基本情况、班级安排、课程安排及学校各方面的安排提供了帮助,可以说是得利助手。把复杂的系统简单化是鄂东职院学生成绩管理系统的特点,快捷,方便,准确是系统的长处,也为学校学生和老师提供了方便,并且可对相应的信息进行打印输出。关键词:数据库,学生成绩管理系统,查询,项目ABSTRACTAlong with the social development, the student fosters the plan is already no longer inflexible, the each school releases to face to the score search service of the student body in droves. This aim is indispensable in for everybody pro-vide a service for more loosenning from this designing aim at throwing brick leading jade, passing developping a student of simplification score management system, exhibition from and more matching students will had become contemporary student study a part. The each aspect information that the school is mo-re convenient that is also a development, fast, accurate control, understanding, manage each student, to school, and also for train an a more excellent student conduct and actions premise. Show the VF6.0 strong and big function.Exactly calculator technique the quick development make people setting free out from pastly the complicated handicraft labor, from but make this kind of served in now just quick universal, at the same time, the plait write the mission that a set of perfect students informations manage system and then show particularly for importance.The score management is the importance of the school management to constitute the part. The score not only relates to the student the score promoted, to a large extent generous character a study of student result; The score relates to at the same time the teachers teaching result tests .The importance of the score management is obvious, but the score manage to is very heavy at school, in each lesson, each student has to should of score record. At school in various managements, score the management leads long what other that pull the management contents is most complicated, it concerned the student the score the management, the teacher manages to manage etc. with course. So in actual management work, usually because score record of the quantity is numerous, management complicated, result in the score manage confusion.Edong duty courtyard student result management system management system regard VF6.0 as the software terrace, including system includes the customer management, score the search, score management, the statement prints four greatest molds piece.Is a real results, fast system, pursue studies the school governor provided better understand the basic circumstance, class in basic circumstance, teacher arrangement, course arrangement of this school student and the arrangement of school everyoneses provided the help, coulding be the make profit the assistant. Turns the complicated system in brief is this sys-tem that characteristics that strength, fast, convenience, the accurate is this sys-tem, pursuing pursued studies the school student to provided the convenience with the teacher.And can print the exportation to the homologous information proceeding.Keywords:Database, student score management system, search, item目 录摘 要IABSTRACTII1 概 论11.1课题背景及研究现状11.2系统的目的与意义11.3系统开发的环境21.3.1软件平台21.3.2硬件平台32 系统总体结构设计42.1系统开发目标和思想42.1.1系统的目标设计42.1.2 开发设计思想42.2 总体设计42.2.1 系统功能结构设计52.2.2 系统数据库结构63 系统详细设计83.1 系统的设计原则和思想83.2系统结构的详细设计83.2.1 登陆界面的设计83.2.2 学生成绩管理系统界面103.2.3 学生成绩查询界面113.2.4 管理界面113.2.5 信息管理的设计123.2.6 学生信息管理133.2.6 成绩添加173.2.7 学生成绩的修改183.2.8 成绩统计183.2.9 用户管理203.2.10 报表的设计213.3数据库的详细设计233.3.1数据库的需求分析233.3.2数据库逻辑结构设计233.3.3 数据库的完整性和安全性253.3.4数据库结构的实现253.3.5 数据库和表的建立263.4 主程序283.5 连编应用系统294 系统评价305结束语32致 谢34参考文献35371 概 论考试成绩的处理一直是教学管理的一项重要任务,学生成绩管理系统能够将教师从繁重的重复性劳动中解放出来,从而提高教学效率。1.1课题背景及研究现状Visual FoxPro(简称VFP)是xbase 数据库家族的最新成员,也是其前身的FOXPRO与可视化程序结合的产物1。 随着社会的发展,学生培养计划已不再一成不变,各个学校纷纷推出了面向全体学生的成绩查询服务,旨在为大家提供一个更加宽松的使用环境。要开发一个简化的学生成绩管理系统,而且更符合学生意愿的服务已成为当代学生学习中不可缺少的一部分。也是学校更方便,快捷,准确的掌握,了解,管理每个学生的各个方面信息,对学校的发展,也为培养出一批更优秀的学生作为前提,以示VF的强大功能。学生成绩管理是学校管理的重要组成部分。成绩不仅关系到学生成绩升迁,在很大程度上度量了一个学生的学习效果;同时成绩关系到教师的教学成果的考评。总之,成绩管理的重要性不言而喻,但是成绩管理在学校中是很繁重的,在每门课中,每个学生都要有对应的成绩记录。在学校各项管理中,成绩管理牵扯到的其它管理内容也是很复杂的,它牵涉到了学生基本信息管理、学生成绩管理、教师管理和课程管理等。所以在实际管理工作中,往往由于成绩记录的数量众多、管理复杂,造成学生成绩管理的混乱。1.2系统的目的与意义在上个世纪90年代中期以前,各个学校的成绩管理基本上都是靠手工进行,随着各个学校的规模增大,有关成绩管理工作所涉及的数据量越来越大,有的学校不得不靠增加人力、物力来进行成绩管理。但手工管理具有效率底、易出错、检索信息慢、对学校的管理提供决策信息较为困难等缺点。后来随着电脑的普及以及计算机软硬件的发展,市场上出现了一些成绩管理软件并被一些学校采用,但多数是通用性较强却很难适应各个学校的具体情况或满足各个学校的需要,所以想借毕业设计之际,为鄂东职业技术学院开发一个合适的成绩管理系统。选择鄂东职业技术学院来设计这个系统主要有两个原因:一是:在职院里认识许多老师,可以提供很多资料;二是:在职院学习的五年里,受到了很多老师的关怀,若开发的系统能投入使用并发挥作用,使有关人员从繁重的工作中解脱出来,也算是对鄂东职业技术学院和老师的一点回报。1.3系统开发的环境1.3.1软件平台1.程序设计语言鄂东职院学生成绩管理系统采用Visual FoxPro6.0。在计算机的实际应用中,Visual FoxPro 之所以能够脱颖而出,成为应用广泛的数据库管理软件和信息管理工作必不可少的工具,是因为它不仅具有Xbase系统的功能和特性,同时还有如下功能和特性2:(1)用户界面友好(2)面向对象编程技术功能强(3)快速创建应用程序(4)数据库的操作简便(5)多个用户可以一起开发程序(6)可与其它应用程序交互操作(7)独特的开发客户/服务器解决方案(8)可以升级早期版本2.数据库类型系统采用的数据库类型是Visual FoxPro6.0自带的数据库,此数据库系统有如下特点3:(1)数据的结构化(2)数据的独立性(3)数据共享(4)数据冗余度少(5)实施统一的标准(6)较高的安全性,完整性(7)易用性,实用性(8)数据一致性(9)终端用户受益3.操作系统的型号Visual FoxPro6.0对所依赖的运行软件的环境有一定的要求,鄂东职院学生成绩管理系统可以运行环境有:Windows 95/98/2000/XP/NT/ME或更高版本1.3.2硬件平台在Windows 98/XP平台上运行的最低硬件环境要求:(1) 处理器为486,50MHZ或更高档的硬件环境;(2) 10MB以上的存储器;(3) 键盘、鼠标;(4) 使用VGA或更高分辨率的显示器。2 系统总体结构设计鄂东职院学生成绩管理系统的目的是客观的评价学生的成绩,为以后改良教学方法提供依据,这就要求分析结果正确、客观、全面。2.1系统开发目标和思想2.1.1系统的目标设计鄂东职院学生成绩管理系统从问题开始,从上到下进行逐步功能分解,从下到上进行实现。系统开发的总体任务是实现信息、关系的系统化、规模化和自动化,从而达到提高学生成绩信息管理的效率。2.1.2 开发设计思想手工管理还存在着许多弊端,由于不可避免的人为因素,经常造成数据的遗漏、误报。计算机信息化管理有着储存信息量大、速度快等许多优点,处理信息及时快捷,同时也提高了工作人员的自身素质。建立计算机成绩管理系统,进一步提高办学效益和现代化水平。帮助主管学生成绩的工作人员提高工作效率,实现成绩信息管理工作流程的系统化、规范化和自动化。 鄂东职院学生成绩管理系统的开发设计原则: 1.尽量采用学校现有的软硬件环境,以及先进的管理系统开发方案,从而达到充分利用现有资源,提高系统开发水平和应用效果的目的。 2.系统应符合成绩管理的规定,满足管理人员的工作需要,并达到使用过程中的直观、方便、实用、安全等要求。3.采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参加开发的技术维护人员补充、维护。4.系统应具备数据库维护功能及时根据用户的需求进行数据的查询、添加、修改、删除操作。2.2 总体设计系统采用模块化设计思想,单一入口,单一出口,可以大大提高设计的效率和可用率,并且可以最大限度的减少不必要的错误4。2.2.1 系统功能结构设计1.系统总体结构图如图2.1所示:图2.1系统总体结构图登 陆 界 面信息管理打印报表学生信息管理新生录入毕业生删除学生基本信息添加查询修改成绩信息打印教师信息打印课程信息打印学生信息打印成绩统计按课程统计按学号统计按班级统计学生个人成绩查询成绩添加成绩修改课程信息管理新课程添加旧课程删除教师信息管理退休教师删除新教师添加教师信息查询班级信息管理新班级录入老班级删除成绩管理成绩查询按班级查询按年级查询按学号查询用户管理用户添加密码修改用户删除普通用户管理高级用户管理修改密码退出按 代 号 查2. 系统功能的描述系统功能的描述是系统的总体功能分析,是在系统开发的总体任务的基础上完成的。在项目中的鄂东职院学生成绩管理系统需要完成的主要有:学生个人成绩查询模块:学生通过自己的学号和合法密码就可以查询自己的所有的成绩,但是不能对自己的成绩进行修改,更不可以对他人成绩进行查询和修改。信息管理:这一模块是针对管理员而言的,包括对学生信息,课程信息,教师信息,班级信息和成绩的管理,在这个模块中设置了用户权限,保证了信息的保密性和安全性。学生信息管理:此模块也是针对管理员而言的,可以对学生的成绩进行查询并可对学生的基本信息进行修改、删除。课程信息管理:管理员可以对新课程进行添加,对旧课程的删除。保证了课程信息的及时更新。教师信息管理:管理员可对每位教师的基本信息进行管理,添加新教师,删除退休教师,并可对教师的编号进行修改。班级信息管理:管理员可对每个班级的基本信息进行修改,添加新班级,删除老班级。报表打印:可对学生的成绩,教师,课程和学生的基本信息进行打印,使每位老师和学生对各项信息一目了然。并为学校领导者了解最新信息提供了依据。用户管理:普通用户和高级用户均可利用自己的合法用户名和密码进行密码修改。对于高级用户可以对普通用户进行添加,删除,和密码的修改。但是普通用户就没有权力对高级用户的信息进行修改。退出:存盘退出或直接退出。2.2.2系统数据库结构数据库应用系统的开发过程中,数据库的结构设计是一个非常重要的环节,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生重要影响,好的数据库结构设计会减少数据库的存储量、提高数据完整性和一致性,使系统具有较快的响应速度,简化基于此数据库的应用程序的实现并具有良好的容错能力5。实体-联系方法是抽象和描述现实世界的有力工具。E-R图是用来描述客观世界的概念模型,提供了表示实体型、属性和联系的方法。用E-R图表示的概念模型独立于具体的数据库管理系统所支持的数据模型,它是各种数据模型的共同基础,因而比数据模型更一般,更抽象,更接近现实世界6。鄂东职院学生成绩管理系统的E-R图,如图2.2所示。课 程基本信息成 绩班 级教 师管 理 员学 生选修授课具有考试注册管理m n1mmn1mm1m1图2.2学生成绩管理系统的E-R图现将鄂东职院学生成绩管理系统E-R图转换为关系模式,如下:管理员 (姓名、密码);学生 (学号、姓名);班级(班级代码、班级名字); 课程(课程号、课程名字、学分、学时、老师代码); 成绩(学号、分数、课程号); 教师(老师代码、老师名字、课程代号); 学生基本信息(学号、姓名、密码、性别、班级代码、课程代码)。 有了数据项和数据结构,就为进下面的数据库设计打下了坚实的基础。3 系统详细设计鄂东职院学生成绩管理系统采用模块化程序设计的方法,因为采用模块化程序设计的方法可以使软件结构清晰,不仅容易设计也容易阅读和理解,这样一来既便于系统功能的各种组合和修改,又便于未参与的开发技术维护人员补充和维护。3.1 系统的设计原则和思想采用模块化设计,并严格按照单一口,单一出口的原则,自顶向下进行设计,自底向上进行实现。本着美观大方,易于操作和易于管理的思想完善。3.2系统结构的详细设计3.2.1 登陆界面的设计登陆界面是一个程序的门面,有了好的登陆界面才能给用户留下良好的印象,这样才能使用户怀着好的心情进行访问和使用。 针对鄂东职院学生成绩管理系统,登陆界面要尽最大努力使其美观大方并简洁明了,在登陆界面表单中采用字体滚动的形式,这样使界面不至于那么死板,而是增添了一分动感,完成这一功能是在表单中加入了计时器控件。运行之后效果如图3.1和图3.2所示。点击OK按钮就进入“学生成绩管理系统”界面,如图3.3所示。 图3.1登陆界面 图3.2 登陆界面图3.3 学生成绩管理系统登陆界面表单中的主要控件属性设置如表3.1所示。表3.1 登陆界面主要控件属性设置表Lble1Backcolor 0,255,64Back Style 0-透明Caption 鄂东职院学生成绩管理系统FontItalic .T.FontName 黑体Timer1Height 37Interval 8Enabled 真Command1Caption OKFontBold .T.-真FontItalic .T.-真ForeColor 0,0,255其中计时器控件的代码如下:if thisform.label1.left+3380thisform.label1.left=thisform.label1.left-1 &向左移动1个象素else thisform.label1.left=516 &回到右边endif 3.2.2 学生成绩管理系统界面作为主界面,是一个程序的入口,只有把这一部分设计的通俗易懂,并且易于操作,才使用户易于接受和易于操作,为以后的界面设计打下坚实的基础。在主界面中包括成绩查询、信息管理、用户管理、打印报表、退出五个模块。分别点击成绩查询、信息管理、用户管理、打印报表将进入相应的模块。点击退出按钮是,系统将自动退出主界面。如图3.4所示。其中,学生成绩查询权限归属于学生本人。信息管理、用户管理和打印各方面的信息的权限归属于合法的管理员。 图3.4 主界面运行后3.2.3 学生成绩查询界面在学生成绩查询模块中设置了权限,只有学生本人持有正确密码才能进入,并是只能对自己的成绩进行查询,而且无权更改学习成绩。现输入学号为001的学生输入密码,单击查询按钮,如果输入密码错误,将有“输入密码不一致”的错误信息提示,如图3.5所示。如果输入的密码为系统承认的合法密码,这时就有所要查询的结果显示,如图3.6所示。图3.5 信息提示 3.6 学生成绩查询3.2.4 管理界面在学生信息管理界面中输入合法管理员的姓名和密码,就进入了管理界面,管理界面中包括信息管理、成绩管理、成绩修改、成绩统计四个部分。如图3.7所示。在这一模块中采用了页框,只要单击要操作的页框,就可以很轻松的进入界面,不仅操作方便而且可以减少模块的个数,更重要的是节约的时间。主要属性设置如表3.2所示。图3.7 管理界面表3.2管理界面属性主要设置Pageframe1PageCount4Page1Caption信息管理Page2Caption成绩添加Page3Caption成绩修改Page4Caption成绩统计3.2.5 信息管理的设计如图3.7所示,在信息管理界面中采用按钮控件,包括学生信息管理、课程信息管理、教师信息管理、班级信息管理。只要选中所要操作项的按钮,然后点击“确定”按钮,就可以进入要访问的界面,如图3.8所示。 图3.8 信息管理界面3.2.6 学生信息管理在学生信息管理模块中包括学生信息的查询、添加、修改和删除。1. 学生信息查询在学生信息查询模块中,不仅可以按班级查而且可以按照学生自己的学号进行查询。可以满足不同的需要。现在按班级进行查询,在这里使用了下拉按钮,可以方便操作。现在下拉菜单中选中新闻班,对其班内的学生信息进行查询,单击查询按钮,结果如图3.9所示。如果按个人查询的话,只须输入学生的学号就可以了,现输入学号001,查询的结果如图3.10所示。图3.9查询学生信息图3.10按个人查询在查询按钮中加入的代码如图3.11所示。图3.11查询代码2.学生信息添加对新入学的学生信息的添加包括添加学号、密码、班级号、姓名、性别和专业。并且班级号、课程号和性别采用下拉式,可以渐少管理员的工作量。现添加一个学生信息,添加后的结果如图3.12所示。图3.12添加学生信息为了确定是否真的进行添加,单击添加按钮时会弹出提示对话框,如图3.13所示。图3.13添加提示如果真的要确定添加,将有“添加成功”的信息提示。如图3.14所示。3.14添加成功3.学生信息修改要想对学生的基本信息进行修改,在这一模块中就可以很轻松的实现,现在对学号为001的学生基本信息进行修改,姓名由“张三”改为“lotus”,性别由“女”改为“男”。如图3.15所示。与学生信息的添加相同的是,单击“修改”按钮后会有提示信息,“是否真的要修改”,确定要修改之后又会提示“修改成功”,方便又快捷。图3.15学生信息的修改4.学生信息的删除这一模块针对的是对毕业生以及退学的学生进行管理的,只须填入要删除的学生的学号就很方便的删除离校的学生的所有信息,但是,为了避免误删,当点击删除按钮时将会有信息提示,让管理员再确定一下是否要真的删除该学生。如图3.16所示。3.16删除学生信息3.2.6成绩添加其中考试或期末考试结束以后,无论学生还是教师、领导都很关心这一段时间学生的成绩,这就需要一个成绩输入系统,将每个学生的成绩备案。尤其是学生可以第一时间从自己的成绩上查找自己的不足,老师也可从中总结这一段时间的教学质量,有助于改进和完善。当然这一模块还是针对管理员来说的,只要输入学号、课程号和该课程的成绩,就可以将该学生的课程成绩添加进去,以备查询。添加界面如图3.17所示。3.17学生成绩的添加3.2.7学生成绩的修改总所周知,手工操作会有错误出现,但是计算机管理也难免会有错误的发生,这时要对出错的成绩信息进行修改,只要输入学号、课程代码和正确的分数,就可以将错误信息覆盖。如图3.18所示。图3.18成绩的修改3.2.8成绩统计在各高校,为了激励学生的学习积极性,对成绩优秀的学生进行物质奖励或设置奖学金制度,这个时候需要对每个专业或者各个班级的学生进行统计,看一下有多少学生符合奖励的条件,在鄂东职院学生成绩管理系统中设置了统计模块,按分数段进行统计。操作也很简单,只要输入班级号和课程号,点击所要的分数段,立即就可以统计出来结果。在这里分数段采用了“选项按钮组”。现在统计0421班的英语成绩,条件是90分以上。会有学号和成绩显示,如图3.19所示。图3.19成绩统计成绩统计界面中的主要控件属性设置如表3.3所示。表3.3成绩统计控件属性Page4Captiaon成绩统计FontBold.T.真FontName黑体FontSize20Optiongroup1ButtonCount5Hight207Left328Top14Value1Width240Option1Caption统计90分以上Option2Caption统计8090之间Option3Caption统计7080之间Option4Caption统计6070之间Option5Caption统计60分以下确定按钮的代码如图3.20所示。图3.20成绩统计确定按钮代码3.2.9用户管理用户管理包括普通用户管理和高级用户管理。1.普通用户管理普通用户管理是针对学生而言的,为了确保自己的基本信息和成绩不被除程序员以外的用户盗取,普通用户可以根据自己的合法用户名和合法密码,对自己的密码进行修改,以保证信息的保密性。在修改密码成功之后系统将会给用户提示信息“修改成功”,这时用户的旧密码将作废,下次登录的时候系统只承认新密码。如图3.21所示。2.高级用户管理高级用户管理是管理员才具有这个权力进入,并对高级用户的密码进行修改,可以添加新的高级用户,同时可以删除已经不具有高级管理员的用户进行删除,进而确保了系统的安全性。输入合法管理员的名字和密码就进入了用户管理界面,如图3.22所示。图3.21普通用户管理图3.22高级用户管理3.2.10 报表的设计鄂东职院学生成绩管理系统中报表打印包括打印课程信息、打印班级信息、打印成绩信息、打印教师信息、和打印学生信息,可以满足不同的需求。如图3.23所示。图3.23报表打印1.设计方法报表的设计方法有三种,一是使用“报表向导”创建简单的单表或多表报表,这种方法比较简单,容易掌握,但格式比较固定不够灵活;第二种方法是使用“快速报表”从单表中创建一个简单报表;另一个方法是使用“报表设计器”直接按你所需的格式设计报表,尽管这种方法比较繁琐但生成的报表格式灵活。故在设计报表是可先使用“报表向导“进行总体设计,再使用“报表设计器”进行细节修改。2.下面以成绩报表为例来介绍报表的设计过程,步骤如下:(1)在项目管理器的文档页中选择报表,单击“新建”按钮并在弹出的对话框中选择“报表向导”。(2)在弹出的向导选取对话框中选择“一对多报表向导”。(3)从父表RSB中选择字段“stu-id”,”studentscores”,”scores-id”。(4)从子表JLB中选取字段“teacher-id”,“teacher-name”,“courde-id”。(5)为表建立关系,选“stu-id”为匹配字段。(6)单击“下一步“,选择按“stu-id”排序。(7)单击“下一步“选择报表样式中的”带区式“,它能生成表格形式。报表字段比较少,布局可选择”纵向“。(8)单击“下一步“进入报表设计的最后一步,选择”保存设计,并在报表设计器中修改“,完成在”报表向导“中的报表设计。输入报表标头“成绩报表”。3.报表的修改具体步骤如下:(1)选择标题标签控件,单击布局工具栏中的水平居中“按钮,单击格式菜单中的字体选项,弹出字体对话框,选择字体为”宋体“,大小为“小三”,效果为“下划线“。 (2)复制报表上方的线条控件,粘贴在报表页注脚的上方,按住shift键,同时选择两个线条控件,先单击布局工具栏中的“左对齐“再单击”水平居中“按钮。选中最上方的横线选格式中“绘图笔”的“2磅”选项使线条加宽。生成的报表如图3.24所示。3.24成绩报表3.3数据库的详细设计3.3.1数据库的需求分析 数据库的需求分析是数据库结构设计的第一个阶段,也是非常重要的环节。在这个阶段主要是收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为以后的进一步设计打下坚实的基础7。 通过对鄂东职院学生成绩管理系统的分析,设计的数据项和数据结构如下: 管理员表(姓名、密码); 学生表(学号、姓名); 班级一览表(班级代码、班级名字); 课程课程一览表(课程号、课程名字、学分、学时、老师代码); 成绩一览表(学号、分数、课程号); 教师一览表(老师代码、老师名字、课程代号); 学生基本信息表(学号、姓名、密码、性别、班级代码、课程代码)。 有了数据项和数据结构,就能进行下面的数据库设计。3.3.2数据库逻辑结构设计 需要将上面的数据库概念结构转化为Visual FoxPro 6.0 数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。 鄂东职院学生成绩管理系统数据库中各个表格的设计结果如下面的几个表格所示。每个表格表示在数据库中的一个表。表3.4管理员表字段名类型宽度索引是否为空姓名字符型10是null密码字符型10null表3.5 学生表字段名类型宽度索引是否为空学号字符型10是null姓名字符型10null表3.6班级一览表字段名类型宽度索引是否为空班级代码字符型10是null班级名字字符型10null表3.7教师一览表字段名类型宽度索引是否为空教师代号字符型10是null教师姓名字符型10null课程代号字符型10null表3.8 课程一览表字段名类型宽度索引是否为空课程号字符型10是null课程名字字符型10null学分字符型10null学时字符型10null老师代码字符型10是null表3.9成绩一览表字段名类型宽度小数位数索引是否为空学号字符型10是null课程代号字符型10是null成绩字符型100null表3.10学生基本信息表字段名类型宽度索引是否为空学号字符型10是null姓名字符型10null密码字符型10null性别字符型10null班级代号字符型10null3.3.3 数据库的完整性和安全性1.数据库的完整性数据库的完整性是指数据的正确性和相容性。数据库管理系统(DBMS)用一定的机制来检查数据库中的数据是否满足规定的条件完整性约束条件,数据的约束条件是语义的体现,将作为模式的一部分存入数据库中8。鄂东职院学生成绩管理系统中定义了表与表之间的联系有助于实现完整性规则,一般在程序中实现具体的完整性控制。2.数据库的安全性数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏。在数据库系统中,大量的数据集中存放,而且为许多用户直接共享,是宝贵的信息资源,系统的安全保护措施就显得更为重要,它保护数据库防止恶意的破坏和非法的存取。安全性问题不是数据库系统所独有的,所有计算机系统都有这个问题,只是在数据库系统中大量数据集中存放,而且为许多最终用户直接共享,从而是安全性问题更为突出。系统安全保护措施是否有效是数据库的主要指标之一9。鄂东职院学生成绩管理系统采用管理员表示和鉴定的方法实现数据库的安全,在登录数据库时,系统让管理员表示自己的身份,不同的管理员权限不同,系统进行核实,鉴别此管理员是否为合法用户,若是,系统进一步核实用户,通常要求用户输入口令,系统和对用户口令以鉴别用户身份。采用安全管理措施主要是为了防止没有修改权限的用户无意间修改了数据,因此采用用户标识和鉴定的安全管理措施就能够保障数据库的安全性。3.3.4数据库结构的实现 在需求分析,概念结构设计的基础上得到了数据库的逻辑结构之后,就可以在Visual FoxPro 6.0数据库系统中实现此逻辑结构。1.项目管理器的建立为了提高软件开发和维护的效率,应使用项目管理器设计一个应用系统。项目是有关文件、数据及对象的集合。项目管理器是按一定的顺序和逻辑关系,对数据库应用系统的文件进行有效组织的工具。使用项目管理器可以用最简单可视化的方法对数据表和数据库进行管理,在进行应用程序开发时,可以有效的组织数据表、表单、数据库、菜单、类、程序和其它文件,并将它们编译成可独立运行的.APP或.EXE文件。Visual FoxPro项目管理器是为了强化数据管理而对有关文件、数据及对象所作的某种集合。VF6.0 使用项目管理器提供简单可视的方法帮助用户管理各种复杂的资源,项目管理器有两个主要功能8:(1)基于项目类型进行项目的文件的组织(2)为集中项目程序中所有部件提供了一个容器,以准备将它们编译成应用程序(.APP)或可执行文件(.EXE)项目管理器中组织的部件包括表,报表,数据库,表单,查询,和其他部件。现在为鄂东职院学生成绩管理系统建立一个项目管理器,步骤如下:(1)单击Visual FoxPro 主菜单栏的文件选项,选择新建选项,而后将弹出新建对话框,在文件类型中选择项目,在单击“新建文件“按钮。(2)在弹出的创建对话框中输入创建项目文件名card.pjx和选择文件保存目录。(3)单击保存按钮后,新项目就在项目管理器中建立起来了。3.3.5 数据库和表的建立项目管理器建好之后,就可以建立鄂东学生成绩管理系统所需的表和数据了。要创建表,一般先创建数据库,在Visual FoxPro中,可以使用数据库来组织和关联表和视图。通过数据库,可以创建表,表之间的持久关系和存储过程、建立字段和记录的有效性规则、设置字段缺省值、建立触发器、建立与远程数据源的连接、创建远程表和本地表的视图。此外,还可以利用参照完整性来帮助维护数据库中相关表中记录的一致性等等10。而建立自由表就没有这许多方便之处。现以学生基本信息表为例来说明创建数据库和表的具体步骤如下:1.在项目管理器的全部页或数据页中选中数据库(在全部页中,要单击数据前的“+”号),再单击项目管理器右边的新建按钮。2.在弹出的新建数据库对话框中选择新建数据库,如图3.25所示。输入数据库名“student”后,Visual FoxPro弹出数据库设计器。图3.25新建数据库对话框3.按照表3.9的内容,在字段页中,输入字段名、字段类型、宽度、小数位数、索引和设定NULL值(NULL值功能是在一个记录中使用空标志,这时,记录的默认值将不起作用,因此表明这一字段没有值而非忘记输入默认值)。如图3.26所示。图3.26表设计器4.字段设置完成后,单击“确定”按钮后为表输入数据,如不想现在输入,可以先“取消”,以后再输入。具体方法如下:(1)如图3.27所示,选中要输入数据的表名,单击“浏览”按钮。图3.27浏览表(2)弹出无数据的表,在Visual FoxPro的主窗口中选择“表”,选择“追加新记录“命令后,就可以在表中输入数据了,如图3.28所示。不过这种方法只能一次输入一条记录,要输入第二条记录时,需再次选择追加新记录。如果有一个已有数据的表,就可以使用“使用追加记录”将这个有数据的表追加到当前表中,不过执行该操作要求两个表的结构完全相同。 图3.28追加记录3.4 主程序 在Visual FoxPro 中,主程序是系统的入口,主程序可以由.PRG程序、菜单或者表单 来充当,但是使用.PRG程序来充当主程序有更大的主动性。 在Visual FoxPro 中,主程序一般执行如下的功能6:1 设置运行环境;2 避免程序多次运行;3 声明全局变量;4 调用系统的首个表单;5 开始事件处理。在项目管理器中单击代码选项,选择“程序”,单击右边的“新建“,在里面添加主程序: clear allclose allset directory to curdir()_screen.windowstate=2_screen.width=625_screen.height=550_screen.autocenter=.t.public cuserdo form 欢迎界面on shut down quitread eventsclear allquit保存为“card.exe”3.5 连编应用系统 现已把应用系统设计完了,通过项目管理器就可以建立可执行程序。利用项目管理器编译成可执行文件很简单,它将在项目管理器中的全部文件编译在一起,形成一个独立的可执行文件。操作方法如下:(1)单击项目管理器右侧的“连编”按钮,系统将弹出连编选项对话框,如图3.29所示。 (2)选中“连编可执行程序”项和设定版本后,单击确定按钮开始连编。图3.29连编对话框4 系统评价1.系统的优点系统采用模块化设计,单一入口,单一出口的原则。从问题开始,从上到下进行逐步功能分解,从下到上进行实现的思想。鄂东职院学生成绩管理系统,不仅易于操作,易于理解,而且便于未参加编程的人员进行修改和完善。在系统中,完成了各方面信息的查询、修改、添加、删除等基本功能。并且又增添了统计和主要信息的报表打印。更重要的是对用户的访问权限进行了限制,保证了系统的安全性、完整性,保证了合法用户的权益。大部分界面采用页框,既大量渐少了界面的个数,更重要的是操作方便。2.系统的缺点以及改进设想从一般意义上来说,调试程序比编写程序更难。对一些函数命令理解不深,在编写过程中疏忽大意等都会造成在程序中出现问题,在编写VFP应用程序时可能会出现几百种错误,至少错误提示信息说明了这一点。 编程中常出现的错误有三类:逻辑错误,语法错误和例外错误。10 语法错误是其中最容易出现和纠正的。编程代码就是查找大多数这种错误的最快方法。但是有一些与语法相关的错误并不能在编程中表达出来。常见的语法错误包括:(1) 记书写表达式的等号与其他运算符(2) 确的拼写命令或函数名(3) 串两边的引号不配对(4) 在表达式中的括号不配对(5) CASEENGDCASE,DOENDDO,FORENGFOR,IFENDFOR,等不配对 逻辑错误比较难检测和解决。编译程序并不能发现它们。有时候严重的逻辑错误会停止程序的执行。有些逻辑错误会产生明显错误的结果。例如,字段中也许会有一个星号串(*),它表明这个字段溢出,要么是字段宽度太小,要么是计算的值太大。 例外错误是由程序直接控制的外环境引起的。例如,程序因为找不到所需要的文件而失败,也许这个文件已经被删除或移动。 下面结合具体例子说明在程序调试中的问题: (1)查询表单“学生基本信息”的设计中,当实现功能“删除与修改”时,最初在“删除与修改”页中设置了按钮“确定”,使得所作的选择得到确认,并在“确认”按钮的CLICK中的控件数目。但是,在输入代码后单击“确定”按钮后则出现“找不到属性VALUE”的错误提示框。 分析才想到是由于使用了属性Controlcount造成的,因为控件command没有属性VALVE。 要解决这个问题有两种方法:不使用Command控件,直接在这一页的Deactivte中编程,使得在这一页中仅有复选框控件,这样就不会找到属性VALVE了。不使用属性Controlcount,而直接采用语句FOR ncnot=1to25,且设置25个复选框的TAB键次序为1到25。TAB键次序的含义是:当按TAB键时,焦点从一个字段或对象移向另一个字段或对象的次序。TAB键次序可在系统菜单的显示中选择或表单设计器工具栏中直接选择。 设定TAB键次序时需要用鼠标单击其上的数字,并将其设置为所需要的。这种就可以使用按键“确定”了。 (2)解决删除记录时以独占方式打开文件 在运行成绩添加表单中的删除命令时,屏幕总是提示“文件必须以独占方式打开”,无法删除记录。开始在系统“选项”和数据环境中设置以独占方式打开,但后果不好。几经周折,最后在表单的数据环境JLB的Corsorh属性中 Exclusive项设置为.T.,表单运行时其数据环境中的表即以独占方式打开,很好的解决了这个问题。3.在对主菜单进行修改后,发现DO运行后的结果仍未改变。在创建主菜单,特别是编写菜单的跳过项时,需要反复的调试、运行。但当用DO主菜单.mpr命令运行时,发现并没有什么改变。起初还以为是对跳过项的设置不合法,但后来发现:即使是删除一项或添加一现菜单时仍未改变。发现此问题之后还以为是系统出了毛病。后经反复调试才发现,当对菜单进行了修改之后,用DO命令执行的内容菜单.mpr并没有改变,但是.mpr文件经过生成才会发生改变。本来想完成的模块还没有如愿以偿,比如成绩用图形(柱形,饼行等)表示,由于时间和能力有限未能完成,但我不会放弃,在以后的学习和设计中努力来实现。5结束语经过三个多月的不懈努力,终于顺利地完成了本科阶段的最后一次大型作业。在整个设计过程中,此次毕业设计先后经历了五个阶段,查找分析阶段,总体设计阶段,详细设计阶段,编程实现阶段和程序调试阶段,最终完成了一个基本实用的鄂东职院学生成绩管理系统。在毕业设计的这段日子里,真正体会到了作为一名软件编程人员在编程设计过程中的不易。最重要的是感受到了设计一个真正实用化的系统原来是那样的复杂,编写完成它又是那样的困难。以前,用一些软件系统来满足自己的要求,总认为编写这些程序是很简单的事情,不会去想有多么的复杂,多么的困难。通过这次动手设计鄂东职院学生成绩管理系统,才真正体会到了编程过程中的酸、甜、苦、辣。在一个软件系统的完成过程中,才发现设计编写程序是不简单的,但它还只是一小部分的工作,更多的时间和精力还要投入到详细设计阶段的需求分析及可行性分析和程序调试等环节中去。曾经,学习过软件工程这门课程,当时任课老师也介绍过设计、编写、完成一个软件系统复杂性,困难性,也详细介绍过在软件系统设计过程中时间的分配情况。但由于自己的无知对老师讲的总是半信半疑,没有真正用心去体会其中的含义。现在,有了这次经历,才深刻领悟到了其中的道理。通过这次毕业设计,对于设计鄂东职院学生成绩管理系统总结以下几点:(1)程序设计人员应具有正确的工作态度,细致,严谨的工作作风,认真地编写程序,力求避免程序语法,代码编写上的错误及在系统具体制作过程中出现的错误;(2)鄂东职院学生成绩管理系统应严格采用模块化设计,各个模块划分要清晰明确,简洁合理;(3)程序应具有详细的注释,保证良好的可读性,易于分析、修改和查询;(4)要对程序进行调试,且完整的记录下调试的情况,以便发现系统中的错误;(5)对程序进行维护,以保证系统持久地满足用户的需要。最后,通过这次毕业设计,受益非浅,从中明白了许多道理,
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 压缩资料 > 基础医学


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!