第一篇:VFP课程设计报告_图文.
VFP 课程设计报告
姓名:闫美玲 班级:08404031 学号:0840403127 正文
1.VFP 课程设计目的
《 VFP 》 课程的学习, 不仅需要理论上的深入探讨, 而 且需要通过实践上机,自己开发一个数据库管理信息系统, 才能真正理解书本知识,牢记掌握课堂教学内容。因此,本 次课程设计的目的就是要通过一个实际的管理信息系统的 开发,提高自身用所学知识分析问题,解决问题和实际动手 能力,进一步掌握 VFP 这门课程的内容,熟悉用 VFP 开发 一个简单系统的基本步骤。
2、VFP 课程设计要求
掌握有关表、数据库、项目、类的基本概念及基本操作, 在此基础上进行查询设计、菜单设计、表单设计及报表设计, 并掌握常用的属性、事件及方法的使用。数据管理
主要是对学生基本信息、课程基本信息、学生成绩信息、教师基本信息的录入、删除、保存、定位等操作
注意:这四个表单中用到的工具条要创建成自定义工具栏类,然后把它添加到表单中。2 查询设计
学生选修课程信息:创建一个一对多表单,当在一个组合框中选择学生后,在下面的 GRID 中反映该学生选修的课程名,课时数,任课教师及该门课程的成绩。
教师任课情况:以一对多的形式,在表格一中选择教师后,表格二中显示该教师的 任课情况。统计处理
学生成绩统计:创建一个视图, 该视图用来反映每个学考选修了几门课, 总成绩是多少, 并将该视图加到表单的数据环境中,创建一个学生总成绩查询表单。要求用页框来实现, 第一页反映学生的总成绩,第二页反映学生的明细成绩。
各教师的任课时数:创建一个视图, 该视图用来反映每个教师上了几门课, 总学时是多 少,并将该视图加到表单的数据环境中,创建一个教师情况查询表单。打印输出
在报表设计器中设计一个学生总成绩报表,然后在学生总成绩查询表单上添加一个打印 按钮,当按下该按钮时,调用上述创建的报表。
在报表设计器中设计一个教师任课信息报表,在菜单中调用该报表。
3、VFP 课程设计内容 学生成绩管理系统
(2表结构 成绩: 登陆 教师 课程
学生
(3 菜单设计 :上表中的系统功能模块即菜单。
4、.系统功能模块结构图
5.数据库表设计结构 登陆: 教师表
成绩表
课程表
学生表
6.主要模块的设计说明和程序代码
登陆 USE dl.DBF TEMP1=ALLTRIM(THISFORM.text1.VALUE TEMP2=ALLTRIM(THISFORM.text2.VALUE LOCATE FOR ALLTRIM(mc==TEMP1.AND.ALLTRIM(mm==TEMP2 IF FOUND(do form 登陆成功 public p_mc,p_mm p_mc=TEMP1 p_mm=TEMP2 THISFORM.RELEASE ELSE MESSAGEBOX(“密码或用户名输入错误,重新输入!” THISFORM.TEXT1.V ALUE='' THISFORM.TEXT2.V ALUE='' THISFORM.text1.SETFOCUS ENDIF thisform.release 修改密码
if alltrim(thisform.text1.value==p_mm if thisform.text2.value==thisform.text3.value temp=alltrim(thisform.text3.value UPDA TE dl SET mm= temp WHERE dl.mc = p_mc MessageBox('密码修改成功 ',48+0+0 else MessageBox('两次密码输入不相等 ',48+0+0 endif else MessageBox('原密码不正确 , 请再次输入 ',48+0+0 endif 用户管理 //new APPEN BLAN thisform.refresh thisform.txtbh.setfocus //delete delete pack
thisform.refresh //reset thisform.txtbh.value='' thisform.txtmc.value='' thisform.txtmm.value='' //exit thisform.release //first if!bof(then goto top thisform.refresh this.enabled =.f.thisform.command6.enabled =.F.thisform.command7.enabled =.T.thisform.command8.enabled =.T.endif //prior if!Bof(skip-1 thisform.refresh else this.enabled =.f.thisform.command5.enabled =.F.thisform.command6.enabled =.t.thisform.command7.enabled =.t.thisform.command8.enabled =.t.endif //next skip //last goto BOTT
7、心得体会、在 VFP 课程设计的整个过程中,经历了无数次的失败,从一开始 做关于学生档案管理的程序到后来改做自己家家电的管理系统,从纯 粹的照着书往电脑里打程序到后来有自己的想法开始自己想程序,从 对应用程序完全不了解到后来对其中的细节有充分的接触,这其中的 酸甜苦辣唯有自己亲自品味过才可以知道。一开始学 VFP 时我还在心里抱怨,学这程序有什么用,现在才明 白,对于学习经管的学生来说,学习VFP 是最恰当不过了。它是一个 很好的可以自己编制管理系统的软件,而且更人性化,操作也很简单。现代社会是竞争的社会,要想在竞争的社会中立足就要讲求工作 效率。在学生成绩的记录和管理上,传统的方法费时费力,不符合现 代社会的要求,所以就必须有效地利用现代技术和信息结合的优势。因此,第一时间处理好随时变化的学生成绩管理问题,建立一套符合 学习实际的学生成绩管理系统就显得尤为重要。在以往学习的知识、参考课外资料和寻求老师的帮助下终于完成 了一个简单的设计。这个设计功能非常简单,因而我想,在实际运用 中,还有些不足。因为知识和能力的不足,我们还无法做出满足实际 需求的优秀设计,许多功能还欠缺和不完善,如表单的设计上出现了 一些缺陷。由于我的知识浅薄,经验不足及阅历颇浅,因此,在该系统的设 计方面还有很多不足,比如功能过少,界面不醒目等问题,我会在以 后的学习过程中,根据工作的具体要求不断的修改、完善,争取使系
统慢慢趋于完美。在这次实践中我们学习到了以前在课本上无法理解和没有见到 过的知识,提高自身的知识面和实践能力,收获颇丰。这样的项目对 我们学过的数据结构,程序设计,数据库,软件工程,等课程是一个 综合性很高的实
践。经历这一段时间的实践,我们对原来学习的知识 有了更深刻的认识,也学习到了大量的新知识,提高了实际应用的能 力。另外我还充分体会了从事软件开发工作需要特别谨慎认真地态 度和作风,一点都不能马虎。每个细微的细节都必须十分注意,如果 考不认真思考决策,就会出现或大或小的错误。如果早期的错误隐藏 下来,对后面的工作影响就会很大,有时候会弄的满盘皆输的后果。我们不得不对软件的每一步进行检查,给我们的信心带来了打击,非 常劳累和痛苦。由于自己的经验及各方面的能力的不足,所以进展的 速度非常的缓慢,遇到了好多棘手的问题,不得不去翻阅课本和大量 的课外素材,最后自己无法解决的情况下向老师进行请教。在课程设计的过程中,老师和同学们都给与了我们很大的帮助,帮助我们查阅资料寻找知识点,指出我们的软件的错误和不足,在我 们遇到困难时给我们鼓励和帮助,在这里,我向这些无私帮助我的人 表示由衷的谢意。
第二篇:VFP课程设计心得
VFP程序设计课程心得(第10小组)
牟超 20104940139
为期一周的VFP很快就结束了,我们的设计项目“医院管系统”也完成了。看着自己亲手做好的系统能够良好运行,心里是美滋滋的,整个过程中有很多喜与忧,我体验了,也正真享受到了这过程中给我带来的乐趣。我们小组3个同学也都各自保存了一份,作为纪念吧,毕竟这是我们长这么大第一次亲手设计的系统,意义真的很大。
这里首先感谢老师一学期的辛勤教导,让我了解并掌握了VFP这门编程语言,虽然我们的课程结束了,但作为信管专业学生的我知道我们还需要继续更深入的学习,毕竟我们学到的还只是皮毛而已。其次要感谢我的队友唐佳森和滕文浩,没有大家的团结,我们的系统是完不成的。
现在系统完成了,回想起整个过程,我们曾一整天呆在一起面对电脑研究程序,一起讨论,一起思考,一起解决问题,感觉真的很好。当我们解决掉一个问题时,那种喜悦与兴奋真的很难忘。我曾连续两个夜晚都搞到3点左右才睡觉,虽然很疲倦,但看着一晚上的劳动成果,其实躺下了一时也睡不着,很激动。看着整个工作慢慢往前退进,那种期待与喜悦难以名状。当我经过7个小时的努力完成连编时,更是激动地不行了,一直在哪里运行程序,第二天就把这一成果分享给了其他同学,看着大家都很激动,心里也是美滋滋的。说实话,整个过程真的很繁杂,主要是后面的调试阶段,真的花了很多时间,一次一次的修改,才使得系统渐渐没了漏洞。光是连编,我至少都弄了30次,虽然挺累的,但成功时,真的很高兴,完全掩盖了那份疲倦。
通过此次课程设计,让我对VFP课程掌握更熟练了,理解更透彻了。个人觉得此次课程设计的效果达到了,收获真的很多。我们的团结协作能力也得到了提升。总体来说,此次课程设计,累着并快乐着,谢谢我的老师,谢谢我的队友!
滕文浩
20104940140
vf课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程.”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础.
通过这次课程设计,本人在多方面都有所提高。综合运用本专业所学课程的理论实际训练从而培养和提高学生独立工作能力,巩固课程所学的内容,掌握课程设计的方法和步骤,同时各科相关的课程都有了全面的复习,独立思考的能力也有了提高。
在这次设计过程中,体现出自己单独设计的能力以及团队配合的重要。.综合运用知识的能力,体会了学以致用、突出自己劳动成果的喜悦心情,从中发现自己平时学习的不足和薄弱环节,从而加以弥补。
在此感谢我们的老师.,老师严谨细致、一丝不苟的作风一直是我工作、学习中的榜样。而您开朗的个性和宽容的态度,帮助我能够很顺利的完成了这次课程设计。
同时感谢对我帮助过的组长组员,谢谢你们对我的帮助和支持,让我感受到同学的友谊。
由于本人的设计能力有限,在设计过程中难免出现错误,恳请老师们多多指教,我十分乐意接受你们的批评与指正,本人将万分感谢。
唐佳森
20104940141
为期一周的vfp课程设计在此已接近尾声!虽然仅有一周却让我们尝尽啦人生百味,酸甜苦辣各中滋味只有自己知晓!
这次课程设计让我看到啦自己的许多知识点的不足,从而让我明白知识扎实的重要性!因为基础知识的不扎实让我在这次课程设计中走啦许多弯路,不过我认为是值得的!它大大的补充啦我知识不足的那一面,我始终相信付出必有收获。
在这次课程设计中从而让我明白坚持就是胜利的真正含义。在这次课程设计中几次在反复思索却无法找到正确路径的时候,我都好想放弃啊。心想我花啦这么长的时间却没有多大的成果,内心是心酸的是无奈的,如果现在不做好那就更无法完全这次课程设计啦,因为我的坚持最后让我功确难关让我走到啦今天,呵呵真的很高兴啊,之前的那些心酸已不复存在于我的脑海中,已被喜悦填充,付出是心酸的,但最后的收获却是无穷的,让人受益无穷的,我真的很感谢这次课程设计所带给我的快乐。
在这次课和设计中我还非常感谢我的组长牟超,是他在我充满疑虑的时候帮助我,让我找出迷雾,让我又一次的找到出口,真的非常感谢他,没有他的指导我无法走出误区,真的非常感谢!我也充分理解到团队配合的重要性,我们互相协作非常开心彼此的互补成就了这次的课程设计作业。老师给我们提供这样的机会非常好,相信以后还有这样的机会的!!
第三篇:VFP课外实践报告
Visual FoxPro程序设计课外实践报告
——选题题目(根据自己的题目来写)
学院名称: 专业班级: 学
号: 姓
名: 其他成员: 指导教师: 完成时间:
一、选题内容
二、设计思想
三、系统功能简介
四、系统组成、主要作用、实现方法
五、本人在系统中主要工作介绍
六、课外实践中的个人心得体会
第四篇:VFP常用函数整理范文
VFP常用函数大全整理
一.字符及字符串处理函数:字符及字符串处理函数的处理对象均为字符型数据,但其返回值类型各异.1.取子串函数:
格式:substr(c,n1,n2)
功能:取字符串C第n1个字符起的n2个字符.返回值类型是字符型.例:取姓名字符串中的姓.store “王小风” to xm
?substr(xm,1,2)
结果为:王
2.删除空格函数:以下3个函数可以删除字符串中的多余空格,3个函数的返回值均为字符型.trim(字符串):删除字符串的尾部空格
alltrim(字符串):删除字符串的前后空格
ltrim(字符串):删除字符串的前面的空格
例:去掉第一个字符串的尾空格后与第二个字符串连接
store “abcd ” to x
store “efg” to y
?trim(x)+y
abcdefg
3.空格函数:
格式:space(n)
说明:该函数的功能是产生指定个数的空格字符串(n用于指定空格个数).例:定义一个变量dh,其初值为8个空格
store space(8)to dh
4.取左子串函数:
格式:left(c,n)功能:取字符串C左边n个字符.5.取右子串函数:
格式:right(c,n)
功能:取字符串c右边的n个字符
例:a=“我是中国人”
?right(a,4)
国人
322 &&隐含四舍五入取整转换为字符型数据
?left(a,2)
我
6.empty(c):用于测试字符串C是否为空格.7.求子串位置函数:
格式:At(字符串1,字符串2)
功能:返回字符串1在字符串2的位置
例:?At(“教授”,“副教授”)
8.大小写转换函数:
格式:
lower(字符串)
upper(字符串)
功能:lower()将字符串中的字母一律变小写;upper()将字符串中的字母一律变大写
例:
bl=“FoxBASE”
?lower(bl)+space(2)+upper(bl)
foxbase FOXBASE
9.求字符串长度函数:
格式:len(字符串)
功能:求指定字符串的长度
例:a=“中国人”
?len(a)
二.数学运算函数:
1.取整函数:
格式:int(数值)
功能:取指定数值的整数部分.例:取整并显示结果
?int(25.69)
2.四舍五入函数:
格式:round(数值表达式,小数位
数)
功能:根据给出的四舍五入小数位数,对数值表达式的计算结果做四舍五入处理
例:对下面给出的数四舍五入并显示其结果
?round(3.14159,4),round(2048.9962,0),round(2048.9962,-3)
3.1416 2049 2000
3.求平方根函数:
格式:sqrt(数值)
?str(321.56,6,2)
321.56
功能:求指定数值的算术平方根
例:?sqrt(100)
4.最大值、最小值函数:
格式:
Max(数值表达式1,数值表达式2)
Min(数值表达式1,数值表达式2)
功能:返回两个数值表达式中的最大值和最小值
例:
x1=123.456
x2=234.567
?max(x1,x2)
234.567
?min(x1,x2)
123.456
5.求余数函数:
格式:mod(表达式1,表达式2)
功能:求表达式1对表达式
2的余数
例:
?mod(10,3)
6.求指数、对数函数:
格式:
exp(数值表达式)
log(数值表达式)
功能:
(1).exp()计算自然数e?表达式的值为指数的幂
(2).log()计算表达式值的自然对数,返回lnx的值.例:
x=1
y=exp(x)
?exp(x),log(x)
2.72 1 三.转换函数:
1.数值转数字字符串函数:
格式:str(n,n1,n2)
功能:将数值n转换为字符串,n1为总长度,n2为小数位
例:?str(321.56)
2.字符转数值函数:
格式:val(s)
功能:将数字字符串s转换为数值
例:x=“23”
y=“76”
?val(x)+val(y)
3.字符转日期函数:
格式:ctod(c)
功能:将日期字符串c转换为日期
例:set date ansi &&日期格式设为美国标准化协会格式
?ctod(“^2005.11.14”)
2005.11.14
4.日期转字符函数:
格式:dtoc(d)
功能:将日期d转化为日期字符串
例:将日期型数据转化为字符型日期数据并显示汉字日期.set century on &&开启世纪前缀,即日期中年份用4位表示
set date ansi
rq={^2005.11.14}
rq=dtoc(rq)
?substr(rq,1,4)+“年”+substr(rq,6,2)+“月”+substr(rq,9,2)+“日”
2005年11月14日
5.时间转字符函数:
格式:ttoc(时间)
功能:将时间转为时间字符串
6.字符转时间函数:
格式:ctot(c)
功能:将时间字符串转化为时间
7.字符串替换函数:
格式:stuff(<字符表达式1>,<起始位置>,<字符个数>,<字符表达式2>)
功能:从指定位置开始,用<表达式2>的值去替换<表达式1>中指定个数字符.若<字符个数>为零,直接插入;若<表达式2>为空字符串,则删除<表达式1>中指定个数的字符.例:X=“祝大家新年好!”
?stuff(X,7,4,“春节”)
祝大家春节好
?stuff(X,11,0,“春节”)
祝大家新年春节好
?stuff(x,7,4,“ ”)
祝大家好
8.字符转ASCⅡ码函数:
格式:Asc(<字符表达式>)
功能:把<字符表达式>左边第一个字符转成相应的ASCⅡ码值
例:x=“Foxpro”
?Asc(x),Asc(lower(x))
102
9.ASCⅡ码值转字符函数:
格式:chr(数值表达式)
功能:把数值转成相应的ASCⅡ码字符,返回值为字符型
例:?chr(70)+chr(111)+chr(111+9)
Fox
四.日期函数:
1.系统日期函数:
格式:date()
功能:给出系统的当前日期,返回值是日期型数据.例:显示系统日期
?date()
11/14/05
set date ansi
set century on
?date()
2005.11.14
2.年、月、日函数:
格式:(1).year(日期表达式):从
日期表达式中返回一个由四位数字表示的年份.(2).month(日期表达式):从日期表达式中返回一个用数字表示的月份.(3).day(日期表达式):从日期表达式中返回一个用数字表示的日数.例:测试系统日期
rq=date()
?year(rq),month(rq),day(rq)
2005 11 14
3.系统时间函数:
格式:time()
功能:得到当前时间字符串
例:?time()
20:32:26
4.系统日期时间函数:
格式:datetime()
功能:得到当前日期时间
例:?datetime()
2005.11.14 08:35:12 PM
5.星期函数:
格式:dow(日期表达式)
cdow(日期表达式)
功能:dow用数字表示星期,1表示星期日,7为星期六;cdow用英文表示星期
例:?date()
2005.11.15
?dow(date()),cdow(date())Tuesday
五.测试函数:
1.测试文件尾函数:
格式:eof([n])
说明:
(1).n指定被测工作区号,其范围为1~32767
(2).该函数用于测试指定工作区中的表的记录指针是否指向文件尾,是则返回真值;否则返回假值;省略可选项指当前工作区.例:测试文件记录指针是否指向文件尾
use 职工档案
go bottom
?eof()
.F.skip
?eof()
.T.2.测试文件头函数:
格式:bof([n])
说明:
(1).n指定被测工作区号,其范
围为1~32767
(2).用于测试指定工作区中的表的记录指针是否指向文件头,是则返回真值;否则返回假值;省略可选项指当前工作区.例:测试记录指针是否指向文件头
use 职工档案
go top
?bof()
.f.skip-1
?bof()
.t.3.测试当前记录号函数:
格式:recno()
功能:得到当前的记录号
例:
use 职工档案
?recno()
skip
?recno()
4.测试表文件记录数函数:
格式:reccount()
功能:得到表的记录数
例:测试“职工档案”表的记录数
use 职工档案
?reccount()
5.测试表字段数函数:
格式:fcount()功能:得到当前的字段数
例:测试“职工档案”表共有多少个字段
use 职工档案
?fcount()
6.测试查找记录是否成功函数:
格式:found()
功能:测试find、seek和locate命令查找记录是否成功.如成功则返回真值,否则为假值.例:在“职工档案”表中查找“小刚”的文化程度
use 职工档案
locate for 姓名=“小刚”
?found()
.t.display
7.文件测试函数:
格式:file(字符表达式)
功能:测试字符表达式指定的文件是否存在
例:?file(“e:myvfp职工档案.dbf”)
.t.8.数据类型测试函数:
格式:type(字符表达式)功能:测试表达式的数据类型,返回大写字母:N(数值)、C(字符)、L(逻辑)、D(日期)、M(备注)
例:
x=1236
y=“hello”
?type(“x”)
N
?type(“y”)
C
9.测试工作区函数:
格式:select()
功能:返回当前工作区的区号
10.测试别名函数:
格式:alias()
功能:测试当前工作区的别名
例:
select 1
use 职工档案 alias zgda
select 2
use 工资情况
?alias()
工资情况 &&打开表时,不指定别名,表名即为别名
select zgda &&通过别名选择工作区
?select()
11.表文件名函数:
格式:dbf()
功能:返回当前工作区打开的表名
例:
use 工资情况
?dbf()
e:myvfp工资情况 六.其它函数:
1.宏替换函数:
格式:&变量名
说明:vfp中只有宏替换函数没有括号.功能是返回指定字符型变量中所存放的字符串.例:为“工资情况”表中每个人加100元工资
gz=“工资”
use 工资情况
replace all &gz with &gz+100
2.条件函数:
格式:iif(表达式,表达式1,表达式2)
功能:若表达式值为真,则返回表达式1的值;否则返回表达式2的值;函数返回值类型与表达式1或表达式2类型一致
a=3
b=5
?iif(a>b,“高兴”,“开心”)
开心
3.消息框函数:
格式:messagebox(提示文本[,对话框类型[,对话框标题文本]])
功能:显示提示对话框
说明:
(1)对话框类型见表1:
对话框类型功能
0仅“确定”按钮
1“确定”和“取消”按钮
2“终止”,“重试”和“忽略”按钮
3“是”,“否”和“取消”按钮
4“是”和“否”按钮
5“重试”和“取消”按钮
16stop图标
32?图标
48!图标
64i图标
0默认第1个按钮
256默认第2个按钮
512默认第3个按钮
(2).返回值见表2:
返回值按钮
1确定
2取消
3终止
4重试
5忽略
6是
7否
例:分析messagebox(“您确实要退出系统吗?”,4+64,“提示信息”)会弹出什么样的窗口.分析:回头观察此函数的格式,弹出的对话框中的提示文本是“您确实要退出系统吗”,对话框标题是“提示信息”,函数中间有“4+64”,其中4指定对话框中出现“是”和“否”两个按钮(见表1),64指定对话框中出现i图标(见表2)
ok,我们在命令窗口依次执行下列命令:
tui=messagebox(“您确实要退出系统吗?”,4+64,“提示信息”)
&&变量tui用于接收messagebox函数的返回值,弹出的窗口如图1
?tui
&&变量tui值取决于运行时用户点了哪个按钮,如果点了“是”,返回6,如果点了“否”,返回7,见表2
说明:实际应用中,我们常在系统菜单或在表单的“退出”按钮中添加如下代码:
tui=messagebox(“您确实要退出系统吗?”,4+64,“提示信息”)
if tui=6 &&如果此条件成立,说明用户点了“是”按钮,执行quit命令,安全退出
quit
endif
第五篇:vfp系统个人实践报告
Vfp个人实践报告
一、选题内容及意义
为了适应社会生产力的发展,紧跟国际经济发展的步伐,现代企业管理层已经开始意识到计算机及网络技术在企业自身发展过程中的不可或缺的重要作用。为了大力提高自身的生产和管理水平,减少不必要的人力物力的浪费,提高生产效率和经济效率,不少事业单位已经把现代自动化的办公理念纳入到单位的管理实践当中。计算机及网络技术是办公自动化技术的核心,可以说没有计算机、没有网络便无法实现办公管理的自动化。
随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。如此庞大的信息量,迫切需要有一个学生信息管理系统来提高学生管理工作的效率。通过这样的系统,可以做到信息的规范管理、科学统计和快速查询,从而减少管理方面的工作量。一直以来,人们使用传统人工的方式管理学生信息,这种管理方式存在许多缺点,如效率低、保密性差等,而且时间一长,将会产生大量的数据,传统的纸质保存方式会占用大量空间,给查找、更新和维护都带来诸多不便。
对于管理系统而言,当前有两种理解,信息系统都可以叫做管理信息系统,狭义的理解则是指内部和外部数据,经过加工处理,形成有序信息,以预定的形式提供给各管理层次(中层为主)使用的信息系统。我们这里要提到的成绩管理系统就是最典型的数据库信息管理系统。成绩管理系统是以学生成绩数据为主的管理,要使成绩管理系统真正达到数据准确、流程清晰、减少因管理不当而产生一些不必要的损失,其数据库的建立、健全就是关键。合理的数据库结构设计可以提高数据存储的效率。保证数据的完整性和一致性。同时,合理的数据库结构也将有利于程序的实现。
二、设计思想
根据实际需求,学生学籍管理系统这个项目采用模块化的设计思想,在Windows XP操作系统环境下,搭建vf运行环境vf6.0,通过使用vf脚本语言完成动态的、交互的web服务器应用程序,使用微软公司的SQL数据库管理系统,实现学生网上选课、成绩网上查询系统的主要功能,完成管理者对学生的学籍信息、选课信息、成绩信息 的管理。该系统采用vfp作为数据库平台,既可以被应用程序访问,又可在后台操作,完成对数据的整理等。
三、系统功能简介
在学生信息管理系统中,由项目管理器统一管理系统的表单、数据表、程序、报表以及主菜单。系统的整体结构是先运行主程序,由主程序调出用户登录界面。成功登录后,调出系统的主菜单。通过主菜单进入各个表单和报表。表单和报表中的数据来自数据库中的数据表。
四、系统组成、主要作用、实现方法
系统组成:系统主要包括数据库1个(学生信息管理)(其中包括基本情况表、成绩表、课程表),表单6个(系统界面、系统登录、信息查询、成绩查询、退出系统、谢谢使用),菜单1个(主菜单)。
主要作用:实现学生基本信息查询、成绩查询的查询功能,完成管理者对学生的学籍信息、成绩信息的管理(添加或修改记录),以及成绩统计。通过对每个功能的表单来操作数据表中的数据,每个数据表存储了系统所需要的数据信息。该系统采用vfp作为数据库平台,既可以被应用程序访问,又可在后台操作,完成对数据的整理等。实现方法:
1、设计数据结构。进行数据库总体设计首先要进行需求分析,由需求确定系统所需要的数据表,然后确定表所需的字段;最后确定各个表之间的关联。
2、设计表单、菜单、报表。建立项目。完成了系统的总体设计后,下面就开始进行系统的详细设计,包括设计项管理器、数据库、数据表、表单、菜单、报表和主程序。
3、最后设计主程序。
五、本人在系统中主要工作介绍
本人在系统中主要负责系统的开发。
六、课外实践中的个人心得体会
运用所学知识与小组成员一起通过系统分析,数据结构个部分具体功能的设计,理解到数据库管理系统在实际生活中的应用,虽然这个系统还无法用于教学实践,但我认为本次学生管理系统已将本学期所学知识应用进去。在此过程中,遇到很多麻烦和错误,但是在大家共同的努力下,本次大作业基本完成。