已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目 录摘 要 . IIAbstract . III第一章 绪论 . 11.1 课题背景.11.2 需求分析 .2第二章系统分析 32.1 开发和运行环境 . 32.2 系统功能分析 . 32.3 数据库设计思想 .32.4 概念结构.4第三章系统功能实现.53.1 学生管理系统模块设计 53.2 学生管理信息数据库设计 . 53.3 学生信息管理系统界面的设计.6第四章系统主要源代码及调试. 174.1 主要源代码 . 174.2 系统调试 .18总 结 .19致 谢 .20参考文献 .21摘 要 学生信息管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。经过分析,我们使用MICROSOFT公司的Visual FoxPro开发工具,利用其提供的功能完备的工具、极其友好的用户界面、简单的数据存取方式,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。本系统主要是对学生基本情况,学生成绩进行管理的现代化的管理信息系统。每个管理模块都包括数据输入、修改、删除、追加、查询等功能,学生信息管理系统能高效、准确地完成这些功能,并达到界面美观友好、使用方便。关键字:Visual FoxPro;信息管理系统;数据库;数据窗口AbstractStudent information management system is a typical information management system, which mainly includes the establishment of database and front-end application maintenance and development of the two. Request for the establishment of data consistency and integrity, data security, a good library. For the latter application powerful, easy to use and so on. After analysis, we use the MICROSOFT Visual FoxPro development tool company, the use of its full-featured tool, extremely user-friendly interface, simple data access method, in particular data window can be simple and easy to manipulate intelligence database Object, the first prototype application system in a short time, then, the initial prototype of the system needs to constantly revise and improve, until users are satisfied with it. The system is the basic situation of students, student achievement management of modern management information system. Each management module includes data entry, modify, delete, append, query and other functions, student information management system efficiently and accurately complete these functions, and meet beautiful and friendly interface, easy to use.Keywords:Visual FoxPro;MIS;Database;Data window- 21 -第一章 绪论1.1 课题背景随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。面对庞大的信息量需要有学生管理系统来提高学生管理工作的效率。学生信息管理系统是针对学校人事处的大量业务处理工作而开发的管理软件,是典型的管理信息系统。它是一个教育单位或教育部门不可缺少的,它的内容对教育单位或教育部门决策者和管理者来说至关重要。但一直以来人们使用传统人工方式管理学生,这种管理方式存在着许多缺点,如 :效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不便。随着科学技术的不断提高,计算机科学日渐成熟,计算机其强大的功能已为人们深刻认识,他已进入人类社会的各个领域并发挥着越来越重要的作用。由此,建立高性能的学生信息管理系统, 作为计算机应用的一部分,使用计算机对学生信息管理,具有手工管理无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等,这些优点能够极大的提高学生档案管理的效率,也是科学化、正规化的体现。因此,开发这样的软件系统是很必要的。 1.2课题研究内容该学生信息管理系统能够为用户提供充足的信息和快捷的查询手段,方便了对学生的管理,提高了工作效率。它主要用于学校学生信息管理,总体任务是实现学生信息关系的系统化、科学化、规范化和自动化,其主要任务是用计算机对学生各种信息进行日常管理,如查询、修改、增加、删除,针对这些要求设计了学生信息管理系统。系统的组成和功能组要包括包括:1. 系统组成 数据表组成:数据表3个:学生表、课程表、成绩表查询组成:查询学生、按班级查询成绩、按课程查询成绩 菜单组成:主菜单由基本数据管理、学生成绩管理、系统维护组成。报表组成:学生一览表、课程一览表、成绩一览表(可按课程分类和按学号分类)。自由表组成:密码表、系统信息表。2. 系统功能 本系统的主要功能分别通过主菜单中的以下各项来实现: 通过系统维护菜单实现用户管理、数据备份、系统初始化; 通过基本数据管理菜单实现对专业、班号、课程的设置,录入学生记录,查询学生记录和退出系统。1.3需求分析1、所使用的工具:microsoft visual foxpro 6.02、需要存储的数据和在该模块实现的功能:专业信息:对专业的添加、修改及退出该表单;班级信息:根据专业设计班级班号和入学年份,可以对班号进行添加、修改、删除,及退出该表单;课程信息:针对不同的专业,设置课程号、课程名、课程性质、开课学期、课程学分等,以及实现对课程的添加、插入、修改、删除的功能,及退出该表单;学生信息:对不同专业不同班级学生信息的录入,基本的学生信息包括学号、姓名、性别、出生日期、民族、备注、照片等,可进行添加、修改,及退出该表单; 设置用户:对用户的添加、修改和设置权限,添加的内容包括用户名、密码、级别(管理员和一般用户),“修改”有密码、权限等操作。第二章 系统分析2.1开发和运行环境开发工具我选择了中文版的Visual FoxPro 6.0。 Visual FoxPro 是由Microsoft公司推出的用于中小型企业的一个优秀的小型数据库开发系统。它从单机数据库Foxbase发展而来,现已发展成为具有很强的网络功能的小型数据库系统。它可以用作小型的单机、网络数据库,也可以作为大型数据库的前端开发工具来开发客户机/服务器应用程序。在目前众多的开发工具中,Visual FoxPro在数据库开发工具中有着不可替代的地位,并且易学、易用,对计算机的配置要求也很低,还支持大型数据库通用的SQL语言,故而,实现本系统Visual FoxPro是一个相对较好的选择。运行环境:WindowsXP操作系统。 2.2系统功能分析系统设计的前奏,我们首先要做的是根据软件工程的原则对其进行需求分析,明确其具体任务,要完成的功能,以及各种需求,接着着手对资料进行分析,为以后的结构设计做好充分的准备,而本系统也是根据大学的实际情况来设计一套比较有针对性的、功能也比较完善的学生管理系统。系统登陆主模块作为进入系统的惟一出入口。在系统主界面中,不但担任检验用户的合法性,非法用户被拒绝登陆,它提供了调用系统个功能的操作方法。合法用户根据自身的权限登陆系统进行进一步的操作。学生基本信息模块提供学生基本信息查询,用户可以查阅学生个人信息、学生成绩、选课三个模块。2.3数据库设计思想数据库通俗的说就是数据存储的仓库,一般定义为长期存储在计算机内部、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度,较高的数据独立性和易扩展性,并可为各种用户共享。而数据库管理系统是位于用户与操作系统之间的一层数据管理系统。因为学生管理系统中包含比较重要的信息,所以,在系统设计时不仅要注重用户的需求,而且要保证系统的安全性、可靠性以及高效性。2.4概念结构选定学生表用户课程表出生日期姓名专业班级性别备注照片学号民族课程号课程名开课学期课程性质学分用户名密码成绩权限图2.1 E-R图第三章 系统功能实现3.1学生管理信息系统功能模块设计1、主界面设计 该模块提供教务管理系统的主界面,是主系统唯一入口和出口。该界面提供用户选择并调用各子模块,对于进入系统的用户还要核对用户名和口令。2、专业管理模块该模块提供选定学生每学期所修专业界面,然后进行维护工作(增、删、改)。3、课程名称模块该模块实现添加所需课程名称的功能,每增加一门课程,课程号自动加1。4、成绩管理模块该模块主要用于录入学生各学期各门课成绩。5、学籍管理模块该模块实现学生基本情况的浏览、添加、编辑和删除。3.2学生管理信息数据库设计3.2.1 数据库需求分析Visual FoxPro 数据库设计的第一步是明确数据库的目的和如何使用,也就是在数据库中存放哪些信息。明确目的之后,就可以确定需要设计哪些表,以及每个表中的字段。利用Visual FoxPro进行管理信息系统的应用软件开发时,其核心任务是数据库中的关系设计,它是系统应用软件设计的基础。其质量的好坏,直接影响到信息管理系统的功能和质量。关系设计的任务是消除数据删除、插入操作中的异常现象,最大限度地降低数据的冗余度,并保证数据的一致性。3.2.2 关系设计的原则关系设计的理论基础是规范化理论,设计数据库的过程实际上是对关系模型进行规范化和分解的过程,使非规范化的关系满足规范化理论的要求。要做到这一点,在关系设计时我们应遵循以下原则:一是关系分解后信息不丢失,不增加,即是无损连续分解。必须把全局模式的数据分解到各个子模式关系中,不能丢失数据,也不能因分解而增加数据,以保证数据的完整性。二是合理选择规范程度。记录数多的关系,低级规范造成的冗余度很大,浪费了存储空间又影响了数据的一致性;但对相互联接的运算,低级模式又比高级范式好。另一方面,从存取、插入速度上,又希望一个子模式的属性越少越好,即取高级范式。因此速度与空间、速度与一致性在范式上是矛盾的。所以应根据情况,合理选择规范化程度。三是正确性与可实现性原则。3.2.3 学生管理信息数据库结构的具体实现程序设计大体要经过下面的步骤:1、创建数据库、表,利用Visual Foxpro的工具创建数据库、表,并设置表的索引和表间的关系。2、创建查询、视图和报表,根据需求,创建对数据的查询、视图和报表。3、创建适合的类,利用Visual Foxpro的基类,创建适合的类。4、创建表单,通过表单将数据库、表、视图、报表集成起来,用类对它们进行操作。5、创建程序,编制程序将表单连接成一个系统。调试、连编,利用调试工具检查、修改程序错误,最终编译成应用程序文件(.app)或者可执行文件(.exe).3.3学生信息管理系统界面的设计3.3.1登陆界面的设计该界面是系统的欢迎界面,并提供管理员身份合法性的功能,设计完成效果如图。图3.1 登陆界面首先打开项目管理器,单击文件选项卡,选择表单节点,然后单击新建按钮,选择新表单按钮,在表单的caption属性中输入欢迎使用本管理系统,单击。在picture选择一个本地图片添加进去。在表单中添加3个标签2个文本控件,2个命令按钮。在标签1的caption中输入用户名,其余标签类似输入,不再介绍。在command1的click事件中添加如下代码:use xt.dbfif alltrim(thisform.text1.value)=alltrim(用户名). and.alltrim(thisform.text2.value)=altrim (密码)use_screen.visible=.t.do form caidan.scxthisform.releaseelsemessagebox(用户名或者密码不对,本系统通知你!)endif在command2的click事件中添加如下代码:quit设置完成后效果如上图。3.3.2设置专业添加:f=flag=1 &表示添加专业DO FORM setprof1修改: f=专业flag=2 &表示修改专业DO FORM setprof1退出: thisform.ReleaseRELEASE f,flag确定: IF flag=1 SELECT prof APPEND BLANKENDIFREPLACE 专业 WITH thisform.text1.Text取消: thisform.Release 图3.3 专业名图3.2 设置专业3.3.3设置班级确定: mand1.Enabled=.T.thisform.label4.Caption=ALLTRIM(thisform.list1.value)+专业的班号SELECT classnSET FILTER TO ALLTRIM(专业)=ALLTRIM(thisform.list1.Value) AND NOT DELETED()GO TOPthisform.Refresh添加: f1=thisform.list1.valuef2=f3=YEAR(DATE()flag=1 &添加操作DO FORM setclass1SELECT classnf1=专业f2=班号f3=入校年份flag=2 &修改操作 图3.4 设置班号DO FORM setclass1删除: SELECT classnf1=专业f2=班号f3=入校年份flag=3 &删除操作DO FORM setclass1退出: thisform.ReleaseRELEASE f1,f2,f3,flag &释放定义的全局变量确定SELECT classnIF flag=1 &添加操作 APPEND BLANK REPLACE 专业 WITH f1,班号 WITH thisform.text2.text,入校年份 WITH thisform.text3.ValueELSE IF flag=2 &修改操作 REPLACE 班号 WITH thisform.text2.text,入校年份 WITH thisform.text3.Value ELSE &删除操作 DELETE ENDIFENDIFthisform.Release取消:thisform.Release 图3.5 班号 3.3.4设置课程确定:SELECT courseIF flag=1 &添加操作 APPEND BLANK REPLACE 专业 WITH f1,课程号 WITH thisform.text2.text,课程 WITH thisform.text3.text, ; 性质 WITH bo1.Value,开课学期 WITH bo2.value,学分 WITH thisform.text4.valueELSE IF flag=2 &修改操作 REPLACE 课程号 WITH thisform.text2.text,课程 WITH thisform.text3.text, ; 性质 WITH bo1.Value,开课学期 WITH bo2.value,学分 WITH thisform.text4.value ELSE IF flag=3 &删除操作 DELETE ELSE &前插操作 INSERT BEFORE BLANK REPLACE 专业 WITH f1,课程号 WITH thisform.text2.text,课程 WITH thisform.text3.text, ; 性质 WITH bo1.Value,开课学期 WITH bo2.value,学分 WITH thisform.text4.value ENDIF ENDIFENDIFthisform.Release取消: thisform.Release 图3.6 设置专业课程 图3.7 综合图3.3.5录入及添加学生记录录入确定:PUBLIC f1,f2term=thisform.text1.valuef1=ALLTRIM(thisform.list1.Value)f2=ALLTRIM(thisform.list2.Value)DO FORM setscore1thisform.Release取消: thisform.ReleaseRELEASE term添加: flag=1DO FORM setstudent2修改: flag=2DO FORM setstudent2 图3.8 学生基本数据添加路径:img=GETFILE(bmp|Gif)IF FILE(img) APPEND GENERAL 照片 FROM (img)ENDIFthisform.Refresh 确定:SELECT studentIF flag=1 APPEND FROM student1ELSE REPLACE 学号 WITH student1.学号,姓名 WITH student1.姓名 REPLACE 性别 WITH student1.性别,出生日期 WITH student1.出生日期 REPLACE 民族 WITH student1.民族,专业 WITH student1.专业 REPLACE 班号 WITH student1.班号,备注 WITH student1.备注,照片 WITH student1.照片ENDIFthisform.Release取消:thisform.Release 图3.9 效果图3.3.6用户管理添加:f1=f2= f3=flag=1 &添加操作DO FORM usermain1修改: f1=usenamef2=usepassf3=uselevelflag=2 &修改操作DO FORM usermain1退出: thisform.ReleaseRELEASE f1,f2,f3,flag 图3.10 设置用户确定:SELECT userIF flag=1 &添加操作 APPEND BLANKENDIFREPLACE usename WITH thisform.text1.ValueREPLACE usepass WITH thisform.text2.ValueREPLACE uselevel WITH bo1.valuethisform.Release取消:thisform.Release 图3.11 效果图3.3.7录入学生成绩确定:thisform.label2.Caption=alltrim(thisform.list1.value)SELECT scoreSET FILTER TO 班号=f2 AND 专业=f1 AND 课程=thisform.list1.valueCOUNT TO rsIF rs=0 &score表中不存在该班号该课程的成绩 USE student IN 0 SELECT student SET FILTER TO 专业=TRIM(f1) AND 班号=TRIM(f2) 图3.12 选择班号 GO TOP DO WHILE !EOF() SELECT score APPEND BLANK REPLACE 学号 WITH student.学号,姓名 WITH student.姓名,专业 WITH f1,班号 WITH f2,课程 WITH thisform.list1.value SELECT student SKIP ENDDO USE IN studentENDIFSELECT scoreGO topthisform.Refresh返回:thisform.Release排序确定:SELECT scoresel=thisform.opg1.VALUE 图3.13 学生基本数据DO CASE CASE sel=1 INDEX ON 学号 TO tempxh CASE sel=2 INDEX ON 课程 TO tempkc CASE sel=3 INDEX ON 班号 TO tempbh CASE sel=4 INDEX ON -分数 TO tempfsENDCASEGO TOPthisform.Refresh 图3.14 查询学生成绩 图3.15 效果图3.3.8学生成绩查询界面设计给界面对学生成绩进行查询,界面如图,过程如下: 图3.16 成绩查询新建一个表单在其数据环境中添加成绩数据表,并在表单上添加一个Shape控件,再往shape空间中添加3个标签和3个文本控件,人情案后在表单上添加一个命令按钮,设置好属性并调整好位置,文件保存为“cjcx.scx.”.主要介绍按钮代码:在command1的click事件中添加如下代码:sele *from cj where 学号=alltrim(thisform.text1.value).and. 课程代号=alltrim(thisform.text2.value).and. 成绩=alltrim(thisform.text3.value)第四章 系统主要源代码及调试4.1主要源代码主程序CLEARSET TALK OFFSET SYSMENU offSET SYSMENU toSET DELETED OFFSET STATUS BAR OFFSET DATE ANSISET SAFETY OFFCLEAR ALLCLOSE ALL_Screen.WindowState=2_Screen.Caption=学生成绩管理系统PUBLIC ulevel,rq &ulevel存放用户级别,rq存放当前使用日期DO FORM pass to retIF ret=.T. DO menu.mpr READ eventENDIF&以下代码在退出时做清理工作SET SYSMENU TO defaultSET SYSMENU onCLOSE ALLCLEAR ALLSET EXCLUSIVE ON &以独占的方式打开表use user in 0select userpackuse in useruse prof in 0select profpackuse in profuse classn in 0select classnpackuse in classnuse course in 0select coursepackuse in courseuse student in 0select studentpackuse in studentuse score in 0select scorepackuse in scoreRETURN4.2系统调试系统开发的各个阶段包含了大量的脑力、体力劳动,所以开发过程中难免存在着一定的错误。因此,系统完成设计后就必须对系统进行必要的调试,系统调试是系统质量的保证,它是对需求分析、系统设计和编码的不断复审,尽可能早点发现错误与缺陷,以改进和提高系统质量及可靠。在本系统调试的初期,我发现来自软件及本身的许许多多的问题,最终不懈努力,系统的大问题多数能解决了,系统也进一步完善了。当然,系统还存在不少问题和不完善的地方,我也会再接再厉! 总 结一个月左右的毕业设计终于成功的验收了,其功能基本符合需求,能够完成学生基本信息的录入、修改、删除,数据统计。同时也考虑到了学校实际情况以减少数据冗余的问题,对于数据的一致性的问题也通过程序进行了有效的解决。虽然有些疲惫,但还是有很多的收获的,我又一次巩固了所学到的知识,之前的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年安全生产月公司消防应急救援演练策划方案
- 2025年广西安全员ABC证考试题库及答案
- 汽车制造中镗工技术应用解析
- 汽车销售经理4S店销售目标达成计划与客户维护方案
- 碳足迹核算中常见问题及应对策略
- 中级碳指数交易员财务规划与风险管理
- 洗车工岗位安全操作手册
- 高级审计岗位面试指南
- 消防监督与管理
- 户外运动登山与徒步旅行指南
- 机械设备操作风险辨识与应对措施
- 2025-2030中国大米行业市场深度调研及竞争格局与投资研究报告
- 网站对历史发布信息进行备份和查阅的相关管理制度及执行情况说明
- 2023年广东省广州市第27届WMO小学二年级上学期奥林匹克数学竞赛复赛试卷
- 2025村委会房屋租赁合同范本下载(正式版)
- 医疗卫生机构职业安全与健康管理规范(DB4403-T 288-2022)
- 妊娠期糖尿病的预防与控制
- 水平二体育课安全教育
- 仓库年终述职报告
- 2025-2030年中国碳素行业市场运行态势及投资前景规划研究报告
- 人教版五年级上册寒假数学计算题天天练带答案(共15天)
评论
0/150
提交评论