Visual FoxPro程序设计课程知识点 下载本文

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

所有记录。

从当前记录起的N个记录。

第N个记录。

②NEXT

③RECORD ④REST

从当前记录起到最后一个记录为止的所有记录。

(2)FOR子句

FOR子句用于把命令的操作限制于符合条件的记录。 (3)FIELDS子句

FIELDS子句能确定命令需要操作的字段。如命令中缺省该子句,则表示对表的所有字段执行操作。 4.VFP中最常见的文件扩展名以及相应的文件类型。

扩展名 .dbf 文件类型 数据表文件 扩展名 .fpt 文件类型 数据表备注文件 .dbc .idx .prg 第3章 数据与数据运算

数据库文件 单索引文件 程序文件 .qpr .cdx .scx 查询程序文件 复合索引文件 表单文件 1.常量:在命令或者程序中可以直接引用、其值固定不变的数据。

2.Visual FoxPro按照常量取值的数据类型将常量分为数值型、字符型、日期型、日期时间型、逻辑型和货币型等不同类型。不同类型的常量书写格式是不一样的。

(1)数值型:有整数、小数和科学计数法3种表示形式。例如3.1415926,9E4。

(2)字符型:表示方法是用半角的””、’’或[]3种符号之一作为定界符,其间所括起来的一串字符就是字符型常量。例如[长春大学旅游学院]。

(3)日期型:定界符是一对{}。日期型常量的格式有两种:

? 传统的日期格式:{mm/dd/yy},例如{05/10/14}表示2014年5月10日。 ? 严格的日期格式:{^yyyy-mm-dd},例如{^2014/08/30}。 (4)逻辑型:逻辑型常量只有“真”和“假”两个值。 ? 真:.T.,.t.,.Y.,.y.; ? 假:.F.,.f.,.N.,.n.。

(5)货币型:货币型常量以$符号开头。货币数据在存储和计算时,采用4位小数且没有科学计数法形式。例如$90。

3.变量:是指在命令操作和程序运行过程中数值可以发生变化的量。

(1)内存变量:必须起个名字(命名规则:以字母、汉字或下划线开头;其后由字母、数字、下划线组成;至多128个字符;不可与系统保留字同名。)在Visual FoxPro中,内存变量的类型不需要事先声明,它的类型是根据赋给它的值的类型决定的。例如num,_screen。

(2)字段变量:命名规则:字段名用来标识字段,可以字母或者汉字开头;其后可以由字母、汉字、数字和下划线组成;自由表长度不能超过10个字符,数据库表从长度不能128个字符。例如学号,姓名。

类型 字符型 数值型 货币型 日期型 日期时间型 逻辑型 备注型 代号 C N Y D T L M 说 明 存放从键盘输入的可显示或打印的汉字和字符 存放由正负号、数字和小数点所组成,且能参与数值运算的数据 与数值型不同的是数值保留4位小数 格式为mm/dd/yy,即月/日/年 存放日期与时间。 存放逻辑值T或F。T表示“真”;F表示“假” 能接受一切字符型数据,数据保存在与表的主名相同的备注文件中,其扩展名为.FPT。该文件随表的打开自动打开,丢失或损坏则表无法打开 用来存放图形、电子表格、声音等多媒体数据。数据也储存于扩展名为.FPT的备注文件中 字段宽度 1个字符占1个字节 最多20位 8个字节 8个字节 8个字节 1个字节 4个字节 通用型 注:

G 4个字节 (1) 内存变量中不能定义备注型和通用型。

(2) 备注型和通用型字段存储数据时容量不会受到字段宽度(4个字节)的影响。因为这两种类型的数据保

存在与表的主名相同,扩展名为.FPT的备注文件中。备注型字段与通用型字段的宽度一律为4个字节,

用于表示数据在.FPT文件中的存储地址。

4. 内存变量的赋值命令

命令格式1: <内存变量>=<表达式>

命令格式2: STORE <表达式> TO <内存变量名表>

功能:计算表达式的值,然后赋给内存变量。STORE命令可将同一值赋给多个内存变量。 举例: A=200 B=5+6 S=”VFP” STORE 2 TO x,y 5.表达式的输出命令

命令格式: ? | ?? [<表达式表>]

功能:依次计算表达式的值,并将其显示在屏幕上。

说明:?和??命令,默认都可在屏幕上显示数据。若使用?,则表示从光标所在行的下一行起始列开始显示;若使用??,则从光标所在当前行当前列开始显示。 举例: ? \?”A=”,a

6.运算符:在Visual FoxPro中,运算符有算术运算符、字符运算符、日期与日期时间运算符、关系运算符和逻辑运算符五种。

(1)算术运算符:优先级从高到低分别为:-(负号)?^或者**?*,/,%?+(加),-(减)。 (2)字符运算符:+和-,用于两个字符串的连接。 (3)日期与日期时间运算符:

日期型数据+数值(天数)=日期型数据,例如{^2016-3-21}+5得到结果03/26/16 日期时间型数据+数值(秒数)=日期时间型数据

日期型数据-数值(天数)=日期型数据,例如{^2016-3-21}-5得到结果03/16/16 日期时间型数据-数值(秒数)=日期时间型数据 日期型数据-日期型数据=数值型数据(天数), 例如{^2016-3-21}-{^2016-3-2}得到结果19

日期时间型数据-日期时间型数据=数值型数据(秒数)

(4)关系运算符:主要用于比较两个表达式的大小,所有的关系运算符级别相同。 ? 关系运算符的两操作数类型必须一致,比较的结果是逻辑型。 ? 数值型数据按数值大小进行比较; ? 日期型数据按年、月、日的先后顺序比较;

? 在默认设置下,字符型数据按相应位置上两个字符ASCII码值的大小进行比较; ? 逻辑型数据.T.大于.F.;

? 汉字在比较时默认按拼音比较。例如[男]>[女]得到结果.F. (5)逻辑运算符:运算对象和运算结果都是逻辑型。 逻辑运算符的优先级从高到低分别为:NOT?AND?OR。 7.函数有函数名、参数、函数值三个要素。