资源描述
资料内容仅供您学习参考,如有不当之处,请联系改正或者删除。
经济管理学院
学生信息管理系统的设计与实现
专 业 班 级
学 生 姓 名
学 生 学 号
指 导 教 师
年 12 月 28 日
一、 课程设计的目的和意义
学生信息管理系统是一个简单实用的系统, 它是学校进行学生管理的好帮手。经过本课程设计, 熟练掌了握数据库的设计、 表单的设计、 表单与数据库的连接、 SQL语言的使用以及简单VF程序的编写。本课程设计的作用不但是在制作一个学生管理系统, 其根本的作用是利用它作为学习Visual Foxpro6.0课程设计的基础。本课程设计主要以VF6.0表单设计开发一个学生信息管理系统, 不但经过表单向导进行开发, 而且结合自己引入数据编辑控件进行数据表单窗体的设计和数据录入。经过本课程设计能够更进一步清楚数据库表单设计是如何实现的, 掌握它能够设计出自己满意的应用程序。
二、 系统功能设计
1.说明该系统能够实现哪些功能
基本实现学生信息的管理, 包括系统的登录、 学生信息的录入、 学生信息的浏览、 学生信息的查询、 学生信息的修改和学生信息的删除。
2.画出系统功能模块图
登录表单
管理表单
录入表单
修改表单
查询表单
浏览表单
删除表单
……
设计步骤:
(1) 在项目管理器中新建一个项目;
文件——新建——项目, 如下所示:
(1) 数据库设计;
数据库表的结构如下:
字段名
字段类型
字段宽度
学号
字符型
8
姓名
字符型
10
性别
字符型
2
民族
字符型
10
出生日期
日期型
8
家庭地址
字符型
20
所在班级
字符型
20
专业名称
字符型
20
入学日期
日期型
8
政治面貌
字符型
14
(2) 表单设计;
例如: 登录表单, 管理表单, 录入表单, 浏览表单, 查询表单, 修改表单和删除表单。
2( 1) 登录表单:
登录的程序代码如下:
用户名=alltrim(thisform.text1.value)
密码=alltrim(thisform.text2.value)
if 用户名 = "学生名" and 密码 = "学号"
do form "D:\金融0701王怡键 23号\管理.scx"
thisform.release
else
wait "用户名或密码错误" window timeout 3
thisform.num = thisform.num+1
if thisform.num=3
wait "错误的次序已超过3次:" window timeout 3
thisform.release
else
thisform.text1.value=""
thisform.text2.value=""
wait"继续输入" window timeout 3
endif
endif
退出的代码如下:
thisform.release
执行后如上图登录表单
管理表单:
程序代码如下:
do form "D:\金融0701 王怡键 23号\管理.scx"
do form "D:\金融0701 王怡键 23号\浏览.scx"
do form "D:\金融0701 王怡键 23号\查询.scx"
do form "D:\金融0701 王怡键 23号\录入.scx"
do form "D:\金融0701 王怡键 23号\修改.scx"
do form "D:\金融0701 王怡键 23号\删除.scx"
执行之后如上图所示
2( 3) 录入表单:
录入的程序代码: append blank
退出的代码如下: thisform.release
执行之后如上图
2( 4) 浏览表单
首条代码: go top
thisform.refresh
尾条代码:
go bottom
thisform.refresh
上一条代码:
skip -1
if bof()
go top
endif
thisform.refresh
下一条代码:
skip
if eof()
go top
endif
thisform.refresh
2(5)查询表单:
查询命令按钮代码:
Thisform.grid1.recordsource = "sele 学号,姓名,性别,民族,出生日期,家庭住址,所在班级,政治面貌,入学日期,专业名称 from 表1 where 学号 = thisform.text1.value "
关闭代码:
thisform.release
2(6)修改表单:
查询命令按钮代码:
sele 学号,姓名,性别,民族,出生日期,家庭住址,所在班级,专业名称,入学日期,政治面貌 from 表1 where 学号 =thisform.text1.value
thisform.text1.value = 学号
thisform.text2.value = 姓名
thisform.text3.value = 性别
thisform.text4.value = 民族
thisform.text5.value = 出生日期
thisform.text6.value = 家庭住址
thisform.text7.value = 所在班级
thisform.text8.value = 专业名称
thisform.text9.value = 入学日期
thisform.text10.value = 政治面貌
修改修改命令按钮代码:
xuehao=thisform.text1.value
xingming=thisform.text2.value
xingbie=thisform.text3.value
minzu=thisform.text4.value
chu=thisform.text5.value
jia=thisform.text6.value
suo=thisform.text7.value
zhuan=thisform.text8.value
ru=thisform.text9.value
zheng=thisform.text10.value
update 表1 set 学号=xuehao,姓名=xingming,民族=minzu,出生日期=chu,家庭住址=jia,所在班级=suo,专业名称=zhuan,入学日期=ru,政治面貌=zheng;
where 学号=xuehao
2(7)删除表单:
查询命令按钮代码:
sele 学号,姓名,性别,民族,出生日期,家庭住址,所在班级,专业名称,入学日期,政治面貌 from 表1 where 学号 =thisform.text1.value
thisform.text1.value = 学号
thisform.text2.value = 姓名
thisform.text3.value = 性别
thisform.text4.value = 民族
thisform.text5.value = 出生日期
thisform.text6.value = 家庭住址
thisform.text7.value = 所在班级
thisform.text8.value = 专业名称
thisform.text9.value = 入学日期
thisform.text10.value = 政治面貌
删除命令按钮代码;
xuehao=thisform.text1.value
delete from 表1 where 学号=xuehao
( 3) 程序的连编, 生成可执行程序
do form "D:\金融0701王怡键 23号\管理.scx"
read events
点击项目中的”连编”
四、 测试及分析
对本系统作一个全面的评价: 包括有何特点、 存在的问题、 改进意见等。
特点: ( 1) 方便简洁。使用代码进行设计, 该系统能够使我们方便的登录学生信息系统, 进行学生基本信息的查询, 以及能够随意的浏览学生的每一条记录, 也能够进行学生基本信息的修改, 或者对不符合条件的学生信息进行删除, 也能够对需要的信息进行增加。
( 2) 减少数据冗余实现数据共享。在数据库系统中, 对数据的定义和描述已经从应用程序中分离出来, 经过数据库管理系统来统一管理。数据的最小访问单位是字段, 既能够按字段的名称存取库中某一个或某一组字段, 也能够存取一条记录或一组记录。
在建立数据库时, 应能够面向全局的观点组织数据库中的数据, 而不是当只考虑某一部门的局部应用, 这样才会发挥数据共享的优势。
( 3) 各控件的设计, 如标签, 文本框, 列表框, 表格等能够实现特定的交互功能, 随意的进入想要进入的表单中。
问题: 1.写代码可能比较复杂, 而且有些代码比较容易写错。
2.应该注意存储路径, 若路径错误, 可能会发生命令的错误或不能执行。
3.同时应注意各表单之间的关联性, 以方便进入
4. 数据类型应匹配, 若不匹配, 程序将无法运行
5. 表单的CAPTION属性, 数据源等都应注意是否填写正确
6.所有CONTROLSOURCE都是表中字段,因而在屏幕上改变数据,立即会对表中记录进行修改.修改操作虽然方便,但难以保证数据安全.查询时,先要点击文本框,
7.在TEXT中输入查找内容,麻烦且容易出错.
改进建议: 将各控件绑定数据源改为内存变量.
VF的程序命令还是有一些繁琐, 而且容易出错, 最好使用一种简单便捷的方式, 利用更加简单的语言进行设计
运用”布局”实现各控件的上下左右的对齐, 以及大小的设置使之一致, 让其美观大方, 交互功能强。
五、 结束语
经过做课程设计, 你有何感想, 学到了什么?
感想:经过课程的设计,和同学老师一起讨论作出属于自己的一个学生信息管理系统, 在收获知识的同时, 还收获了阅历, 收获了成熟, 在此过程中, 我们经过积极努力, 请教老师, 不但培养了独立思考、 动手操作的能力, 在各种其它能力上也都有了提高。更重要的是, 在实验课上, 我们学会了很多学习的方法。而这是日后最实用的, 真的是受益匪浅。要面对社会的挑战, 只有不断的学习、 实践, 再学习、 再实践。
之因此做课程设计, 不但是因为她是教学内容的一部分, 同时也能够锻炼自己的VF 语言编程能力, 养成良好的VF语言编程风格。不论怎样, 这些都是一种锻炼, 一种知识的积累, 能力的提高。完全能够把这个当作基础东西, 只有掌握了这些最基础的, 才能够更进一步, 取得更好的成绩。很少有人会一步登天吧。永不言弃才是最重要的。
而且, 这对于我们的将来也有很大的帮助。以后, 不论有多苦, 我想我们都能变苦为乐, 找寻有趣的事情, 发现其中珍贵的事情。就像中国提倡的艰苦奋斗一样, 我们都能够在实验结束之后变的更加成熟, 会面对需要面正确事情。但还是觉得有很多地方还需进一步的学习,比如有写代码错误自己却找不出原因何在
学习: 经过本次的课程实践我学到很多东西学会如简单的编程,使用VF语言,运用代码相当于一种语言能够实现数据信息的管理等以及各控件的使用,例如:文本框, 表格, 标签等; 。
建立不同的表单经过不一样的编程能够实现她们各自的功能。例如登录表单能够实现登录的功能, 当我们输入正确的用户名以及争取的密码才能够登录, 浏览表单能够实现对学生信息的浏览, 而且经过各控件的不同设计, 能够锁定你想要的哪一条记录或是全部浏览, 修改表单实现修改的功能, 例如觉得哪一条记录是错误或者相对某一条记录进行修改都能够经过改变但实现, 删除表单能够对你不满意的信息或没有用的信息进行逻辑的删除等。
在实践的过程中, 明白要特别注意控件的属性以及各代码的编写。
指导教师评语及成绩
指导教师评语
成绩
签字:
年 月 日
展开阅读全文