第七章 Visual FoxPro 程序设计
- 格式:doc
- 大小:96.50 KB
- 文档页数:9
可编辑修改精选全文完整版《Visual Foxpro程序设计》教学大纲一、课程的性质和任务Microsoft Visual Foxpro关系数据库是新一代小型数据库管理系统的杰出代表。
它具有强大的性能、完整而丰富的工具、较高的处理速度、友好的界面以及完备的兼容性等特点。
是用户收集信息、查询数据、创建集成数据库系统、进行应用系统开发较为理想的工具软件。
目前在我国有广泛的应用基础和用户群。
《Visual FoxPro程序设计》课程是目前国内各高校普遍开设的一门计算机公共课程,学习本课程将有助于学生巩固、加深和拓展已有的计算机和信息技术知识;掌握基本的数据库应用技术和基于数据库的应用程序设计技术;培养逻辑思维能力,以及分析问题和解决问题的能力。
将专业知识与计算机信息管理知识和技能结合起来,使之在今后的学习和工作中适应新时代的要求。
二、课程教学目标(一)知识教学目标本课程为必修课,按照本大纲采用同一程序设计语言开课的各专业统一内容、统一要求、统一考试。
通过本课程的课堂教学与上机实训,要求学生:1、了解信息(Information)、数据(Data)、数据库(Data Base)、数据库管理系统(DBMS)和数据库系统(DBS)的基本概念,以及数据库技术在当今社会各个层面管理中应用的重要性。
2、熟悉Visual FoxPro的用户界面和运行方式,掌握Visual FoxPro的各种数据类型,以及常量、变量、表达式、函数等各种数据元素,掌握Visual FoxPro 的命令格式和主要文件类型等基础知识。
3、掌握数据表的创建方法,以及数据记录的插入、删除、修改、排序、索引、查找、统计汇总等基本操作,同时掌握多个数据表之间的关联、更新等操作。
4、掌握数据库创建与维护的方法,以及数据字典、数据视图、数据库表之间的永久关系和参照完整性等知识,掌握应用数据库技术管理大量信息的基本技能。
5、熟悉SQL结构化查询语言,了解该语言的特点;着重掌握SQL的数据定义语言、数据修改语言和数据查询语言,能够使用基本SQL命令创建、维护和查询数据库和数据表。
Visual FoxPro程序设计课程学习要点第1章数据库基础1.Visual FoxPro就是一种关系数据库管理系统。
2.关系数据库系统中常用的关系术语:(1)关系:一个关系就是一张二维表。
在Visual FoxPro中,一个关系存储为一个文件,文件的扩展名为.dbf,称为“表”。
(2)元组:在一个二维表(一个具体的关系)中,水平方向的行称为元组,每一行是一个元组。
元组也可以称之为记录。
(3)属性:二维表中垂直方向的一列称之为关系的一个属性,也就是表中的一个字段。
3.专门的关系运算(选择、投影、联接)(1)选择:是指从指定的关系中选择某些满足条件的元组构成一个新的关系。
(2)投影:是指从指定的关系中选择某些属性的所有值组成的新关系。
(3)联接:是将两个关系联接在一起,形成一个新的关系。
4.计算机数据管理发展经历了人工管理、文件管理、数据库系统、分布式数据库系统、面向对象数据库系统。
第2章 Visual FoxPro系统初步1.Visual FoxPro 6.0主要有两种工作方式:交互操作方式和程序执行方式。
2.VFP的命令和子句的书写规则。
(1)VFP每条命令必须以命令动词开始,回车键结束。
(2)命令动词与子句、子句与子句、子句内的各部分之间必须用空格(至少一个空格)隔开。
(3)命令子句写在命令动词后,数量不限,次序不影响命令的执行结果。
(4)命令动词与各子句中的保留字,包括以后将介绍的函数名都可简写为前4个字符,而且对其中出现的英文字母,使用大小写等效。
(5)一般情况下,一行只能写一条命令,若一行写不下,可在行尾使用续行符“;”并回车分行,并在下一行继续键入该命令。
(6)命令中出现的所有符号,如括号、逗号、双引号等应在英文半角状态下输入。
3.VFP常用的命令子句主要有如下几种。
(1)范围子句范围子句用来确定执行该命令涉及的记录范围,一共有4种限定方法。
①ALL 所有记录。
②NEXT <n> 从当前记录起的N个记录。
六程序设计基础命令文件1命令文件的格式A2命令文件的建立与修改C3命令文件的运行C常用命令1输入输出命令C2常用的系统设置命令C3其它命令C程序文件1结构化程序设计的三种基本结构:顺序,选择,循环D2过程文件的建立及重要性C3子程序与过程的调用B4参数的传递与变量的作用域B命令文件VFP6支持过程化程序设计和面向对象程序设计两种程序设计与开发的类型。
程序可以分为三个部分:第一部分是程序的说明部分,一般用于说明程序的功能、文件名等需要说明的有关信息。
第二部分是进行数据处理的部分,通常这部分程序常包括下列三个部分,依次为:环境设置、数据处理(输入运算输出)、环境恢复。
第三部分是程序的控制返回部分,它控制程序返回到调用该程序的调用处。
1命令文件的格式AVFP的程序是由若干有序的命令行组成,且满足下列规则:(1)用于结束的语句Cancel :其功能是结束程序的执行,返回命令窗口。
Return:结束本程序模块的执行,返回上一级调用处。
如果是主程序最高级调用,返回命令窗口。
(2)每一行可以从任一列开始,为便于阅读,一般程序结构左对齐,而控制结构内的语句序列比控制结构的语句缩进若干格。
每条命令以回车键结束。
(3)一个命令行内只能写一条命令,命令行以回车键结束。
一条命令在一个物理行内写不下时,可以分成几行。
换行的方法有两种:一种是在物理行的末尾加符号“;”,表示下一行输入的内容是本行的继续;另一种是系统自动换行,即输入程序时,只管逐条命令输入,无需考虑本条语句是否超过屏幕行宽的最大限度,当输入的语句超过屏幕的最大行宽时,系统自动换行。
输入时只需在一行结束时按回车键,通知系统本命令行输入完毕。
(4)各命令动词、系统保留字、系统函数可以取前四个字母。
各命令动词、系统保留字、选项之间至少有一个空格作为分隔符。
使用“命令”窗口可以在“命令”窗口中键入 Visual FoxPro 命令并按 ENTER 键执行。
若要重新执行该命令,还可以将光标移到此命令所在行并按 ENTER 键。
第五章Visual FoxPro 程序设计基础5.1 Visual FoxPro 的工作方式VFP提供了两种工作方式:即交互方式和程序执行方式,其中,交互方式又分为命令方式和菜单方式(可视化操作方式)两种类型。
为了理解程序的工作方式,需要回顾命令方式和菜单方式。
5.1.1 命令方式VFP的命令方式是利用命令(Command)窗口来实现的。
用户在命令窗口输入命令,VFP 执行相应的操作。
所谓命令方式,即输入一条命令,完成一个操作的工作方式。
5.1.2 菜单/图标方式所谓菜单/图标方式,即通过打开不同的菜单(点击不同的图标)选择并完成不同的操作。
以前各章所介绍的操作基本都是这样的方式。
5.1.3 程序文件方式程序文件(简称程序)也常称作命令文件。
在VFP中,通过程序文件编辑工具,将对事务进行处理的一系列的命令,按一定的逻辑关系组合在一起,并以文件的方式存放在磁盘中,然后再通过命令方式或菜单/图标方式执行该程序以完成相应的操作。
在VFP中我们使用的任何命令都是由若干个更“小”的命令集成的。
从这个意义上说,命令只是以用户能直接操作的形式(图标、菜单或命令窗口中输入的字符串)所表征的程序,其作用相当于启动程序运行的“按钮”。
通常将集成在软件系统内并能直接为用户使用程序称为命令;而将能完成一些特定的操作,并以文件方式存放的相关命令的集合称为程序。
5.2 程序的建立、编辑与运行5.2.1 程序的建立与编辑1. 以命令方式建立、编辑程序在命令窗口中建立及编辑程序的操作方法如下:命令格式:MODIFY COMMAND [路径]<程序文件名>功能:VFP启动内置的程序文本编辑器,建立一个空白程序或装入用户指定的程序。
2. 以菜单方式建立、编辑程序采用这种方式,建立与编辑程序是分开的,建立程序选择“新建”菜单命令,而编辑程序选择“打开”命令。
5.2.2 运行程序1. 用命令方式运行程序在命令窗口输入如下格式的命令,运行所指定的程序:命令格式:DO [路径]<程序文件名>功能:将指定的程序文件从磁盘调入内存并执行。
2. 用菜单/图标方式运行程序单击VFP系统窗口“程序”菜单的“运行”命令,在“运行”对话框中输入程序名即可。
5.3 程序中常用命令5.3.1 输入/输出语句1. 交互式输入语句语句1:W AIT [提示信息] [ TO <内存变量>]语句2:ACCEPT [提示信息] TO <内存变量>语句3:INPUT [提示信息] TO <内存变量>功能:程序执行上述语句时将等待用户从键盘输入数据,输入的数据存放在指定的<内存变量>中,程序然后才继续往下执行。
2. 格式输入/输出语句用户在与程序交换数据时,总希望这些数据是在合理的位置出现的(这也是编程者的希望),这在表格数据输入时尤其重要。
前面的输入/输出语句是不能指定输入/输出数据位置的,当需要在屏幕指定的位置输入/输出数据时,可使用格式输入/输出语句。
5.3.2 VFP程序中常用的命令和函数VFP程序中常用的命令和函数5.4 结构化程序设计5.4.1算法与流程图1. 算法通俗的说,算法即是解决某一实际问题的方法和步骤的数理逻辑描述。
2. 流程图流程图是一种用简单的几何图形和简短的文字说明组成的用以描述算法的一种工具。
常用的流程图有美国国家标准协会ANSI推出的标准ANSI流程图。
5.4.2 顺序结构程序设计顺序结构程序是按语句排列的顺序,从上到下依次执行各语句。
各语句间的逻辑关系由编写程序的人(比如只有先打开了数据表,才能执行查询命令)控制。
结构化程序从总体上讲是“顺序”的,因为这种程序总是从上到下运行的。
5.4.3 分支结构程序设计分支结构又称选择结构,它是一种在程序执行过程中,根据某些条件的是否满足来控制程序走向的结构。
分支程序结构一般分为单向分支、双向分支和多向分支结构。
5.4.4 循环结构程序设计分支结构语句解决了程序可根据不同情况执行不同操作的问题,但有时会遇到这样的情况,某项操作需要执行的次数将根据特定的条件而定,可能是0次,也可能几十上百次不等。
例如,对求任意正整数P的阶乘的程序,若只有顺序和分支结构语句是无法编写出来的。
因为相应的运算语句到底要执行多少次,只有当程序运行时,输入了具体的P后才能确定。
对于类似的情况,可使用循环结构来解决。
5.5 子程序、过程与过程调用5.5.1 子程序1. 子程序的概念子程序是解决上述问题的一种常用方法。
在程序设计中常把重复书写的一段程序抽出来,编写为一个独立的程序,这种具有相对独立性和通用性的程序(段)称为子程序。
2. 子程序的建立与调用子程序是以独立的程序文件形式存放在磁盘上,建立和编写子程序的方法与一般程序相同,但在子程序中要加上返回语句,以便子程序在执行到返回语句时能返回到调用它的主程序中。
主程序是通过调用语句调用子程序的,这两条语句的格式和说明如下。
返回语句格式:RETURN [<Exp>| TO <程序文件名>| TO MASTER]调用语句格式:DO <子程序文件名>功能:执行调用语句时,系统将指定的子程序调入内存并执行该子程序,程序转到子程序中;当执行到子程序中的返回语句时,程序返回主程序,执行其调用下的第一条可执行语句。
3. 程序的嵌套主程序调用子程序,子程序又调用另一个子程序(调用者此时又充当主程序的角色)……,如此形成嵌套的调用方式。
5.5.2 内存变量的作用域和参数传递1. 全局变量和局部变量全局变量是指能在各级程序均被承认的内存变量。
当程序运行结束后,全局变量仍然存在,其值为最后一次所处理的结果。
局部变量是只能在说明它的程序及被它调用的各级子程序(嵌套调用)中所承认的内存变量。
2. 参数的传递参数传递的原理是在主程序的调用语句中将需要传送的数据(实参)加以说明,而在子程序的加上接受数据的语句,该语句中的变量(形参)用来接受主程序中传送的数据。
需要特别注意的是:VFP规定,实参和形参的个数和数据类型必须一一对应。
5.5.3 过程文件过程与子程序的概念基本相同,所不同的是:过程既可以像子程序那样独立存放,也可以放在调用它的主程序后面作为程序的一部分。
另外还可以将多个过程写在一个文件中,其中的每个过程是相互独立的,这样便于文件管理。
5.6 数组应用5.6.1 数组与表文件之间交换数据1.记录数据→数组语句格式:SCA TTER [FIELD <当前数据表字段名表>] TO <数组名>功能:将当前数据表文件的当前记录各字段(或指定的字段)值存入数组。
2.数组数据→表文件语句格式:GA THER FROM <数组名> [FIELD <当前数据表字段名表>]功能:将数组的值传送给当前数据表文件的当前记录的各字段(或指定的字段)。
3.数据表→数据语句格式:COPY TO <数组名>功能:将当前数据表中的数据复制到数组中。
5.6.2 数组的应用数组的最大用处在与其下标可以是变量这点上,如此我们可以使用编程的手段控制数据的存储与获取。
5.7 程序的调试在程序的编写和运行中,常常会出现两种错误,语法错误和逻辑错误。
语法是指编写的语句出现错误,这种错误在编写程序和调试程序时一般容易发现和改正。
逻辑错误是指程序在运行过程中或运行的结果不正确的一类错误,这种错误的隐含性较高,有时很难发现。
在程序运行过程中发现错误,改正错误,……,一直到程序完全正确,这一过程称为程序调试。
5.7.1 常见的语法错误1.语句格式书写错误对于这类错误,系统往往提示“命令中含有不能识别的短语和关键字”。
2.表达式书写错误3.结构语句错误在分支和循环结构出现嵌套时,结构语句的开始和结束语句不配套。
4.相关语句错误如变量没有定义就应用;没有打开数据表就执行对表文件的操作命令等。
5.7.2 逻辑错误逻辑错误的种类几乎不可枚举,这些错误往往并不中断程序的运行,它们通常导致程序运行的结果出现错误或产生错误的运行。
逻辑错误的发现和修改都比较困难,需要积累编程和调试程序的经验,发现和修改这类错误常借助一些调试程序的手段和专用的程序。
5.7.3 调试程序对初学者而言,调试程序往往比编写程序还困难,其主要原因是对VFP语言不是很熟悉,对程序的理解不够,没有调试程序的经验等。
对于语法错误,VFP往往能发现,改正时要仔细查看该语句的说明,特别是一些选项的作用,另外要注意前后语句的相关性。
调试程序对VFP 命令的理解要比编写程序更深刻一些。
调试程序最常用的手段是设置断点和查看中间结果,这是诊断逻辑错误的有效方法。
设置断点的语句一般是W AIT语句,利用它等待按键输入的功能让程序停下来,并使用其<提示信息>选项输出要查看的变量值,分析程序已执行过的语句是否正确。
5.8 考点解析5.8.1 考点扫描根据全国计算机等级考试大纲的要求,涉及本章内容的知识点主要有:1、命令文件的建立与运行:(1)程序文件的建立。
(2)简单的交互式输入输出命令。
(3)应用程序的调试与执行。
2、结构化程序设计:(1)顺序结构程序设计。
(2)选择结构程序设计。
(3)循环结构程序设计。
3、过程与过程调用。
(1)子程序设计与调用。
(2)过程与过程文件。
(3)局部变量和全局变量、过程调用中的参数传递。
5.8.2 例题分析1.选择题例题1 建立一个程序文件的命令是。
A)MODIFY COMM <程序文件名> B)DO <程序文件名>C)EDIT <程序文件名> D)CREATE <程序文件名>【答案】A)【解析】VFP的程序文件是纯文本文件,只能使用纯文本文件编辑器(如Windows的记事本)编写。
MODIFY COMM 命令即启动VFP自带的一个纯文本编辑器。
程序文件的创建与编辑使用的是一个命令,区别只在于给定的<程序文件名>是否存在。
若不存在,则生成一空白的程序文件;若存在,则打开该程序文件。
使用本命令时,特别注意路径。
例题2 假设有一个程序文件WIN.PRG,执行该程序的命令是。
A)OPEN WIN.PRG B)DO WIN.PRGC)USE WIN.PRG D)CREATE WIN.PRG【答案】B)例题3 VFP输入语句中只能接收数值数据的语句是。
A)? B)W AITC)ACCEPT D)INPUT【答案】A)【解析】INPUT 默认的输入数据是数值,但它也能接收其他类型的数据。
不过使用程序的用户往往不会在输入一串字符时加上引号,所以在编写程序时一定要注意使用者的一般习惯。
例题4 VFP程序设计语句的三种基本结构是。