VFP课程设计报告学生信息管理系统_第1页
VFP课程设计报告学生信息管理系统_第2页
VFP课程设计报告学生信息管理系统_第3页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、广西大学数学与信息科学学院数据库开发与应用课程设计报告题目:学生信息管理系统班 级: 信息与计算科学121学 号: 1211100238姓 名:华期:二一四年六月、八 、,刖言随着学校的规模不断扩大,学生数量急剧增加,有关学生信息量也成倍增长。面对庞 大的信息量需要有学生成绩管理系统来提高学生管理工作的效率。通过这样的系统可以做 到信息的规管理、科学统计和快速查询、修改、增加、删除等,从而减少管理方面的工作 量。目前社会上信息管理系统发展飞快,各个企业事业单位都引入了信息管理软件来管理自 己日益增长的各种信息,学生信息管理系统也是有了很大的发展,商业化的学生信息管理软 件也不少。但本系统完全独

2、立开发,力求使系统功能简洁明了,但功能齐全且易于操作,其 主要实现了对高校从学生学籍信息录入、学生选课、学生信息管理、课程信息、任课教师 查询、到学生成绩管理。整个系统分为学生信息管理、课程信息查询、任课教师查询、 成绩管理、系统管理四大模块。其中,学生信息管理模块包括学生信息录入、学生信息修 改。学生课程信息管理模块包括学生选课、学生课程查询。学生成绩管理模块包括学生成 绩录入、学生成绩查询。系统管理模块包括用户权限、密码修改、退出系统。整个系统从 操作简便、灵活、实用的目的要求出发完成学生信息管理系统全过程。用户需求具体有学 籍管理系统提供保存、更新、查询、维护,这就需求数据库结构能充分满

3、足各种信息的输 入与输出,实现有组织地、动态地存储大量关联数据,方便用户访问系统中的数据,它与 文件系统的重要区别是数据的充分共享,交叉访问,与应用程序的高度独立性。1、系统分析1.1系统介绍本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学院的工作流 程设计完成的。为了使系统在学院的管理中发挥更大的作用,实现工作过程的计算机化, 提高工作效率和工作质量,减少很多不必要的资源,不用像以前那样用冗余的纸式的管理。 大节省了学校能源。并且计算机的存储与快速查询功能大大提高了学籍管理的效率,并且 还提高了学籍信息管理的精确度。现提出如下的系统开发目标:1. 系统应具有实用性、可靠性和适

4、用性,同时注意到先进性。2. 对各个数据库进行动态管理,防止混乱。3. 能够按照用户选择的不同的条件进行简单查询和复合查询。4. 能够对查询结果进行分类汇总,实现报表打印。5. 注意数据的安全性,具有数据备份和恢复的功能。6. 方便用户的操作,尽量减少用户的操作。本课程设计主要解决与学生成绩信息管理相关的问题,设计一个功能齐全的学生管理 信息系统。同时实现学生相关信息的添加、删除、修改和查询;学生选课的管理,添加、 修改、删除;学生成绩的录入和对学生成绩的分析等主要功能。1.2需求分析21世纪以来,人类经济高速发展,人们发生了日新月异的变化,特别是计算机的应用 及普及到经济和社会生活的各个领域

5、。使原本的旧的管理方法越来越不适应现在社会的发 展。许多人还停留在以前的手工操作。这大大地阻碍了人类经济的发展。为了适应现代社 会人们高度强烈的时间观念,学校信息管理系统软件为学校办公室带来了极大的方便。(一)教育系统学生管理现状分析学校工作总体规划由教务人员在学生信息管理系统中完成对运行教务处所需的基本 数据的维护,包括这些信息的增加、修改及对各项信息的变动都将在这进行操作。新的学 年,教务人员首先加入年级信息,然后编排班级,再对来校学生进行基本的信息录入,新 生入学后由教务人员在学籍系统中完成新学生信息的维护。这就需要一个功能强大的学生 管理系统来做学院工作者的左右手。(二)学校具体需求分

6、析学生:对各科成绩的查询任课老师:输入并维护所教科目的学生成绩教务处:学校全体成员的信息管理,并对任课老师,班主任等输入的信息进行存库,对学生的信息进行必要的维护。通过研究调查,本系统需以下功能:综合学生信息、学生成绩以及信息查询等信息;方便用户了解和管理学生的全面动态信息;良好的界面设计,更人性化的设计理念,使用户拥有更轻松的使用心情。1.2可行性分析可行性研究的目的是用最小的代价在尽可能的时间确定问题是否能解决。首先,从经济上来看,用VFP开发的学生信息管理系统经济成本低,功能足够满足日 常需要。由于学校等中小型管理系统并不复杂,且Visual FoxPro本身要求的运行环境不高, 所以一

7、般Windows 2000以上的系统环境都可以使用。其次,从实用性来看,本学生信息 管理系统管理系统无太多复杂的操作要求,也没有过分花哨的装饰品,人性化的设计界面 可以使操作者轻易运用自如,足够满足学生相关信息的添加、删除、修改和查询、学生选 课的管理、添加、修改、删除、学生成绩的录入、课程信息的查询和对学生成绩的分析等 主要功能。2、系统设计学生信息管理系统对于学生信息管理有非常大的作用,这些管理包括增、删、改,以 及查询等功能,同时还应实现对数据信息访问权限控制。下面从软件的整体结构设计角度 来进行设计。2.1系统流程图学生成绩查询学生成绩录入学生信息查询学生信息修改任课教师查询密码修改成

8、绩查询课程信息查询童按课程号查询按课程名查询2.2数据库需求分析学生注册个人信息输入考试信息课程设置2.3数据库逻辑结构设计用户密码表:字段名数据类型可否为空说明账户Char(5)NOT NULL主索引密码Char(6)NOT NULLQx(权限)Num学生信息表:字段名数据类型可否为空说明学号Char(5)NOT NULL主索引姓名Char(8)NOT NULL性别Char(2)NOT NULL学院Char(8)NOT NULL出生日期Char(8)NOT NULL课程信息表:字段名数据类型可否为空说明课程代码Char(2)NOT NULL主索引课程名Char(10)NOT NULL课时数C

9、har(2)NOT NULL学分Char(1)NOT NULL课程类别Char(4)NOT NULL课程教师Char(6)NOT NULL教师工号Char(5)NOT NULL234学生成绩表:字段名数据类型可否为空说明学号Char(5)NOT NULL主索引姓名Char(6)NOT NULL课程名Char(10)NOT NULL课程类别Char(4)NOT NULL成绩Char(2)NOT NULL学分Char(1)NOT NULL课程代码Char(2)NOT NULL2.4界面设计界面设计设计应遵循简洁美观、方便实用的基本原则。具体设计如下:主窗体设计主窗体包括登陆界面和主界面欢迎使用学生

10、信良博理系统学生信息管理界面设计学生信息管理技裁名査询;1馬窒1学号卩堆名1性别诵加馆凶出生朋学院速詁学生信息浏览:性巨性别出生曰至root生01/11/3助蛇粤用03/00/3JLLIU3叱L曲3CC1UA虱荃语忙/ZE吃4因二0辺沖M06廷0BZ23ZP3X007=当茎申址03/2'5/¥3243课程信息查询界面设计课程信息查询谙输入课程枕码;请输入课程名:课程名课禅类别11教肺工号学分244任课教师查询界面设计245成绩查询与成绩管理界面设计246密码修改与退出界面设计2.5代码编写登录表单程序:“登录” click事件:if (N>2)=messagebox(&

11、quot;登录信息三次输入错误,不能使用本系统",16,"信息提示")thisform.releasereturn&&退出,不执行下面语句en difset order to tag 账户定位数据表中的用户名账户密码.密码);账户密码.qx) &&检查密码和权限是否正确 thisform.releasedo form主界面 with账户密码.qx&&打开主界面,并传达权限值else=messagebox("输入错误,请重新输入!",48,"信息提示")&&将光标

12、移到用户名框&&错误次数N+1N=N+1en dif“取消” click事件:quit 表单init事件:public N“查询” :select学生信息locate for 姓名if.no t.fo un d()messagebox("学生不存在",48,"提示")else姓名学号姓名性另 U学院出生日期en difen difselect学生信息locate for alltr(姓名sele all姓名,学号性别,学院,出生日期from学生信息;where alltr(姓名with thisform.grd 学生信息.recordso

13、urcetype=1.recordsource="temp".colu mncoun t=6姓名"学号"性别"学院"出生日期"en dwiththisform.refreshthisform.grd 学生信息.setfocus“清空” :where 学号=zwhere 学号=zwhere 学号=zupdate学生信息set出生日期=dwhere 学号=z“修改” :学生信息 set姓名=a update学生信息 set性别=b update 学生信息 set学院=c messagebox("信息更新成功"

14、,48,"提示”)“注销” :select学生信息locate for 学号messagebox("学生不存在",48,"提示")elsedelete from学生信息 where学号=a messagebox("该生已成功注销",48,"提示") en dif“添加”:输入信息不完整,请重新输入",48,"提示")elseselect学生信息locate for 学号if foun d()messagebox("学号已存在",48,"提示&qu

15、ot;)elseinsertinto 学生信息(姓名,学号,性别,学院,出生日期)messagebox("添加成功!",48,"提示")en dif课程查询“确定”1: select课程信息locate for 课程代码 messagebox("课程不存在",48,"提示")else课程名课程代码课程名课时数学分课程类别课程教师教师工号en difen dif“确定” 2: 课程信息locate for 课程名if.no t.fo un d()messagebox("课程不存在",48,&quo

16、t;提示")else课程代码课程代码课程名课时数学分课程类别课程教师教师工号en difen dif教师任课查询表单程序:(Click事件)select课程信息locate for alltr(课程教师if foun d()sele all课程代码,课程名,课时数,学分,课程类别,课程教师,教师工号from课程信 息;where alltr(课程教师with thisform.grid1.recordsourcetype=1.recordsource="temp".colu mncoun t=10课程代码"课程名"课时数"学分&quo

17、t;课程类别"任课教师"教师工号"en dwiththisform.refreshen dif“清空”:成绩查询表单程序:(Click事件)“查询” :学生信息locate for 姓名if.no t.fo un d()messagebox("学生姓名不能为空",48,"提示else姓名 学号 性别学院select学生成绩高等数学 大学英语 大学物理 大学写作 计算机技术locate for 姓名en difen difselect学生成绩locate for alltr(姓名)sele all姓名,高等数学,大学英语,大学物理,大学

18、写作,计算机技术from学生成绩;where alltr(姓名)with thisform.grid2.recordsourcetype=1.recordsource="temp".colu mncoun t=6姓名"高等数学""大学英语”大学物理""大学写作"计算机技术"en dwith学生成绩管理表单程序:(Click事件)“查询” :select学生成绩locate for 姓名messagebox("学生姓名不能为空",48,"提示")elsebo1.val

19、ue=姓名thisform.text3.value=姓名thisform.text4.value=高等数学thisform.text5.value=大学英语thisform.text6.value=大学物理thisform.text7.value=大学写作thisform.text8.value=计算机技术en difen difselect学生成绩locate for alltr( 姓名sele all姓名,高等数学,大学英语,大学物理,大学写作,计算机技术from学生成绩;where alltr( 姓名.recordsourcetype=1 .recordsource="temp

20、"姓名”高等数学” 大学英语” 大学物理” 大学写作” 计算机技术”.colu mncoun t=6.colu mn4 .header1.capti on="en dwiththisform.refresh“添 加卩”: messagebox("输入信息不完整,请重新输入",48,"提示")elseselect学生成绩locate for 姓名if foun d()messagebox("成绩已存在",48,"提示")elsein sert into学生成绩(姓名,高等数学,大学英语,大学物理,

21、大学写作,计算机技术)messagebox("录入成功! ",48,"提示")en difen dif“修改” :信息更新成功",48,"提示")update学生成绩 update学生成绩 update学生成绩 update学生成绩 update学生成绩set高等数学=a set大学英语=b set大学物理=c set大学写作=dwhere 姓名=z where 姓名=z where 姓名=z where 姓名=zset计算机技术=e where姓名=z“注销” :select学生成绩locate for 姓名message

22、box("学生不存在",48,"提示")elsedelete from 学生成绩 where 姓名=a packmessagebox("该生已成功注销",48,"提示") en dif清空”bo1.value=""学生信息表单程序:(Click事件)查询与清空的代码同密码修改表单程序:(Click事件)“确认修改” :set exact onmessagebox('新密码不能为空",48,"提示")returnen difmessagebox('新密

23、码与确认密码不一致",48,"提示")returnen difselect账户密码locate for alltrim( 账 户 )密 码 )=if.no t.fo un d()a messagebox('原密码错误,请重新输入",48,"提示")returnen dif3、系统评价3.1程序调试情况(1) .在表结构创建的过程中有个注意点 一一NULL值,NULL无明确的值,它不等于零 或空格,一个NULL值不能认为比某个值(包括另一个 NULL值)大或小,相等或不同。(2) .常量和存变量能够使用的数据类型只有 6种,分别

24、是:字符型、数值型、货币型、 日期型、日期时间型以及逻辑型。(3) .在用双引号或单引号等定界符标识字符串时,不能使用汉字全角状态下的引号,因为VFP命令不能识别全角汉字下的符号。(4) .函数是用来实现某指定运算或操作的一种特殊程序,应熟练掌握几种常用的系统 函数。例如:数值型函数、字符处理函数、日期和时间函数、表与记录函数、类型转换函 数、系统测试函数。要注意的是字符型与日期型相互转换函数是 CTOD与DTOC,字符型 与日期时间型转换函数为 CTOT与TTOC o(5) .菜单中的命令执行某表单是,要注意表单名称要完整,不能出现错别字,否则会出现“无法定义*表单”的情况。(6) .数据库

25、的表设计器是创建新表、修改表和定义索引的重要工具,应学会熟练的使 用数据库设计器,对字段选项卡、表选项卡和索引选项卡进行管理操作。(7) .掌握VFP多种运算符,明确各种运算符的运算优先级:数值运算符高于关系运算 符,关系运算符高于逻辑运算符。同一等级命令从左到右进行,括号的运算优先执行,嵌 在最层括号的运算首先进行,然后依次由向外执行。3.2总结通过这次实验,我觉得收获很多。不仅加深了我对教学系统的了解与深化以及数据库 原理的了解,熟悉了数据库设计的流程,还对软件工程有了初步认识,基本掌握了需求分 析的方法。同时为我以后进入社会打下了基础。通过本次设计与制作,我的实际动手能力 和处理问题的能力有了明显提高。这次设计是我深刻了解到表是数据库中最基本的文件,数据库系统的大部分操作与命 令都离不开对表中数据的处理,我们应该熟练掌握表的创建与表中数据处理。还要熟练掌 握表记录的输入和定位、表结构的修改和表数据的追加与删除。这次设计锻炼了我编写数 据程序的能力,能熟练掌握不同功能程序的编写,以达到所设计程序的功能要求。熟练运 用了 sel

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论