表单案例在数据库教学中的应用

时间:2022-10-01 11:11:52

表单案例在数据库教学中的应用

摘要:X案例教学在高职院校的课堂教学中被逐渐地认可并采纳。

近年来,作为一种开放性较高、互动性较强、功效性较好的新型教学方式,案例法或案例教学法在学校、公司和单位的学习和管理中越来越多地被广大教师和管理层采纳和应用。若干成功的教学案例都在为这种新兴的教学方式提供了积极意义的佐证。笔者在多年教授高等职业院校数据库课程的理论经验和课题研发实际经验的基础上,将多个教学案例引入到数据库的教学中,收到了较好的教学效果。在这里将其中的一个应用案例:表单案例分享给大家。这个案例是在讲解表单的章节中引用的。这个案例中用到表单中可能用到的常用控件,且控件之间根据实际应用建立了相应的关联,学生在理解这一案例背景的前提下,积极参与到方案的设计和实施中来,学生的学习积极性被充分调动起来,真正体会到了学习的乐趣,享受到的学习的成果。下面把这一案例在教学中的应用过程和应用技术关键做一些介绍。

一、表单案例应用过程

(1)引入案例背景。将学院学籍管理中的纸质学籍卡原始样表复印下发给学生,让学生反复仔细观察表格的组成元素,鼓励学生自己先试着说出这些元素之间的关系,先让学生积极参与进来,后由老师将表的案例背景,表间元素的关系以及各元素的域值尽可能详实地介绍给学生。

(2)学生分组分析并确立初步方案。

根据班级实际情况由教师将将学生分成学习小组,每个小组设定一名小组长,由组长负责分组的分析和讨论的进程,通过这一过程的实施,让学生尽可能多地参与到课程教学中来,变被动学习为主动学习,同时也能够让学生更多地了解要解决问题的难点和细节,为今后更好地面对和解决问题做好心理和技能方面的准备。

(3)教师参与引导并确立目标方案。

教师参与进学生的活动,共同分析每一小组设计方案的相同点和不同点,讨论每一方案的优点和不足,最后共同形成一个目标方案。

(4)师生共同完成方案的实施。

方案的实施过程可根据授课情景或学生背景情况的不同采用老师主学生辅或反之的方法来完成。

(5)案例应用综合评价。

在完成方案实施并共同调试后,对这个已经完成的作品或成果,教师还要结合自己的经验给予一个综合的评价,给自己、给学生也给作品一个找出可提升的空间。

二、方案实施过程中的技术关键

为了叙述和说明的方便,先给出表单设计的最终结果图示(原始管理表格的基础样式接近图示右侧的部分)

(一)设计表单框架结构

参照纸质学籍卡原始样表规划设计表单的具体内容,考虑到学籍的录用和查询过程尽量通用且界面统一,在设计表单位框架结构时在原始样表在基础上增加了“学籍管理能用查询窗口”图示中左侧的两个表格控件。

(二)分析表单元素之间的关系

1.设计数据库或数据表

通过综合分析,最终设计了一个数据库Xjk.dbc,库中包含3个表:xjk1.dbf存储学生基本信息(含照片和奖励情况),xjk2.dbf存储学生的简历信息,xjk3.dbf存储学生的家庭成员及主要社会关系;两个自由表,其中bjqk.dbf,用于存储所有班级信息,mzk.dbf用于维护民族信息;

2.选择并确定表单控件,在选择过程中尽可能地达到表述清晰、界面直观、操作简单的设计目标;

3.左侧的“班级名称”和“姓名”所对应的表格存在级联关系。“班级名称”中的班级信息来源于bjqk.dbf,选定一个班级后,左下边“姓名”所对应的表格中应显示出所选定班级中的全部学生姓名;

4.“姓名”所对应的表格和右侧的主表格中的全部信息通过学生编号级联,即选定一个学生后,右侧主表格中应该显示出该学生的全部学籍信息

5.主表格中的基础信息(右侧上半部分信息和奖励情况)和本人入学前简历及家庭成员及主要社会关系存在一对多的对应关系。

(三)设计表单

1.设计数据环境

数据环境设计器中共加入五个数据表,xjk2.dbf,xjk3.dbf分别和xjk1.dbf存在关联,这点从数据库设计器中表间关系的连线可见,为了达到选择一个班级后,“姓名”所对应的表格能过滤出本班级所有学生的姓名及编号信息的设计目标,在xjk1.dbf数据源中加了一个过滤器Filter=xjk1.bj=bjmbl,其中bjmbl为一个初始值为空的字符型全局变量;

2.设计表单位控件

设计表单中的各个控件,修改或设定每一控件的某些属性,并为每一个控件指定对应的数据源。

3.编写表单控件或表单的事件代码

(1) “班级名称”所对应的表格的Column1.text1的单击事件代码

bjmbl=thisform.grid1.column1.text1.value

sele xjk1

go top

thisform.refresh

说明:通过单击选定一个指定的班级后,全局变量bjmbl取到这个新值后,通过thisform.refresh命令刷新表单时,表单的数据环境也随之刷新,这样过滤器Filter=xjk1.bj=bjmbl就发挥作用,将所选班级的全部学生过滤出来备用。

(2)“姓名”所对应的表格的Column1.text1的单击事件代码

sele xjk1

p=recn()

go p

if eof()

appe blan

endi

thisform.refresh

说明:由于考虑到录入和查询界面的接口问题,把这段代码写全了,这段代码适用于学籍信息录入操作,如果是查询操作,仅取首尾两行即可。

(3)“下一条记录”按钮单击事件代码。其它几个记录移动按钮的代码稍有不同,在此不再赘述。

sele xjk1

skip

if eof()

skip -1

endi

thisform.refresh

(4)“退出”按钮单击事件代码

release thisform

retu

上一篇:浅谈综合英语课堂中的合作学习 下一篇:基于用户认知的产品DNA识别与设计研究