VFP使用技巧

2024-05-05

VFP使用技巧(精选九篇)

VFP使用技巧 篇1

1 VFP的简要概述

VFP作为一种数据库管理系统,因为其广泛应用,其优越性也渐渐显现了出来。简要来说,VFP这种数据库管理系统,在对数据的管理上进行了简化处理,使得相关应用程序的开发与应用变得合理有序起来,从而更加有益于普通用户可以根据相关向导以及通过对相关可视化工具来进行表单、视图以及查询的快速创建与处理。VFP是大部分计算机编程语言中使用比较强大、功能比较方便的的面向对象的可视化的编程相关机制,它使用户摆脱了枯燥乏味的程序环境,从而缩短了程序终端用户与设计者之间的距离界限。VFP可与其他软件交换与共享相关数据;VFP能够提供生成器、向导、面向对象程序、设计器以及程序设计支持给最终用户;VFP能够使数据的查询与统计变得方便快捷以及实用。

2 VFP编程的应用现状

在运用VFP进行程序设计时,要循序渐进,从最简单的编程开始,由简到繁,由外及里,一步步仔细地进行编程。对于同一个程序编制问题,相关技术人员可以采用多种方式方法进行程序设计,这使得其在整个编程过程中,能够灵活应用VFP技术,也达到了自身能力的培养,提高编程设计人员的思维活跃能力。

2.1 数据在多用户情境下的独占与共享

数据在相关网络环境下的访问模式有从独占文件中进行访问以及从共享文件中进行访问两种。当一个用户不希望自己访问文件时所产生的记录以及自己在进行访问的文件被其他人知晓与访问,其可以打开一个能够独占访问的表,采取独占的方式对相关数据库进行访问,使得其他用户在其操作时不能对该文件进行读写访问;如果一个用户在进行文件访问前打开了一个访问共享的表,则所有用户都可以对这个文件进行读写访问,在真正的文件访问开始前,用户可以对存在于数据库中的相关数据进行删除以及追加修改等等操作,待正式开始访问时,就不建议实施这些操作了,这是出于对数据完整性以及相关一致性的保护。另外,独占访问与共享访问相比,其是比不上共享访问的优点的,所以,除非在特殊情况下选择独占访问,一般情况下应该尽量避免独占访问模式的使用。

2.2 数据的相关的保密与安全问题

在相关网络环境下,数据的的安全保密性是至关重要的。VFP作为一个数据的管理与开发的平台,必须保障数据的安全性,这就要求其需要采取相关数据加密措施,避免数据在VFP程序环境下被一些用户恶意进行数据的浏览与篡改。在VFP环境下对数据库表进行加密这种安全性保护的目的在于阻止非法用户打开相关的数据库表。通过对数据库表的加密保护,就算是非法用户非法入侵并打开了相关数据文件,其也不能对其中数据真正进行浏览与了解。所以,在VFP环境下,一般要对数据表的相关字段值以及低级文件函的数据表文件标识字节等等进行加密安全措施的有效实施。

2.3 VFP程序的相关安全保护措施

在VFP的大环境下,可以通过相关措施的采取对VFP程序的安全保护,比如说对待不同的用户可以提供给其不同的口令或者不同的系统使用权限,还有在进行分级机制的设置时可以加强对用户权限的相关管理。具体来说,如有一个用户没有合法的相关用户口令,其不能对相关VFP程序进行实质操作;当一个用户在使用合法口令后,不能对目标程序进行最大限度的反编译以及不能够打开在异机上拷贝的源程序。

3 VFP数据库系统开发应用管理的相应步骤

3.1 对软件需求进行具体分析

在整个软件开发活动的开始时,对系统需求进行具体分析,该分析主要分为功能与数据两个重要方面。对软件的功能需求分析能够为相关数据程序设计的应用提供一些有用的切实依据;对软件的需求数据分析是为了方便数据库设计的顺利进行,其具体表现在对系统数据的详细归纳与总结上。

3.2 对数据库进行具体设计

数据库的设计的相关步骤主要分为3个有效阶段,概念结构、逻辑结构以及物理结构的相应设计。数据库的设计指的是在一个已经给定的相关应用环境下,通过对用户各方面数据加工要求的满足,系统目标的最终实现以及数据库中数据的有效存储的实施,其能够被数据库相应应用管理系统接受,来确定数据模型的最优设计,进行处理模式的相关逻辑设计以及实施数据库的存储结构与方法的相关物理设计,最终创建现实信息与数据信息的真实反映。

3.3 对应用程序进行详细设计以及软件测试

在VPF的大环境下是以用户界面为核心来进行面向对象的程序设计的。在对应用程序进行相应设计时,相关人员常需要对表单、报表以及菜单等等程序模块进行详细的调试与测试,发现问题、解决问题。通过对软件的模块测试或者综合测试来发现相关错误问题的存在,并进行调试纠正,使得整个软件应用程序的设计达到预期的计划功能。

3.4 对应用程序的实施发布以及系统的运行维护

应用程序发布后,经过一段时间的使用,软件在发布前的所持有的功能以及相关性能都已经有可能不能够适应客户不断更新的要求,这个时候相关程序设计人员就应该更新与变更软件的应用程序;有时候软件在运行过程中也会出现偶然的系统相关性错误,这时候也需要对错误进行及时的修整;而且,软件应用程序的的工作环境随时有变,这时候就需要更高性能硬件的配置,以新补缺。在软件发布后,软件系统的运行维护是软件在其应用过程中的一个十分重要的发展阶段。

4 VFP程序设计中相关编程的技巧

4.1 VFP程序设计中数据传递

在进行有着繁杂功能性的VFP应用系统的结构化的程序设计的时候,一般采用自上而下地进行分层解析逐个击破的方式。具体做法为将一个繁杂的应用系统分解成许多个功能相关的程序模块,然后再将这些功能性模块支解成功能相对独立单一的应用程序模块,这些小模块也可被称作是过程或者子程序,最后在对这些小模块的调试与应用时,通过相应参数在其过程中传递必要信息,待这些程序运行完成后,再将所得结果往回进行传递,以上整个过程就是对过程与子程序之间的相关数据的传递。

程序之间数据的相互传递主要可以利用内存变量不同的作用域以及带参数调用命令DO……WITH或者自定义函数的数据传递来实现。

例:通过编写自定义函数来判断一元二次方程式ax2+bx+c=0是否有实数根。如果有实数根,函数返回值为真并通过参数的引用方式将实数根带出来。

说明:

(1)像系统函数一样,自定义函数的输出结果只有一个值。本题的输出结果是逻辑值.T.或.F.。但自定义函数的参数有3个,通过在函数参数前加@的方式,把求解的实数根带出来。

(2)调用自定义函数ABC(@X,@Y,z),将X传给A,Y传给B,z传给C,但X、Y是引用方式,当A、B发生变化,会引起X、Y的变化,能将结果带回主程序。

4.2 VFP程序设计中语言循环结构程序

VFP作为数据库管理系统软件。在人们在对其进行的学习与运用中,能够加深对数据库语言以及程序设计知识的学习,更好地解决实际生活中存在的数据处理问题。通过对循环结构语句的功能特点进行具体分析,来展示VFP语言循环结构程序的编程技巧。

VFP中的3种循环语句。

(1)Do WHILE……ENDDO语句:

格式:

功能:当<条件表达式>的值为.T.时,重复执行DO……ENDDO之间的<语句序列>.直到<条件表达式>的值为.F.时,结束循环操作。

(2)FOR……NDFOR语句:

格式:

功能:循环从循环变量的初值开始,重复执行循环体内的语句序列,直到循环变量的终值结束。每循环一次,循环变量的值自动加上一个步长值。

(3)SCAN……ENDSCAN语句囝:

格式:

功能:对当前打开的表文件在指定范围、满足条件的记录中进行自上而下逐个扫描操作,并对指定的每条记录执行相同的<语句序列>操作。

4.3 VFP程序设计中Grid表格控件

在Grid表格控件的程序设计中,可以单击列标题来实现表中的相应记录按照一定列值大小顺序重新进行排列;也可以在表格控件的单元格中使用非文本框控件,这样可以使相关用户操作者感觉到通过表格控件的使用能够使其的数据编辑行为更加便捷灵活;同时也能够让外码透明,在表格列中进行组合框的使用,被配以适当的有益属性的设置,从而让用户的相关操作简洁起来;在表格控件的应用中,也可以将不同组的记录信息赋予不同的颜色信息,一般将表中数据信息依据相应规则分成若干组,将不同的组分别标记上不同的颜色,让使用用户在浏览文件时便于识别相关信息,提高其工作效率。

例如,单击标题列排序:

在进行表格显示时,如果需要单击任一标题列即可根据该列的升序显示数据表,只需在每一列的header1对象的Click过程中加入如下代码:

说明:数据源表中应根据每一字段的升序进行索引。代码中“姓名”为表中的第l列的索引字段(升序),其他各列headed对象的Click过程中的代码要相应进行修改。第2行代码的含义为选定第l行第l列为活动单元格,第2列header1象的Click过程中的该行代码要改为this.parent.parent.activate cell(1,2),其它各列依此类推。

如果需要双击某列标题即可根据该列的降序显示数据表,只需在每一列的header1对象的Dbl Click过程中加入如下代码:

说明:数据源表中应根据每一字段的降序进行索引。代码中“姓名降序”为表中的第l列的索引字段(降序),其他各列header1对象的Dbl Click过程中的代码要相应进行修改。

VFP这种编程技术使用起来相当方便,而且功能很是强大,用户在合理运用VPF技术时要注重相关技巧的有效使用。

参考文献

[1]王东.浅谈Excel表在VFP报表设计中的应用[J].青海电力,2006,25(2).

[2]林锋.VFP程序设计中数据传递的使用技巧[J].福建电脑,2011,27(8).

[3]钟明.VFP6.0编程实用小技巧[J].计算机光盘软件与应用,2011,(1).

[4]李淑华.VFP6.0程序设计[M].北京:高等教育出版社,2004.

[5]杨翠萍.VFP编程小技巧[J].张家口职业技术学院学报,2007,20(1).

[6]王慧珍.VFP程序应用现状分析[J].新课程学习(社会综合),2011,(1).

[7]王薇.VFP教学中的思考[J].计算机教育,2008,(12).

VFP:页框控件的使用 篇2

页框控件本身是一个容器,其中可以包含若干个页(page);而页也是容器,可以在其中添加各种对象,因此无论是在设计时添加对象或者是代码引用,都要比别的控件麻烦些。在使用这个控件时需要注意:如果设计时要向某个页中添加对象,一定要在页框的编辑状态下选中该页的标签,然后再向该页中添加控件;另外在不同页之间切换时,需要处理好数据源的问题。

刚接触这个控件的同志可能经常会碰到这样一个问题:即使在页框中只设定了两页,这两页的标题宽度也会平均分配并且占满整个页框的宽度;而在标准windows对话框中,无论有多少页,页面标题都是左对齐排列的,如下图:

这个问题很好解决,把页框的TabStyle属性值设为“1-非两端”就可以出来这种左对齐的效果。

本文来设计一个页框控件的应用实例,在本例中通过页框控件的两个页实现了看实例学VFP:对表中记录进行定位与查找操作和看实例学VFP:向数据表中添加记录并验证输入数据是否合法这两个例子的功能,运行时如下图:

制作步骤如下:

一、新建表单,将其caption属性值设置为“编程入门网-页框控件”,AutoCenter属性值设置为.t.,保存为“表单1.scx”。

二、向表单上添加一个页框控件pageframe1,将其pagecount属性值设为2,TabStyle属性值设为“1-非两端”。

三、右击页框控件选“编辑”命令,在页框的编辑状态下选中page1,将其caption属性值设置为“查找记录”,按照看实例学VFP:对表中记录进行定位与查找操作一文向page1添加相同的控件并为各个控件设置相同的属性。

四、在页框的编辑状态下选中page2,将其caption属性值设置为“添加记录”,按照看实例学VFP:向数据表中添加记录并验证输入数据是否合法一文向page2添加相同的控件并为各个控件设置相同的属性。

五、设置完毕后的表单设计器如下图:

六、添加事件代码:

(一)表单的init事件代码:

VFP中“超级链接”控件的使用 篇3

关键词:Visual FoxPro,超级链接,控件

1“超级链接”控件简介

“超级链接”控件 (Hyperlink) 是VFP 8.0新增的一个标准的表单控件, 它运行时不可视, 主要有以下几个程序方法可供调用:

Go Back:向后执行历史记录列表中的超级链接跳转。

Go Forward:向前执行历史记录列表中的超级链接跳转。

Navigate To:向指定的目标执行超级链接跳转。

通过以上三个程序方法我们就可以很方便地在程序中实现超级链接功能。其中主要使用Navigate To程序方法, 它的使用格式是:Object.Navigate To (c Target) , 参数c Target指定要定位的URL。

2 在表单中实现超级链接

在表单上添加一个"超级链接"控件, 然后再添加一个命令按钮, 在命令按钮的Click事件中, 通过调用“超级链接”控件的Navigate To方法来启动Internet浏览器并实现向目标地址的跳转, 也可以通过一个图片或一个标签的Click事件来实现这种跳转。

下面给出一个用命令按钮来启动超级链接的实例:

2.1 新建一个表单 (Form1) , 属性设置如下:

Auto Center=.T.

Caption=″在表单中使用超级链接″

2.2通过表单控制工具栏在Form1上添加一个超级链接控件 (Hyperlink1) 和一个命令按钮Command1, 设置Command1的Caption属性为“链接到搜狐网站”。

2.3在Command1的Click Event事件中写入代码:

This Form.Hyper Link1.Navigate To (″www.sohu.com″)

2.4保存表单Form1, 然后运行这个表单, 当单击“链接到搜狐网站”这个命令按钮时, 就会启动Internet浏览器并直接链接到http://www.sohu.com站点。

3 在选单中实现超级链接

在用户自定义选单中使用超级链接, 可以实现通过选单直接访问Internet站点的功能, 使我们的程序更具吸引力。就像Microsoft Office帮助选单中的Microsoft on the Web一样, 我们可以在自己的程序选单中加入系统开发 (下转117页) 者的技术支持网站链接;通过这种方法, 也可以使我们的程序能为用户提供HTML格式的帮助, 因为“超级链接”控件也支持对本地地址或本机一个磁盘文件的链接。 (上接41页)

因为“超级链接”控件是一个表单控件, 它使用时需要一个表单对象来容纳, 而我们在选单中使用时通常不需要显示用户自定义表单。我们可以借助系统内存变量-SCREEN, 在运行时添加一个“超级链接”控件对象到SCREEN, 然后在SCREEN中调用“超级链接”控件的Navigate To方法。

下面是一个在选单中直接访问搜狐网站的实例, 首先设置一个选单选项:访问搜狐网站, 然后为这个选单选项创建一个过程, 写入以下代码即可:

结束语

在用VFP8.0开发的应用程序中, 使用"超级链接"控件可以方便地跳转到Internet的任意一个目标地址上。只要运行这个程序的客户端已配置好Internet浏览器 (例如:Microsoft Internet Explorer) , 并且具备访问Internet的条件, 那么“超级链接”对象就会自动启动浏览器并打开地址中指定的页面。

参考文献

[1]施.Visual FoxPro教学研究[J].淮海工学院学报, 2003 (5) .

[2]常青.利用Visual Foxpro开发的科研信息管理系统[J].北京市经济管理干部学院学报, 2000 (1) .

[3]袁广林.Visual FoxPro5.0中查询式输入的实现[J].电脑知识与技术, 1999 (6) .

VFP程序题 篇4

一、运行结果题

1、以下程序运行结果是

SET TALK OFF

CLEAR

A = 5

B = 12

C = 18 IF MAX(A , B)< C

? MAX(A, B)

ELSE IF MIN(A , B)< C

? C

ELSE

? MIN(A , B)

ENDIF

ENDIF SET TALK ON

RETURN

2、以下程序运行结果是

SET TALK OFF CLEAR USE STCJ

DO WHILE ,NOT, EOF()

REPLACE 总分 WITH 高数 + 计算机 + 英语 SKIP

ENDDO GO BOTTOM

? 学号,总分

USE

RETURN

3、以下程序运行结果是

SET TALK OFF

SET HEADINGS OFF SELECT 2 USE STCJ

INDEX ON 编号

TO GZ21

REPLACE ALL 总分

WITH 高数 + 计算机 + 英语 SELECT 1 USE STDA

SET RELATION TO 编号

INTO B DISPLAY FIELDS 姓名,B.总分

FOR 四级通过

OFF CLOSE ALL RETURN

4、以下程序运行结果是

SET TALK OFF SET SAFETY OFF USE STDA INDEX ON 民族

TO XBSY TOTAL ON 民族

TO GZHZ USE GZHZ COUNT TO N ? N

SET SAFETY ON SET

TALK

ON RETURN

5、以下程序运行结果是

SET TALK OFF SET DELETED ON USE STDA DELETE FOR 性别 = “ 男 ” COUNT TO A SET DELETED OFF COUNT TO B DELETE ALL PACK COUNT TO C ? A , B , C SET TALK ON RETURN

6、以下程序运行结果是

SET TALK OFF USE STDA

INDEX ON 奖学金

TO GZSY SKIP 2

? 姓名,奖学金 USE

SET TALK ON RETURN

7、以下程序运行结果是

SET TALK OFF

SET PROCEDURN TO SP S = 0

DO SP1 WITH 5 , S ? S

SET TPROCEDURE

TO RETURN * SP PRG PROCEDURE

PARAMETERS X , Y N = 1 Y = 1

DO WHILE N < X

Y = Y + N

N = N + 1

ENDDO

RETURN

8、以下程序运行结果是

SET TALK OFF DIMENSION X(2 ,2)X = 5 FOR I = 1 TO 2 FOR J = 1 TO 2 IF I = J

X(I , J)ENDIF ?? X(I , J)ENDFOR ENDFOR SET TALK ON RETURN

二、完善程序

1、下列程序计算机 S =1!+ 2!+3!+4!+5!中,填空完成程序。

S = 0 FOR N = 1

TO 5

FOR I = 1 TO N

P = P * I

ENDFOR

ENDFOR

? “SUN =” , S

2、用下列程序找出所有的水仙花数,所谓水仙花数,是指这样一

个三位数,其各位数字的立方和等于该数本身,如 153 = 1^3 +5^3 +3^3,对以下程序填空完成该功能。FOR N = 100 TO 999

A = INT(N / 100)

B =

C = N – INT(N / 10)* 10 IF N = A^3 +B^3 +C^3

? N

ENDIF

ENDFOR

RETURN

3、将新表 DB2.DBF 文件中学号重复的记录删掉(只保留一个)SET TALK OFF SET SAFETY

OFF

USE STDA

COPY TO DB2 USE DB2

INDEX ON 学号

TO XH DO WHILE.NOT.EOF()XH = 学号 SKIP

DELETE ENDIF ENDDO

CLEAR ALL

4、显示STDA.DBF 文件中男同学的记录

SET

TALK

OFF

SET

HEADING

OFF

USE

STDA

DO

WHILE

.NOT.EOF()

IF

ENDIF

DISPLAY

WAIT

ENDDO

USE

SET

TALK ON

RETURN

5、将STDA.DBF 表中未通过英语四级考试学生的将赏金取消,通过者奖学金加50元,并显示姓名和奖学金额。SET TALK OFF

CLEAR USE STDA DO WHILE.NOT.EOF()IF.NOT.四级通过

REPLACE 奖学

WITH 0

ELSE

? 姓名,奖学金

ENDIF

SKIP

ENDDO

USE

SET TALK ON

RETURN

6、按学号查询成绩

SET TALK OFF CLEAR SELECT 1 USE STDA

INDEX ON 学号 TO IXH SELECT 2 USE STCJ

INDEX ON 学号 TO ICJ

ACCEPT “请输入查询学号:” TO XH SEEK

XH IF

FOUND()

DISPLAY

学号,A->姓名,总分

ELSE

? “ 查无此人!”

ENDIF

USE RETURN

7、请阅读下列判断一个自然数是否为质数的程序,并将程序填写完整。

SET

TALK

OFF

INPUT

“ 请输入一个大于1 的自然数:”

TO N

K = 0

J = 2

DO

WHILE

J < N IF MOD(N , J)

J = J +1

LOOP

ELSE

K = 1

EXIT

ENDIF

ENDDO

IF

K = 0

?

+ “ 素数”

ENDIF

? “ 再见!” SET TALK ON

RETURN

8、修改数据表文件 STDA.DBF 中指定同学的四级通过情况。SET TALK OFF USE STDA

INDEX TO ISY

DO

WHILE.T.CLEAR

ACCEPT “ 输入待学生的姓名” TO XM SEEK XM

IF

FOUND()

@ 10 , 10 SAY “ 修改” + XM + “ 的四级通过情况:” GET 四级通过

WAIT

“ 继续修改?(Y / N)”

TO N IF

ENDIF ENDDO USE RETURN

9、将数据表文件STDA.DBF 中的第三条记录与第四条记录的内容互换,并显示第三条记录。

SET

TALK

OFF

CLEAR

USE

STDA

GO

SCATTER

TO

A

GO

SCATTER

TO

B

GO

GATHER

FROM

B

DISPLAY

GO

USE

SET

TALK

ON

RETURN

10、如下程序根据键入的学号使用SQL SELECT 语句显示学生的学号、姓名和平均成绩。请在下划线处填写适当的内容,使程序能正确的运行。

DO

WHILE.T.CLEAR

ACCEPT

“请输入学号:” TO KEYNO

SELECT

STDA.学号,姓名,(高数 +计算机 +英语)/3 AS平均成绩;FROM STDA.STCJ WHERE

WAIT

“如果退出,请按【Y】键!”

TO KEY

IF

UPPER(KEY)= “ Y”

ENDIF ENDDO USE RETURN

三、程序改错题

1、在STDA.DBF 中,查询某人英语四级通过情况,若通过了,则授予学位,否则不授予学位。(1)SET

TALK OFF(2)USE

STDA

(3)ACCEPT “请输入姓名:”

TO XM(4)SEEK

FOR 姓名 = XM(5)IF

EOF()

(6)? “查无此人!”(7)RETURN(8)ENDIF

(9)IF

英语四级通过

(10)?姓名 + “英语四级通过,授予学位”(11)ELSE

(12)?姓名 + “英语四级没通过,不授予学位”(13)ENDIF(14)USE

(15)SET

TALK

ON(16)RETURN 错误的行是 改为:

2、显示 STCJ.DBF 中总分不低于190分的所有学生的姓名和总分字段的值。

(1)

SET

TALK OFF

(2)

SET

HEAD

OFF

(3)

USE

STCJ

(4)

DO

WHILE

RECNO()< = RECCOUNT()

(5)

REPL

总分

WITH

高数 +计算机 +英语

(6)

IF

总分> = 190

(7)

DISP

学号,总分 OFF

(8)

ENDIF

(9)

LOOP

(10)

ENDDO

(11)

RETURN 错误的行是: 改为:

3、在STDA.DBF 中,快速查询性别为“男”,“09/12/92”出生的人

(1)

SET

TALK OFF

(2)

USE

STDA

(3)

INDEX

ON 性别 +入学时间

TO LKL

(4)

SEEK “男” + “09/12/92”

(5)

IF

.NOT.EOF()

(6)

DISPLAY

(7)

ELSE

(8)

? “查无此人!”

(9)

ENDIF

(10)

USE

(11)

SET

TALK ON

(12)

RETURN 错误的行是: 改为:

4、求出 STCJ 表中总成绩的最大值和最小值。(1)

SET

TALK

OFF

(2)

USE

STCJ

(3)

DO

WHILE

.NOT.EOF()

(4)

REPLACE

总分

WITH 高数 +计算机+英语

(5)

SKIP

(6)

ENDDO

(7)

GO

TOP

(8)

STORE

总分

TO MAX , MIN

(9)

DO

WHILE

.NOT.EOF()

(10)

IF MAX >总分

(11)

MAX = 总分

(12)

ENDIF

(13)

IF MIN <总分

(14)

MIN = 总分

(15)

ENDIF

(16)

SKIP

(17)

ENDDO

(18)

? “最高分:” ,MAX ,”最低分:” , MIN

(19)SET

TALK

ON

(20)RETURN 错误的行是: 改为:

第九套题

一、完善程序题

1、将“职工”表中的数据按工资降序排列后生成新表,程序如下:

CLOSE

ALL

SET

TALK

OFF CLEAR USE 职工

TO 职工1 ON

工资/D USE 职工1 DISPLAY ALL USE

RETURN

2、在“职工”表中查找且显示“孙大鹏”的信息,程序如下:

SET TALK OFF CLEAR USE 职工 LOCATE

IF

FOUND()DISPLAY ENDIF USE

3、显示“职工”表中女职工的工资和,程序如下:

SET

TALK

OFF CLEAR SELECT

FROM 职工 RETURN

1、设计一个查询表单BD.SCX,其界面如图所示,其中文本框控件

名为TEXT1,表格控件名为GRID1。当在其中输入职工姓名并单击“查询”按钮时,将下边的表格内显示该职工的信息。“查询”按钮的Click 事件代码应如下:

THISFORM.GRID1.RECORDSOURCETYPE=4

THISFORM.GRID1.FRCORDSOURCE=”SELECT

* FORM 职工

WHERE

姓名

= = ”

5、将“职工”表中第6条记录的“出生日期”改为“12/12/1972”,程序如下:

SET TALK OFF CLEAR USE 职工 SKIP 5

出生日期

WITH {^1972/12/12} DISPLAY USE

VFP教学探讨 篇5

Visual FoxPro 6.0是由Microsoft公司推出的,一种面向对象的、事件驱动的可视化关系数据库管理系统。高校的计算机专业大约在第二、三学期开此课。学校不同,课程安排略不同。我校计算机专业在第三学期开设此课,编程方面的基础知识已有C语言课程作为前导课,VFP也将成为VB、VC等课程的前导课。因此学好本课程是非常重要的,采用什么样的教学方法,让学生充分掌握这门课程是我们探讨的重点。

2. 准备课程

2.1 书面教案

备课写书面教案是本次课程的灵魂所在。备课是任何一位教师都需要有的课前准备,只是让备课以书面的形式存在。备课书写教案时,应明确以下几个方面:

1)上课前应注意的是:a.教学目的完成本次课程后应该达到的教学效果;b.重点、难点即本次课程的哪些知识点应该重点掌握,哪些知识是难点;c.注意事项本课程的结构如何,学习时应该注意的知识点等等;2) 结束本次课程应注意的是:a.小结:总结本次课执行情况或者有什么问题有待解决或者学生在哪个知识点掌握不好,如何解决等等;b.课后题:尽量给学生留几个课后题去思考,这样能督促学生课后复习;c.预习:结束本次课时,大概的介绍下次课的内容,有时间的学生可以预习下次课的内容。理论课的第一堂课还有一项内容是必不可少的,介绍本课程如何考试以及平时出勤分、作业分、回答问题分等这都是激发学生学习兴趣的必要手段。

2.2 电子课件数据准备

事先制作上课时需要以电子课件形式演示的教学内容,还要准备一些讲课时所需要操作的数据库、表等相关学习资料。黑板和投影机相结合的方式,安排教学课堂结构。完全依赖黑板书写浪费时间,简单书写一部分。制作本次课相关教学内容的电子课件,让学生明确本次课的教学目的、主要内容以及重点、难点等。

3.教学实践

3.1 VFP理论教学

因为我校是医学院校,理工类专业的学生人数相对其他专业来说总是很少,这并不影响我们上好每一堂课,反而讲解的每一堂课更精,更细致到每位学生。理论课在多媒体实验室进行,这样更有利实现良好的教学效果。我们的课程安排总体上采用案例分解讲解VFP的教学内容。但根据每个章节内容不同教学方式略有不同的。VFP课程的教学内容远远多于学校安排的学时数,在教学内容多而课时少数的形势下,就要求教师精讲,以最优的教学方式,达到最好的教学效果。根据不同的教学内容分别采用不同的教学方式。下面详细介绍:

(1).当讲解第三章数据元素时,不同的数据类型具有不同的运算规则,在讲解组建数据库系统前要充分了解和掌握它们,才能灵活应用,如何才能掌握呢,这一章节就要运用黑板+投影机相结合,在讲数值型变量有一个知识点是表达式值输出命令,“格式?|??<表达式>功能:计算表达式的值并将其输出在屏幕上。说明:1)?换行显示,表示从下一行的第一列开始显示输出结果;2)??同行显示,表示从当前行的当前列起显示输出结果。”理论讲解后,用VFP的命令窗口演示,一目了然非常容易掌握。再如讲解数值计算函数,SIGN函数,如果直接用课件幻灯片演示形式,恐怕效果不好,应该介绍函数时用黑板简单书写,这个书写的过程也正是学生接受、思考的过程,再用VFP演示时,可以提问学生让其推断运行结果如何?回答正确的同学可以给予加分鼓励。

(2).当讲解数据表、数据库的建立及其关系时,用课件介绍本次课主要内容后,直接边用VFP演示边讲解相关内容,为达到预期教学效果,要一学时讲理论一学时紧跟练习刚讲过的知识点,鼓励学生大胆的操作,努力发现问题,提出问题,教师随之解决问题。学生主动的发现问题、提出问题是非常重要的。爱因斯坦说过:“提出问题比解决问题更重要。”“学起于思,思源于疑”,充分体现出了发现问题、提出问题的重要性;在平时的教学活动中教师要善于培养学生“提出问题”的能力,帮助学生解决学习中的困难,提高学生挖掘问题的能力[1]。这一阶段的练习非常重要一定是讲什么就练什么,并且要有教师的随之指导。因为班级人数少教师可以观察到每个学生,不停地巡视一旦发现哪个学生有问题立即主动帮助、引导学生解决。

(3).当讲解程序设计时,重点在于顺序、选择、循环三种基本结构设计,这时就需要类比联系实际,因为在掌握具体知识时,更重要的是先明白一种编程的思路或是某种算法的表达,接下来才是如何结合VFP的语法规定实现程序。顺序程序就像生活中每个简单的事例。每天都要吃饭、上学等有顺序的做。而选择呢,例如天气不好时,您会选择是否带雨具,这就是满足某个条件的选择程序。同样循择程序在生活中也存在很多例子。

综上所述,我们根据VFP教学内容的丰富多样性,在教学活动中采用多样化的教学方式,最终目的是为了达到所期望的教学目的,使学生充分掌握每堂课的内容,从而提高学生的学习效率。

3.2 实验教学

VFP是一门实践很强的可视化面向对象的课程,如果实验教学安排不妥当,将直接影响教学效果,实验课是理论知识的实践,是理论课的升华。因而对于本门课程来说实验教学尤为重要。根据笔者经验,实验课可以分为小实验和大实验两种形式,均采用任务驱动式。

1)小实验形式,在讲解时数据元素、数据库和表等基础的操作时,理论实践相结合,一学时理论,一学时实验。其优点在于,一方面可以在明白理论时,立即操作刚学的知识,更容易掌握,另一方面更有利的促使学生发现问题,由教师引导解决问题,能进一步加深印象。李政道也曾说过:“最重要的是提出问题,否则将来做不了第一流的工作。”可见培养学生提出问题的能力是非常重要的。在实际发现问题、解决问题过程中,不仅对学生是一个学习过程,而且对于教师也是一个不断提高自身素质的过程。

2)大实验形式,根据教学内容如程序设计,表单设计等都需要长时间的思考或构思不同算法解决某种问题;例设计表单控件,如编辑框、文本框、列表框、下拉列表框哪个更适合表单设计,需要根据实际情况进行选择;再如菜单中命令项的建立等等都需要认真仔细考虑各因素后,才能做出最优的选择。上大实验课前,应该事先布置实验课要完成的作业,这样的实验课一般与理论课都有一段时间的间隔,留给学生足够的实验准备时间。每个大实验都是2学时,学生在完成作业后,留出一小段时间上网查信息、发E-mail等网络浏览时间。

结束语

总之, 在VFP理论教学中,通过充分备课、准备教学资料、课堂演示、能充分激发学生的学习兴趣,根据不同的教学内容及时调整教学方式,争取达到最优的教学效果。在实验过程中,鼓励学生提出问题,通过解决问题的过程,使学生更加全面的掌握知识。在教学活动中,教与学是一个永恒不变的话题。如何不断改进VFP教学,进一步适应更高层的教学,仍然需要在以后的教学活动中不断的探索。

参考文献

[1]孙丽娜.在VFP教学过程中培养学生“提出问题”的能力.职业技术[J]:47

用VFP控制Excel 篇6

(1)创建一个名为EO的Excel对象

格式:EO=CREATEOBJECT(″Excel.application″)

(2)释放名为EO的Excel对象

格式:RELEASE EO

2 文件操作

(1)添加新工作簿

格式:EO.Workbooks.add

(2)将工作簿文件存盘

格式:EO.ActiveWorkbook.save

(3)将工作簿文件存盘(另存为)

格式:EO.ActiveWorkbook.SaveAs(″文件标识符″)

(4)打开工作簿文件

格式:EO.Workbooks.Open(″文件标识符″)

(5)控制Excel窗口的显示与不显示

格式:EO.visible=.T./.F.

(6)关闭工作簿文件

格式:EO.Workbooks.close

(7)退出Excel

格式:EO.quit

说明:只有通过执行RELEASE EO命令,释放EO对象变量后,Excel应用程序的进程才会完全关闭。

3 工作表的编辑与设置

(1)将指定的工作表为当前工作表

格式:EO.Worksheets(″工作表标签″).Activate(2)更改Excel的标题

格式:EO.Caption=″标题名″(3)给单元格赋值

格式:EO.cells(行,列).value=″值″

(4)单元格、区域、行或列的格式设置

(1)设置当前工作表的指定单元的字体为“黑体”

格式:EO.ActiveSheet.Cells(行,列).Font.Name=″黑体″

(2)设置当前工作表的指定区域的字体大小为25磅

格式:EO.ActiveSheet.range(″区域坐标″).Font.Size=25

(3)设置当前工作表的指定行的字体为斜体,取.F.值时取消斜体

格式:EO.ActiveSheet.rows(行).Font.Italic=.T.

(4)设置当前工作表的指定列的字体为粗体,取.F.值时取消粗体

格式:EO.ActiveSheet.Columns(列).Font.Bold=.t.

(5)设置当前工作表的指定区域的字体颜色为红色

格式:EO.ActiveSheet.range(″区域坐标″).Font.color=RGB(255,0,0)

(6)清除当前工作表的指定区域内各单元格的值,但清除其格式

格式:EO.ActiveSheet.range(″区域坐标″).ClearContents

(5)文本对齐方式设置

(1)设置指定区域文本的水平对齐方式(X的值控制不同位置的对齐方式,具体如下:1=默认,2=靠左,3=居中,4=靠右,5=填充,6=两端对齐,7=跨列居中,8=分散对齐)

格式:EO.range(″区域坐标″).HorizontalAlignment=X

(2)设置指定区域文本的垂直对齐方式(Y的值控制不同位置的对齐方式,具体如下:1=靠上,2=居中,3=靠下,4=两端对齐,5=分散对齐)

格式:EO.range(″区域坐标″).VerticalAlignment=Y

(6)设置列宽

(1)设置指定列的宽度为Y个字符(其中X=1时为A列,X=2时为B列,……,X=255时为IV列)

格式:EO.ActiveSheet.Columns(X).ColumnWidth=Y

(2)设置当前工作表指定列的宽度为最合适列宽(其中X=1时为A列,X=2时为B列,……,X=255时为IV列。命令EO.Columns.AutoFit则设置当前工作表所有列的宽度都为最合适列宽。)

格式:eo.Columns(X).AutoFit

(7)设置行高

(1)设置指定行的行高为Y((单位为磅,1磅=0.035厘米)。其中X=1时为第1行,X=2时为第2行,……,X=65536时为第65536行。)

格式:EO.ActiveSheet.Rows(X).RowHeight=Y

(2)设置指定行的行高为最合适行高(其中X=1时为第1行,X=2时为第2行,…,X=65536时为第65536行。)

格式:eo.Rows(X).AutoFit

(8)在指定工作表的第X行之前(或第Y列之前)插入或删除分页符

格式:EO.Worksheets(″工作表标签″).Rows(X).PageBreak=1/0或EO.Worksheets(″工作表标签″).Columns(Y).PageBreak=1/0

(9)设置指定区域内边框线宽度(X的值控制不同位置的边框,具体如下:1=左框,2=右框,3=顶框,4=底框,5=反斜框,6=正斜框/。Weight值Y控制边框的粗细,可以取1,2,3,4这四个不同的值,值越大线越粗。)

格式:EO.ActiveSheet.Range(″区域坐标″).Borders(X).Weight=Y

(10)设置指定区域内边框线的类型(X的值的功能如前所述。LineStyle值Y:1与7=细实,2=细虚,4=点虚,9=双细实线。)

格式:EO.ActiveSheet.Range(″区域坐标″).Borders(X).LineStyle=Y

(11)设置页眉

(1)设置页眉文本与字体大小

格式:EO.ActiveSheet.PageSetup.CenterHeader=″&X页眉文本″

(2)设置页眉到上边距距离

格式:EO.ActiveSheet.PageSetup.HeaderMargin=X/0.035

(12)设置页脚

(1)设置页脚文本与字体大小

格式:EO.ActiveSheet.PageSetup.CenterFooter=″&X页脚文本″

(2)设置页脚到下边距距离

格式:EO.ActiveSheet.PageSetup.FooterMargin=X/0.035

(13)设置页边距

(1)设置上边距

格式:EO.ActiveSheet.PageSetup.TopMargin=X/0.035

(2)设置下边距

格式:EO.ActiveSheet.PageSetup.BottomMargin=X/0.035

(3)设置左边距

格式:EO.ActiveSheet.PageSetup.LeftMargin=X/0.035

(4)设置右边距

格式:EO.ActiveSheet.PageSetup.RightMargin=X/0.035

(14)设置工作表在页面中的水平对齐方式为居中,取.F.时则为左对齐

格式:EO.ActiveSheet.PageSetup.CenterHorizontally=.T.

(15)设置工作表在页面中的垂直对齐方式为居中,取.F.时则为靠顶端对齐

格式:EO.ActiveSheet.PageSetup.CenterVertically=.T.

(16)设置当前工作表打印(或预览)时的纸张(或页面)大小(X的值控制不同纸型,常用纸型对应的具体值如下:3=Tabloid,5=Legal,7=Executive,8=A3,9=A4,11=A5,12=B4(JIS),13=B5(JIS)

格式:EO.ActiveSheet.PageSetup.PaperSize=X

(17)设置打印标题行

(1)设置第1行、第2行作为打印输出时每页的水平标题

格式:EO.ActiveSheet.PageSetup.PrintTitleRows=″$1:$2″

(2)设置A、B、C三列作为打印输出时每页的垂直标题

格式:EO.ActiveSheet.PageSetup.PrintTitleColumns=″$A:$C″

(18)设置输出工作表时是否打印单元格的网格线

格式:EO.ActiveSheet.PageSetup.PrintGridlines=.T./.F.

(19)复制区域

(1)将指定区域的内容放入剪贴板

格式:EO.ActiveSheet.Range(″区域坐标″).Copy

(2)将剪贴板的内容粘贴到目标工作表的目标区域

格式:EO.WorkSheets(″目标工作表的标签″).Range(″目标区域左上角单元坐标″).PasteSpecial

(20)打印预览工作表

格式:EO.ActiveSheet.PrintPreview

(21)打印输出工作表

格式:EO.ActiveSheet.PrintOut

4 结束语

VFP中编程控制Excel的常用命令均在Visual FoxPro6.0及Microsoft Excel 2000环境下调试通过。

摘要:介绍在VFP中控制Excel的常用命令及其使用方法。

关键词:VFP,Excel,工作簿,工作表,命令

参考文献

[1]史济民.Visual FoxPro及其应用系统开发.第二版.北京:清华大学出版社,2006-08.

用VFP统计新生数据 篇7

1 新生统计表的要求

根据学校各级管理部门工作的需要,新生录取后需要各类数据统计表,如教务部门、学生管理部门需要新生分专业统计表,招生部门需要新生分区域统计表,宿舍管理部门、各院系需要男女生人数统计表等。从《全国普通高校招生网上录取——院校子系统》导出的数据为25个独立的数据表文件,这些文件相对独立,但又有内在联系,单个的数据表文件不能直观地反映学生档案信息,需要借助查询文件或查询语句将多个表文件关联在一起,生成新的查询文件即学生档案信息表,再在学生档案信息表的基础上生成各类统计表。25个独立数据表文件分别为:(1)T_tdd.dbf-考生投档,(2)T_jhk.dbf-专业计划表,(3)T_qbjhk.dbf-全部专业计划表,(4)T_tddw.dbf-投档单位表,(5)T_kshkcj.dbf-考生会考成绩表,(6)T_ksjl.dbf-考生简历表,(7)T_tjxx.dbf-考生体检信息表,(8)Td_bylbdm.dbf-毕业类别代码表,(9)Td_cjxdm.dbf-成绩项代码表,(10)Td_dqdm.dbf-地区代码表,(11)Td_jhxzdm.dbf-计划性质代码表,(12)Td_kldm.dbf-科类代码表,(13)Td_kslbdm.dbf-考生类别代码表,(14)Td_kslxdm.dbf-考试类型代码表,(15)Td_lqfsdm.dbf-录取方式代码表,(16)Td_mz.dbf-民族代码表,(17)Td_pcdm.dbf-批次代码表,(18)Td_tdyydm.dbf-退档原因代码表,(19)Td_tjjldm.dbf-体检结论代码表,(20)Td_wyyzdm.dbf-外语语种代码表,(21)Td_xbdm.dbf-性别代码表,(22)Td_xtdwdm.dbf-系统单位代码,(23)Td_zcdm.dbf-政策代码表,(24)Td_zytzdm.dbf-志愿特征代码表,(25)Td_zzmm.dbf-政治面貌代码表。其中以t_开关的文件是信息表文件(7个),以td_开头的文件是代码表文件(18个)。通过对文件信息的了解,可以更清楚地找到数据之间的关联关系,为各类数据统计表提供方便。

2 新生分专业统计表实现过程

1) 在导出的专业计划表文件(t_jhk.dbf)中,增加yxmc(即院系名称)字段,标明专业所在院系。其方法是在VFP命令窗口中运行以下命令:alter table t_jhk add column yxmc c(20),然后打开t_jhk.dbf,将每个专业的yxmc值填入。

2) 生成直观的学生档案信息表文件,文件名为xsb+年号,如xsb2014,根据各类新生统计表的要求,xsb2014.dbf除了学生的基本信息(姓名、性别、身份证号等)外,还应包涵录取信息、区域信息等,主要字段及数据来源为:Ksh(14位数高考报名号)来源于T_tdd.dbf,zkzh(高考准考证号)来源于T_tdd.dbf,xm(考生姓名)来源于T_tdd.dbf,xbmc(性别)来源于Td_xbdm,sfzh(身份证号码)来源于T_tdd.dbf,klmc(科类名称)来源于Td_kldm.dbf,mzmc(民族名称)来源于Td_mzdm.dbf,zzmmmc(政治面貌)来源于Td_zzmmdm.dbf,zxmc(毕业中学)来源于T_tdd.dbf,dqdm(地区代码)来源于Td_dqdm.dbf,dqmc(地区名称)来源于Td_dqdm.dbf,jtdz(家庭地址)来源于T_tdd.dbf,sjr(收件人)来源于T_tdd.dbf,yzbm(邮政编码)来源于T_tdd.dbf,lxdh(联系电话)来源于T_tdd,dbf,cj(高考成绩)来源于T_tdd.dbf,yxmc(院系名称)来源于T_jhk.dbf,zymc(专业名称)来源于T_jhk.dbf。生成过程是在VFP命令窗口中执行以下命令:

3) 统计各专业录取人数,使用查询语句完成。在VFP命令窗口中执行以下命令:

select yxmc,coun(*)as rs from xsb2014 group by yxmc &&统计各学院录取人数

select yxmc,zymc,coun(*)as rs from xsb2014 group by yxmc,zymc &&统计各院系各专业人数

执行各院系各专业人数统计查询,其结果如图1所示。

3 新生分区域统计表实现过程

由于在建立学生档案信息表时,已有学生所在区域信息,因此通过xsb2014.dbf很容易统计各区域录取人数情况,实现过过程是在VFP命令窗口中输入以下命令:

select dqmc,coun(*)as rs from xsb2014 group by dqdm&&分区域统计新生

执行结果如图2所示。学校招生部门对分区域学生数据非常重视,在新生分区域统计表的基础上,还可以生成分区域新生统计图,更抽象、更直观地反映学生来源情况。在VFP中实现过程如下:

首先将刚才的统计表复制到一个临时文件中,如copy tox1;然后在[文件]菜单中点击新建菜单,文件类型选择[查询]选项,建立方式为[向导],向导选取中选择[图形向导]。在图形向导步骤1中,选择数据表文件x1,并将相应字段选至[可用字段]中;在图形向导步骤2中,将rs拖至数据系列,将dqdm拖至坐标轴区域;步骤3中,选择图形类型,如选择柱形图;步骤4中,给统计图加入标题,如“分区域统计图”,选择“图形保存在表单”中,点击完成即建立分区域统计图,如图3所示。

4 新生性别情况统计表实现过程

学生档案信息表xsb2014.dbf中已有性别信息和院系信息,新生分院系性别情况统计表可以通过xsb2014.dbf直接生成,其实现过程如下,结果如图4所示:

select yxmc,xbmc,coun(*)as rs from xsb2014 group by yxmc,xbmc &&统计各院系男女生人数

以上程序代码在VFP6中全部运行通过。

摘要:该文分析从《全国普通高校招生网上录取——院校子系统》导出数据表文件的内在联系,探讨在VFP中建立分专业人数统计表、分区域人数统计表(统计图)、男女生人数统计表的方法,在实际工作中具有现实意义。

关键词:VFP,查询,统计表,招生管理

参考文献

[1]易学文.VFP的查询表单在招生管理系统中的设计与实现[M].福建电脑,2010(4).

[2]易学文.数据交叉查询在招生管理中的应用[M].电脑知识与技术,2014(11).

[3]Microsoft Corporation.希望图书创作室译.Microsoft VisualFox Pro6.0中文版语言参考手册[M].1999.

探析VFP中的查询设计 篇8

所谓“查询”, 是向一个数据源发出的检索信息的请求, 它按照一些条件提取特定的数据, 其运行结果是一个动态的数据集合。查询是数据库应用的重要方面, 是从数据库中获得信息的主要途径。等级考试中查询也作为重点考试内容, 笔试满分60分, VFP占40分, 其中查询占5分左右, 机试满分40分, 查询占8分, 可以看出查询在等级考试中VFP部分占的比例约为16%左右。如此高的比例足可见查询的重要性。学生在学习过程中对查询的掌握也比较困难, 一方面对题目中的要求理解有偏差, 另一方面不能将要求的条件转换成查询语句来实现查询。笔者以实际教学过程中遇到的题目为例分析查询的设计过程, 旨在对查询的设计做更细致的讲述。

使用查询设计器设计查询

使用查询设计器创建查询比较直观, 界面化的操作使得学生不用记忆太多的命令。这种方式方便, 快捷比较容易掌握。查询设计器界面提供了数据源、字段选择、联接、筛选条件、分组依据、排序依据等选项卡, 创建查询时只需要对各部分选项卡进行鼠标选择对应内容即可。

1.字段选择注意事项

此方式的难点在于字段的选择和分组依据的设置。字段选项是要选择要显示及排序和分组的字段, 如果要显示数据表中固有的字段, 直接选取即可。如果要通过计算生成新的字段学生就容易出错。如要显示人数这样的字段, 学生表中不会包含, 可用“count (*) as人数”计算生成。再如要显示男生人数, 学生表只包含“xb”字段, 可用“sum (iif (xb=”男”, 1, 0) ) as男生人数”生成, 但不可以写成“count (xb=”男”) as男生人数”, 虽然系统不会提示错误, 结果并不正确。Count () 函数为计数函数, 求得表中记录数。常用函数还有avg () , 求平均值。比如cj表中存储了每个学生的成绩, 若要显示“平均成绩”, 表中没有这样的字段, 可通过“avg (cj.cj) as平均成绩”生成。

2.分组依据的选择

在创建查询时另一个难点就是分组依据的选择。学生往往对分组理解不够透彻, 对分组字段的选择很难把握。分组对查询结果影响至关重要, 尤其是在有使用计算生成新的字段的查询中, 即使字段选择正确, 分组设置错误也不能得到正确的查询, 虽然结果中包含了需要的字段, 但数据未必正确。分组是把具有相同字段内容组合在一起。简单的讲在计算生成新的字段时, 所使用的函数是对组内计算。在对查询题目阅读时, 如果出现计算各个班级的人数或成绩, 分组字段就选择“班级编号”、“班级名称”之类的字段。如果出现计算各个院系的人数等要求, 分组字段就选择“院系编号”、“院系名称”之类的字段。如果出现每个学生平均成绩等, 分组字段一般选择“学号”这样的字段, 总之, 一定把握计算是对组内的数据进行计算。

使用SQL命令设计查询

使用SQL语句创建查询, 需要学生记住语句语法格式。因此成为学生学习查询中的难点。但这种方式只需字符书写不必涉及界面使之成为笔试考核查询的主要方式。

1.字段的选择

Select用来选择表中的字段, 如果选择表中的已有字段并且没有别名, 直接写字段名用“, ”分隔。如果要加别名或生成新的字段就要用关键字“as”, 如“select xh as学号, xm from xs.dbf”字段“xh”别名为“学号”。“select count (*) as人数”就是生成新的字段“人数”。

2.联接设置

在创建查询时, 如果用到多表还必须创建联接。联接分为如下几种: (1) 内联接 (inner join) 两张表中仅满足条件的记录, 最普遍最常用的联接。 (2) 左联接 (Left outer join) :表中在联接条件左边的所有记录, 和表中联接条件右边的且满足联接条件的记录。 (3) 右联接 (Right outer join) :表中在联接条件右边的所有记录, 和表中联接条件左边的且满足联接条件的记录。 (4) 完全联接 (Full join) :表中是否满足条件的所有记录。一般在创建联接时, 使用内联接居多。有时对基于两张表的查询也可用条件进行筛选而不用联接。如:“select xs.xh, xm, cj from xs inner join cj on xs.xh=cj.xh”也可用“select xs.xh, xm, cj from xs, cj where xs.xh=cj.xh”。

3.查询结果中字段宽度的设置

在学习查询的过程中有这样一道题目:创建一个查询, 查询职称是教授和副教授的所有教师的收入情况。要求查询结果中包含教师姓名、职称、个人收入 (仅包括基本工资和岗位津贴) 和个人收入所得税 (假设1000~2000元税率为5%, 2000元以上税率为10%) , 并按个人收入进行排序。如果直接创建如下查询:

ORDER BY 4

运行结果个人所得税为“*”如图1所示:

若查询修改如下:

通过比较, 我们很容易看出来查询中的个人所得税字段设置影响了结果的正确性。在第一查询中由于设置一个“0”, 而计算结果个人所得税宽度超过一位时导致查询字段溢出, 字段值显示“*”, 修改后查询设置为三个“0”, 显示正确。由此可以得出结论:查询字段宽度设置影响查询结果, 即使在个人所得税为零时也应设置为“000”来表示数据宽度为3位。因此, 在创建查询尤其是计算产生的新字段一定要注意宽度的设置。

结束语

VFP程序设计是针对非计算机专业学生开设的一门计算机公共课程, 此类学生只要求了解一些计算机基本理论知识和一些操作技术。由于学生起点差异较大, 程序设计知识较薄弱, 所以教学过程要多结合实例, 在操作过程中总结理论知识才能更大的激发学生兴趣。以上为本人在教学过程中, 针对查询设计结合典型实例的一些经验总结, 希望能对VFP中查询的教学有所帮助。

提高中职VFP教学效率对策 篇9

关键词:中职,VFP,教学效率

当今的社会是网络的社会, 数据库作用于网络社会的各个领域。因此学好数据库管理系统, 掌握数据库管理系统的具体操作方法, 是适应当今网络社会需求的重要途径。目前, 数据库管理系统开发软件很多, 如:ORCAL、SQL、ACCESS、VISUAL、FOXPRO等都是非常常见的。

Visual Fox Pro (简称VFP) 是微软公司推出的一款非常便于理解的可视化数据库管理系统, 功能强大, 操作便捷, 易于理解。它的功能相较于ORCAL、SQL等数据库管理系统来说, 还是有一些缺陷的。但由于其简单易学, 成为了中职学生学习其它数据库管理系统的一门基础课程, 绝大部分中职院校把这门课程作为一门必修课程。那么, 如何让中职生学好这门课程, 真正为以后学习更为先进的数据库管理系统打下基础, 搞好VFP教学就成为了许多计算机教师的一个难题。下面就提高VFP教学效率谈一下自己的看法。

1 兴趣提高

中职生学习习惯或多或少会有一些问题。在学习VFP过程中, 往往出现畏难情绪。这其实是他们对VFP的认识上的偏差。学习任何课程, 最好的方法就是兴趣学习法。只要有兴趣, 就会有动力, 学不好是不可能的。因此, 提高学生对VFP的学习兴趣, 是提高教学效率的最重要的一环。那么如何提高呢?首先需要让学生认识VFP, 展示一下自己利用VFP制作好的学生成绩管理系统, 并将各个模块的功能展示给学生, 让学生对VFP有初步的认识;在教学过程中, 充分结合身边的实例进行讲解, 让学生能够直观感受到VFP的魅力, 从而让他们感觉到VFP并不难学, 提高他们对VFP的学习兴趣;学生有了初步的基础之后, 先让他们自己尝试着设计一些简单的程序, 充分感受程序设计的乐趣, 然后逐步加深, 完全调动学生学习的积极性, 开发他们的创造性, 为VFP的学习打下坚实的基础。

2 案例教学

案例教学法即围绕一定培训目的把真实情景加以典型化处理, 形成供学员思考分析和决断案例, 通过独立研究和相互讨论的方式, 来提高学生分析问题和解决问题的能力的一种方法。教学中, 由于不断变换教学形式, 学生大脑兴奋不断转移, 注意力得到了及时调节, 有利于学生维持最佳精神状态;能够采用直观易学的形式。课堂上, 教师再不是“独唱”, 而是和大家一讨论思考, 学生在课堂上也不仅是听、看和写, 而是共同探讨, 开阔思路, 通过实践解决问题, 收到良好的效果。

案例教学第一要创设情境、确定案例。创设学生当前所学习的内容与现实情况基本相接近的实例;第二, 注意引导研究。教师在设计案例要注意学生特点、知识接受能力的差异。要把“案”解成具体的、浅显易懂的、容易完成的小“问题”。引导完成后, 自然达到或完成相关的教学目标。同时充分考虑学生现有认知, 遵循由浅入深、由表及里、循序渐进的原则, 真正实现从学生实际出发;第三, 让学生独立探索, 通过研究讨论, 对知识点进行理解, 消化示范案例的解决要点, 为解决问题打下基础。同时开展小组交流、讨论, 组员分工协作, 共同完成任务。利用案例教学法, 深刻把握课程特点, 深入研究教学内容, 精心组织教学流程, 让学生在实践掌握知识、提高技能, 真正体现教学中学生的主体地位和教师的主导地位, 充分发挥学生的主观能动性, 训练他们的各种创造性思维, 全面提高他们的综合素质, 尤其对于中职学生来说, 这种方法更能提高学生的动手能力, 取得较好的教学效果。

3 任务驱动

教师使用VFP教学常用的做法是:介绍命令格式、功能, 然后举例说明, 之后积累一些命令之后, 由学生自由上机调试。枯燥乏味的命令、漫无目的的教学方式会使得本身对学习就没有太大兴趣的职中学生感到更加的厌烦, 这样很不利于学习。笔者在教学过程中, 采用任务驱动的教学模式。

任务驱动教学法就是教师根据教学主题设计任务, 学生根据任务完成学习。做法是:在学习之初, 就制定出学习本门课程之后的终极目标:自己编程制作适合于本校的学生学籍管理系统, 使学生在学习过程中, 始终有一个明确的目标。在教学过程中, 逐步分解这个目标, 将这个任务逐步进行分解, 根据所学模块的不同进行讲解, 然后剖析课程内容可以适用于任务的部分。

4 知识整合

课程完成后, 学生对VFP程序开发已经具有了一定的水平, 但是他们的知识点是零散的, 没有进行深入的系统化。笔者利用学期初制定的总目标来引导学生, 给他们初步的整合思路、应用程序开发的思想、系统开发的步骤, 然后让学生自己逐步进行大胆尝试, 并充分调动他们的思维想象空间, 进行自由的设计。结果, 在这种思路下, 学生设计出来的作品各种各样。有表单、有菜单, 大部分都能实现一个成绩管理系统的基本功能。在这个过程中, 学生需要去大量的查阅资料、小组讨论、既解决了问题, 又培养了他们的团队合作精神, 效果非常好。

参考文献

上一篇:毕业生高流失率下一篇:经营战略转型