VF常用命令

VF常用命令

 

2007-09-16 19:42

!命令
功能:执行外部操作命令程序
语法:RUN[/N [K> MS-DOSCommand|ProgramName 或者 ![/N [K> MS-DOSCommand|ProgramName

$操作符
功能:如果一个字符型表达式包含在另一个字符型表达式中返回真值(.T.),否则返回假值(.F.)
语法:cSearchFor$cScarchIn(如果在cSearchIn中找到了cSearchFor则返回真)

%操作符
功能:返回一个数值型表达式除以另一个数值型表达式所得的余数。
语法:被除数%除数

&操作符
功能:执行宏替换
语法:& VarName(内存变量名或数组元素名)

?|??命令
功能:计算机表达式的值,并输出计算结果。

???命令
功能:把结果直接输出到打印机

A
ADD TABLE   命令
功能:在当前数据库中添加一个自由表
语法:ADD TABLE TableName

ALTER TABLE——SQL 命令
功能:以编程方式修改表的结构
语法:ALTER TABLE TableName1    (表名)
ADD|ALTER [COLUMN]FieleName1   (ADD为添加字段名,后为修改字段名。ADD改为DROP表示删除字段)
FieldType[(nFieldSidth[,nPrecision])]   (字段的类型、宽度和字段精度)
[NULL | NOT NULL]    (是否允许字段为空值)
[CHECK 1Expression1 [ERROR cMessageText1> (指定了字段的有效性规则)
[DEFAULT eExpression1]   (指定了字段默认值)
[PRIMARY KEY | UNIQUE]   (指定了创建主索引标识,索引标识与字段同名)
[REFERENCES TableName2 [TAG TagName1> (指定了与之建立永久关系的父表)

APPEND 命令
功能:在表的末尾添加一个或多个新记录
语法:APPEND [BLANK]   (添加一个空记录)
[IN nWorkArea | cTableAlias]   (指定要添加新记录的表所在的工作区|要添加新记录的表的别名)
[NOMENU]

APPEND FROM 命令
功能:从一个文件中读入记录,添加到当前表的尾部。
语法:APPEND FROM FileName|?   (指定表名)
[FIELDS FiledList]    (指定要添加哪些字段数据)
[FOR 1Expression]     (把条件为真的记录添加到表中)
(指定要导入的表的结构类型)
[AS nCodePage]

AVERAGE 命令
功能:计算数值表达式或字段的算术平均值。
语法:AVERAGE [ExpressionList]    (求平均值的表达式)
[Scope] [FOR 1Expression1] [WHILE 1Expression2]   (指定范围或条件)
[TO MemVarList | TO ARRAY ArrayName]   (计算结果保存的位置)
[NOOPTIMIZE]

B
BLANK 命令
功能:如果发出命令时不带任何参数,则清除当前记录中所有字段的数据。
语法:BLANK
[FIELDS FieldList]   (指定要清除的字段)
[Scope] [FOR 1Expression1] [WHILE 1Expression2]   (指定范围或条件)
[NOOPTIMIZE]

BROWSE 命令
功能:打开浏览窗口
语法:BROWSE
[FIELDS FieldList]   (字段列表)
[FONT cFontName[,nFontSize>   (字体名,字号)
[STYLE cFontStyle]             (字形,粗体斜体等)
[FOR 1Expression1 [REST>    (浏览条件)

C
CALCULATE 命令
功能:对表中的字段或包含字段的表达式进行财务和统计操作
语法:CALCULATE eExpressionList
[Scope] [FOR 1Expression1] [WHILE 1Expression2]   (指定范围或条件)
[TO MemVarList | TO ARRAY ArrayName]   (计算结果保存的位置)
[NOOPTIMIZE]
参数:eExpressionList指定表达式,表达式可包含下列函数的任意组合。AVG(nExpression),CNT(),MAX(nExpression),MIN(nExpression),NPV(nExpression1,nExpression2[,nExpression3]),STD(nExpression),SUM(nExpression),VAR(nExpression).(平均数、记数、最大、最小、利率、标准差、求和、方差)

CD | CHDIR
功能:将VFP的默认目录更改为指定的目录
语法:CD cPath

CHANGE 命令
功能:显示要编辑的字段。
语法:CHANGE
[FIELDS FieldList]   (字段列表)
[Scope] [FOR 1Expression1] [WHILE 1Expression2]   (指定范围或条件)
[FONT cFontName[,nFontSize>   (字体名,字号)
[STYLE cFontStyle]             (字形,粗体斜体等)

CLOSE 命令
功能:关闭各种类型的文件
语法:CLOSE

CONTINUE 命令
功能:继续执行先前的LOCATE命令(查找)

COPY FILE 命令
功能:复制任何类型的文件
语法:COPY FILE FileName1 TO FileName2 (1和2都要包含扩展名)

COPY STRUCTURE 命令
功能:用当前选择的表结构创建一个新的空自由表。
语法:COPY STRUCTURE TO FileName (新表名)
[FILEDS FiledList]        (字段列表)

COPY STRUCTURE EXTENDED 命令
功能:创建新表,它的字段包含当前选定表的结构信息
语法:COPY STRUCTURE EXTENDED TO FileName (新表名)
[DATABASE Database [NAME LongTableName>   (指定新表的数据库。为新表指定一个长名称)
[FILEDS FiledList]        (字段列表)

COPY TO 命令
功能:用当前选定表的内容创建新文件
语法:COPY TO FileName

COUNT 命令
功能:统计表中记录数目
语法:COUNT
[Scope] [FOR 1Expression1] [WHILE 1Expression2]   (指定范围或条件)
[TO MemVarName]

CREATE CURSOR——SQL 命令
功能:创建一个临时表

D
DO CASE…ENDCASE 命令
功能:根据不同的条件表达结果执行不同的命令
语法:DO CASE
CASE 1Expression1
commands
[CASE 1Expression2
commands

CASE 1ExpressionN
commands]
[OTHERWISE1
commands]
ENDCASE

DO FORM 命令
功能:运行用表单设计器创建的、编译过的表单或表单集

DO WHILE…ENDDO 命令
功能:在一个循环里执行一组命令
语法:DO WHILE 1Expression
Commands
[LOOP]
[EXIT]
ENDDO

DROP TABLE 命令
功能:将一个表从当前的数据库中和磁盘中删除。

E
EDIT 命令
功能:显示要编辑的字段

ERASE 命令
功能:从磁盘上删除文件

ERROR 命令
功能:生成一个VFP错误

EXIT 命令
功能:从DO WHILE、FOR或SCAN循环中退出

EXPORT 命令
功能:把VFP表中的数据复制到其他格式的文件中
语法:EXPORT TO FileName

F
FOR…ENDFOR 命令
功能:按指定的次数重复执行一组命令

FOR EAOH…ENDFOR 命令
功能:执行在VFP数组或集合中的每一组命令

FUNCTION 命令
功能:定义一个用户自定义函数

G
GO | GOTO 命令
功能:将记录指针移动到指定的记录上

H
HELP 命令
功能:打开帮助窗口

I
IF…ENDIF 命令
功能:根据逻辑表达式值,有选择地执行一组命令

IMPORT 命令
功能:从外部文件导入数据,创建一个VFP新表
语法:IMPORT FROM FileName

INSERT——SQL 命令
功能:在表尾追加一个包含指定字段值的记录
语法:INSERT INTO dbf_name[(fname1[,fname2,…])]
VALUES(eExpression1[,eExpression2,…])

L
LIST 命令
功能:连续显示表或环境信息
语法:LIST
[FIELDS FieldList]
[Scope] [FOR 1Expression1] [WHILE 1Expression2]   (指定范围或条件)
[OFF]
[NOCONSOLE]
[NOOPTIMIZE]
[TO PRINTER [PROMPT]|TO FILE FileName]

LOCAL 命令
功能:创建局部内存变量和内存变量数组。

LOCATE 命令
功能:按顺序搜索表从而找到满足指定逻辑表达式的第一个记录
语法:LOCATE FOR 1Expression

M
MD | MKDIR 命令
功能:在磁盘上创建一个新目录

MODIFY COMMAND 命令
功能:打开一个编辑窗口,从中可以修改或创建程序文件。

MODIFY QUERY 命令
功能:打开查询设计器,从中可以修改或创建一个查询
语法:MODIFY QUERY [FileName|?]
[IN SCREEN]
[NOWAIT]
[SAVE]

MODIFY SCREEN 命令
功能:打开表单设计器,从中可以修改或创建一个表单

MODIFY STRUCTURE 命令
功能:打开表设计器,从中可以修改表的结构

O
ON PAGE 命令
功能:指定当报表中打印输出到达一定行数,或发出EJECT PAGE时,将执行的命令

ON SHUTDOWN 命令
功能:指定当试图退出VFP时所要执行的命令
语法:ON SHUTDOWH [Command]

P
PACK 命令
功能:从当前表中永久删除带有删除标记的记录。

PACK DATABASE 命令
功能:从当前数据库中删除标有删除标记的记录。

PUBLIC 命令
功能:定义全局内存变量或数组

Q
QUIT 命令
功能:结束当前VFP工作期,并将控制权返回给操作系统。

R
RD | RMDIR 命令
功能:从磁盘上删除一个目录

READ 命令
功能:激活控制。

RECALL 命令
功能:恢复所选表带有删除标记的记录。

REMOVE 命令
功能:从当前数据库中移去一个表

RENAME 命令
功能:把文件名称更改为一个新名称

RENAME TABLE 命令
功能:重命名当前数据库中的表

REPLACE 命令
功能:更新表的记录内容
语法:REPLACE FieldsName1 WITH eExpression1,…
[Scope] [FOR 1Expression1] [WHILE 1Expression2]

REPLACE FROM 命令
功能:使用内存变量数组中的值更新字段内容

ROLLBACK 命令
功能:取消当前事务期间所做的任何修改

RUN 命令
功能:执行外部操作命令或程序(和!差不多)

S
SCAN…ENDSCAN 命令
功能:在当前选定的表中移动记录指针,并对每一个满足条件的记录执行一组命令。
语法:SCAN [NOOPTIMIZE]
[Scope] [FOR 1Expression1] [WHILE 1Expression2]
[Commands]
[LOOP]
[EXIT]
ENDSCAN

SELECT 命令
功能:激活指定工作区

SELECT——SQL 命令
功能:从一个或多个表中检索数据(查询)
语法:SELECT [ALL | DISTINCT][TOP nExpr [PERCENT>
[Alias.] Select_Item [AS Column_Name]
[,[Alias.] Select_Item [AS Column_Name]…]
FROM [FORCE][DatabaseName!]Table [Local_Alias]
DatabaseName!]Table [Local_Alias][ON JoinCondition…

[PREFERENCE PreferenceName]
[NOCONSOLE]
[PLAIN]
[NOWAIT]
[WHERE JoinCondition [AND JionCondition…]
[AND | OR FilterCondition [AND | OR FilterCondition…>]
[GROUP BY GroupColumn [,GroupColumn…>
[HAVING FilterCondition]
[UNION [ALL] SELECTCommand]
[ORDER BY Order_Item [ASC | DESC][,Order_Item [ASC | DESC]…>

参数:SELECT 指定显示查询结果的字段、常数和表达式。
DISTINCT 排除查询结果中所有重复的行,每个SELECT子句只能用一次这个命令。
TOP nExpr [PERCENT] 指定了查询结果中需要的行数或行数的百分比,用户可以在TOP参数中用ORDER BY子句,子句指定了查询结果的排列顺序。
如果设置了PERCENT关键字,则返回的行数为系统最大整数减1个。而且如果设置了REPCENT关键字,nExpr参数允许值为0.01到99.99。
Alias.限定匹配项的名称。Select_Item指定的每一项在查询结果中都生成一列。如果多个项具有相同的名称,则应在这些项名前加上表的别名和一个句点,以防止出现重复的列。
Select_Item指定包括在查询结果中的项。
AS Column_Name指定在查询结果中列的标题。
FROM FROM [FORCE][DatabaseName!Table [Local_Alias]子句,表示该命令将列出所有从中检索数据的表。
FORCE参数指定了在FROM参数中出现的表按一定的顺序强行连接起来。
当包含表的数据库不是当前数据库时,DatabaseName!指定这个数据库的名称。
Local_Alias为Table中的表指定一个临时名称。如果指定了本地别名,那么在整个SELECT语句中必须都用这个别名代替表名。本地别名不影响VFP环境。
INNER JOIN指定了查询结果只显示和其他表相匹配的行。
LEFT [OUTER] JOIN指定查询结果包含所有JOIN关键字左边的表相匹配的行,而只显示和JOIN关键字右边的表相匹配的行。

SET CENTURY 命令
功能:决定是否显示日期表达式中的世纪部分。
语法:SET CENTURY ON|OFF|TO [nCentury [ROLLOVER nYear>

SET DATABASE 命令
功能:指定当前数据库。

SET DATASESSION 命令
功能:激活指定的表单数据工作期。

SET DATE 命令
功能:指定日期表达式和日期表达式的显示格式
语法:SET DATE ANSI (ANSI为yy.mm.dd格式)

SET DECIMALS 命令
功能:指定数值表达式中的小数点位数。

SET DEFAULT 命令
功能:指定默认的驱动器、目录或文件夹。

SET EXCLUSIVE 命令
功能:指定VFP在网络上以独占方式还是共享方式打开表文件。

SET FDOW 命令
功能:指定一周中的第一天。
语法:SET FEOW TO [nExpression]   (星期日取值为1)

SET FIELDS 命令
功能:指定可以访问表中的哪些字段
语法:SET FIELDS ON|OFF|LOCAL|GLOBAL

SET FILTER TO 命令
功能:指定访问当前表中记录时必须满足的条件。

SET FWEEK TO [nExpression] 命令
功能:指定一年的第一周要满足的条件。(1:包含1月1日的那一周。2:第一周的大半以上在当前年中。3:第一个整周)

SET HEADINGS ON|OFF 命令
功能:指定用TYPE显示文件内容时,是否显示字段的列标头,并指定是否包含文件信息。

SET HELP ON|OFF 命令
功能:激活或废止VFP联机帮助或指定的帮助文件。

SET HURS TO [12|24] 命令
功能:将系统时间设置为12小时或24小时时间格式。

SET MARGIN TO nColumns 命令
功能:设置打印的左页边距,对所有定向到打印机的输出结果都起作用。

SET MARK TO 命令
功能:指定显示日期表达式时所使用的分隔符。

SET PATH TO [Path] 命令
功能:指定查找文件的路径。

SET SAFETY ON|OFF 命令
功能:决定改写已有文件之前是否显示对话框。

SET SECONDS ON|OFF 命令
功能:当显示日期时间值时,指定是否显示时间部分的秒。

SET TALK ON|OFF|WINDOW [WindowName]|NOWINDOW 命令
功能:决定VFP是否显示命令结果。(ON要。OFF不。WINDOW [WindowName]当按任意键时移去系统信息,[]中指定了接收对话结果的自定义窗口。NOWINDOW可以直接送到VFP主窗口)

SKIP 命令
功能:使记录指针在表中向前移动或向后移动。

SORT 命令
功能:对当前选定表进行排序,并将排过序的记录输出到新表中
语法:SERT TO TableName ON FieldName1 [/A|/D] [/C] [,FieldName2 [/A|/D] [/C]…]
[ASCENDING | DESCENDING]   (前参数指定将所有不带/D的字段指定为升序排列。后参数指定将所有不带/A的字段指定为降序排列)
[Scope] [FOR 1Expression1] [WHILE 1Expression2]   (指定范围或条件)
[FIELDS FieldNameList]   (指定字段)

SUM 命令
功能:对当前选定表的指定数值字段或全部数值字段进行求和。

T
TOTAL 命令
功能:计算当前选表中数值字段的总和。
语法:TOTAL TO TableName ON FieldName   (TableName指定存放计算结果的表的名称。FieldName指定总计时作为分组依据的字段,表必须以该字段排序)
[FIELDS FieldNameList]     (指定要总计的字段,列表中的字段名用逗号隔开)
[Scope] [FOR 1Expression1] [WHILE 1Expression2]   (指定范围或条件)

U
UPDATE——SQL 命令
功能:以新值更新表中的记录。
语法:UPDATE [DatabaseName1!]TableName1 SET Column_Name1=eExpression1 [,Column_Name2=eExpression2…] WHERE FilterCondition [AND|OR FilterCondition2…>

USE 命令
功能:打开一个表及其相关索引文件,或打开一个SQL视图。

Z
ZAP 命令
功能:从表中删除所有记录,只留下表的结构。

 

 

VF常用命令及其格式

2007-05-22 11:42

1、打开表命令: USE 表文件名 教材P67
2、关闭表命令:USE 、CLOSE ALL P68
3、记录指针定位命令:GO 数值表达式(绝对移动)、SKIP(相对移动) P69-70
4、替换(修改)记录命令:REPLACE 字段1 WITH 表达式1,字段2 WITH 表达式2…… [范围][FOR<条件>] P79
5、复制表命令: COPY TO 新文件名 [FOR〈条件〉][范围] P84
复制表结构命令:COPY STRU TO 新表文件名 [FIEL 〈字段名表〉] P85
6、建立索引命令:INDEX ON 关键字段 TO 单索引文件名
INDEX ON 关键字段 TAG 索引标识名 P89
7、查询命令:(1)条件查询:LOCATE FOR 〈条件〉 P93
继续查找命令:CONTINUE P93
(2)索引查询:FIND 字符表达式 P94
SEEK 表达式 P95
继续查找命令:SKIP P95
8、选择工作区命令: SELE 工作区号|别名 P105
9、建立表之间的关联命令:SET RELATION TO 关联表达式 INTO 别名 P108
10、表的更新命令: 参考我的课件第三章第五节关于表的更新部分
UPDATE ON 关键字段 FROM 别名 REPLACE 字段1 WITH 表达式1,字段2 WITH 表达式2 …… [RANDOM]
11、交互式输入命令:
(1)INPUT [提示信息] TO 内存变量 P139
(2)ACCEPT [提示信息] TO 内存变量 P139
13、输出命令: ?和?? P141
常用命令:
1、设置默认路径命令: SET DEFA TO 盘符:\路径
2、关闭表命令:CLOSE TABLE,CLEAR ALL
3、记录显示命令:LIST/DISP [范围][FOR 〈条件〉] P72
4、追加记录命令:(1)表尾追加:APPEND [BLANK] P80
(2)表中插入:INSERT [BEFORE] [BLANK] P81
P81 (3)从其他文件中追加多条记录到当前表:APPEND FROM 文件名 [FOR〈条件〉][FIEL <字段名表>]
5、删除记录命令:DELE [范围][FOR<条件>] P82
6、彻底删除带标记记录命令:PACK
7、取消删除标记命令:RECALL [范围][FOR<条件>] P83
8、物理删除表中所有记录命令:ZAP P84
9、复制任何类型文件:COPY FILE 〈文件名1〉TO 〈文件名2〉 P84
10、将单个记录发送到数组:SCATTER TO 〈数组名〉[FIEL〈字段名表〉] P85
11、将数组中的值发送到当前记录命令:GATHER FROM 数组名 P96
12、将表中多条记录传送到数组命令:COPY TO ARRAY 数组名 P86
13、将二维数组中的值传送到表中: APPEND FROM ARRAY 数组名 P87
14、表的排序命令:SORT ON 〈字段1〉/A|/D,字段2/A|/D to 新表文件名 P87
15、打开索引文件命令: SET INDEX TO 索引文件名表 P91
16、设置主控索引命令:SET ORDER TO 单索引文件名 |TAG 索引标识 P91
17、更新索引文件命令:REINDEX P92
18、关闭索引文件:SET INDEX TO 、CLOSE INDEX、CLOSE ALL、CLEAR ALL、USE P92
19、删除索引标识命令:DELE TAG 索引标识名 P92
删除单索引文件命令:DELE FILE 单索引文件名 P92
20、表的浏览命令:BROWSE P73
21、记录的过滤命令:SET FILTER TO 条件 P76
22、字段的过滤命令:SET FIELDSS TO 字段名表 P77
23、表之间的连接命令:JOIN WITH 别名 TO 新表文件名 FOR 条件 P107
24、设置一对多关系命令:SET SKIP TO 别名 P109
25、数据库相关命令:打开:OPEN DATA 数据库名 P111
新建:CREAT DATA 数据库名 P111
修改:MODI DATE 数据库名
关闭:CLOSE DATA、CLOSE DATA ALL、CLOSE ALL、CLEAR ALL
设置当前数据库命令:SET DATA TO 数据库名
26、程序相关命令:建立/修改程序:MODI COMMAND 程序文件名
运行程序:DO 程序文件名
27、内存变量/数组赋值命令:=、STORE P138或P38
28、交互式输入命令:@行,列 SAY 表达式 GET 变量 P139
29、文本输出命令:TEXT
〈输出显示内容〉
ENDTEXT P143
30、终止程序执行命令:CANCEL、QUIT、RETURN P143
31、清除主屏幕命令:CLEAR P143
32、系统设置命令:(1)设置精确比较命令:SET EXACT ON/OFF
(2)设置删除标记命令:SET DELE ON/OFF
—————————————————————————————————————————

增补:说明
命令结构
FoxPro的命令结构一般由命令动词、语句体和注释几部分构成。
如:LIST [范围] [[FIELDS 字段名列表] [FOR 条件][WHILE 条件] [OFF] [TO PRINT]
常用子句
范围:表示记录的执行范围,可以是下面几项其中之一:
ALL 表示全部记录;
NEXT n 表示从当前记录开始的以下n条记录;
RECORD n 表示第n号记录;
REST 表示从当前记录到最后一条记录。
FIELDS 字段名表:用于指定操作的字段,多个字段时用逗号分隔。
FOR条件:对满足条件的记录进行操作。
WHILE 条件:当遇到第一个不满足条件的记录时,停止命令执行。

以下命令中,大写的英文词为关键词,必须原样照写。
“常用子句”指以下几个可选子句:
[范围] [FIELDS 字段名表] [FOR 条件] [WHILE 条件]
命令中的“列表”,指用“,”分隔的各项。如“字段名列表”就是将各个字段名用逗号分隔。
部分英文词的意义:Databasename 数据名 tablename 数据表名 filename 文件名   Viewname 视图名 arrayname 数组名

提示:加下划线的为本课程要求掌握的命令。

一、数据库的建立、打开、关闭和删除
建立数据库: CREATE DATABASE [databasename|?]
从磁盘中删除数据库:    DELETE   DATABASE   databasename|?
打开数据库: OPEN DATABASE [EXCLUSIVE|SHARED][NOUPDATE]
打开数据库设计器(允许用户按交互方式编辑当前数据库): MODIFY DATABASE   [databasename|?]
指定的数据库databasename为当前数据库。
指定当前的数据库: SET DATABASE TO [databasename] Databasename必须为已经打开的数据库。如果省略数据库名称databasename,则不指定当前数据库(没有当前数据库)。
关闭数据库: CLOSE DATABASE [ALL] 关闭当前数据库,如果带ALL子句,则关闭所有打开的数据库。

二、数据表和视图的建立、打开、关闭和删除
建立数据表(SQL命令): CREATE TABLE | DBF tablename (Col_name1 Type1 [NOT NULL/NULL] [{,Col_name2 Type2 [NOT NULL/NULL]}…])
table_name是所创建的数据表的名字。Col_name1,Col_name2,…是表中列的名。Type1, Type2…是相应列的数据类型(VFP的数据类型见表3-9)。如果说明为NOT NULL,则列中不允许分配空值(这种情况下,列不能包含空值,如果插入空值,将返回错误信息)。
向当前打开的数据库中添加数据表: ADD TABLE tablename|?
从当前打开的数据库中删除数据表:REMOVE TABLE tablename|? [DELETE]   如果包含DELETE子句,将从磁盘中删除这个表文件,否则,只从数据库中删除,但文件仍保存在磁盘中。
在当前打开的数据库中建立视图:CREATE SQL VIEW viewname AS SELECT ……   其中SELECT ……为SELECT语句。执行这个语句时,如果没有打开的数据库,则建立独立的视图,这样的视图不能存储。
从当前打开的数据库中删除视图:DELETE VIEW viewname
打开一个表: USE tablename|? [IN 工作区号]
将当前数据表与另一数据表连接后建立一个新表:JOIN WITH 工作区号|表别名 TO tablename FOR 条件 [FIELDS 字段名表]

三、数据表和表结构的编辑、修改
打开浏览窗口(可在其中编辑数据表):BROWSW(详细格式见P. 114~116)
打开并修改数据表中的字段: (1) CHANGE [FIELDS 字段名列表]     (2) EDIT [FIELDS 字段名列表]
这两个命令的功能相似,可选子句较多(详见手册)。
数据表改名: RENAME TABLE tablename1 TO tablename2   其中数据表tablename1必须存在且未打开。
视图改名:RENAME VIEW viewname1 TO viewname2   其中数据表tablename1必须存在且未打开。
修改数据表结构(SQL命令):
ALTER TABLE tablename ;
ADD 字段名 Type [NULL | NOT NULL] [,字段名 Type [NULL | NOT NULL] [ALTER COLUMN字段名Type {NULL | NOT NULL}] [{,字段名Type NULL | NOT NULL}…] [DROP字段名[,字段名[, …]]
将当前表与另一表之间建立关联: SET RELATION TO [表达式1 INTO 工作区号1 | 表别名1] [, 表达式2 INTO 工作区号2 | 表别名2] [, …]   建立关联的两个表必须事先已按关联表达式进行索引排序。
在当前表与另一表之间建立一对多关联: SET SKIP TO表别名1[, 表别名2]
消除当前表与另一表之间的关联:SET RELATION OFF INTO 工作区号 | 表别名

四、数据表中数据操作(查询、插入、删除和修改等)
数据查询SELECT语句(SQL命令)格式见教材的有关章节。这是本课程的重点内容,必须很好地掌握。
更改数据表中的记录:REPLACE 字段1   WITH   表达式1[ADDITIVE] [,<   [,<字段2> WITH <表达式2>[ADDITIVE],… [FOR 条件1][WHILE条件2]   其中的ADDITIVE子句适用于备注字段,表示将表达式的值加在字段的末尾。
用内存数组的值更新数据表中的记录:REPLACE FROM ARRAY数组名 [FIELDS 字段名列表][常用子句]
用新的值更新表中的记录(SQL命令):
UPDATE [databasename!]tablename;
SET Column_1=Expression1 [{Column_2=expression2}…] [WHERE Condition]
用一个表中的数据更新当前指定工作区中打开的表:
UPDATE ON fieldname FROM filename;
REPLACE fieldname1 WITH expr1
[, fieldname2 WITH expr2 [, …]]
给记录加删除标记(SQL命令):DELETE   FROM   [databasename!]tablename [WHERE条件]
给记录加删除标记:DELETE [范围] [FOR 条件] [WHILE 条件] [IN 工作区号|表别名]
永久删除加了删除标记的记录: PACK
永久删除打开的数据库中加了删除标记的记录: PACK   DATABASE
去掉删除标记(恢复) RECALL [常用子句]
删除一个表中所有记录(保留表的结构):ZAP   [IN tablename|alias]
为数据表文件追加记录: APPEND [BLANK][IN 工作区号|别名]
从另一个文件中提取数据添加到当前数据表的尾部: APPEND FROM filename|? [FIELDS 字段名列表][ FOR 条件]    其中filename所指定的文件可以是数据表、EXCEL电子表格、文本文件等,如果不是数据表,需要其它子句指定格式(详见手册)。
用内存数组的值添加到当前数据表的尾部: APPEND FROM ARRAY arrayname [ FOR 条件][FIELDS字段名列表] 数据中的一行对应一个新记录,一列对应一个字段。
从一个文件输入一个OLE对象放入一个通用(general)字段: APPEND GENERAL 通用字段名 [FROM filename] 如果省略子句FROM filename,则将指定的字段清空。
将一个文本文件的内容拷贝到一个备注字段:APPEND MEMO 备注字段名 [FROM filename] [OVERWRITE] 如果省略子句FROM filename,则将指定的字段清空。
插入新记录(在当前记录之前或后插入):INSERT [BLANK] [BEFORE] 如不省略BLANK,则插入一个空白记录,且不显示输入窗口。
在表中插入新记录并赋值(SQL命令):INSERT INTO tablename [(字段1 [, 字段2, …])]valueS (eExpression1 [, eExpression2, …])或INSERT INTO tablename FROM ARRAY ArrayName | FROM MEMVAR如带有FROM MEMVAR子句,则用同名的内存变量给字段赋值。
清除当前记录中字段的数据:BLANK [常用子句]
移动记录指针:SKIP [n] [IN 工作区号|表别名]

五、文件管理(文件和文件夹的复制、创建和删除)
从当前表复制出表或其它类型的文件(表须打开)COPY   TO   filename [FIELDS 字段名列表] [常用子句] [其它子句]   如果没有指定类型,则复制一个与当前的表相同的数据表。
复制表的结构COPY STRUCTURE TO filename [FIELDS字段名列表]
复制任何文件:COPY FILE 源文件 TO 目的文件, 如果用此命令复制表,表须关闭
从磁盘上删除任意文件:(1)ERASE filename|? (2)DELETE FILE [filename|?]
任意文件改名(或文件移动到另一文件夹):RENAME filename1 TO filename2    其中filename1和filename2都可以包含路径。如二者不在同一文件夹,则将filename1移动到filename2所在的文件夹。
显示一个文件夹中的文件信息:DIR | DIRECTORY   [ON drive]
从磁盘上删除一个文件夹:RD | REDIR 文件夹名
在磁盘上建立一个文件夹:MD | MKDIR文件夹名

六、数据的复制与传送
单个记录与数组间的数据传送
当前记录 → 数组或内存变量:SCATTER [FIELDS字段名列表][MEMO]TO 数组名[BLANK] | MEMVAR [BLANK]   其中[BLANK]表示建立一个空元素的数组。如果用MEMVAR子句,则表示将各字段的值复制到同名同类型的内存变量。如果包含MEMO子句,则备注字段一起复制。
数组或内存变量 → 当前记录 GATHER FROM   数组名 | MEMVAR [FILEDS字段名列表] [MEMO]
用同名的内存变量或数组中的第一行置换当前记录,如果数组为多行的二维数组,也只用第一行。
成批记录与数组间的数据传送
表 → 数组: COPY TO ARRAY arrayname [常用子句]
数组 → 表: (1) APPEND FROM ARRAY arrayname [ FOR 条件][FIELDS字段名列表]用内存数组的值加在数据表的尾部,数据中的一行对应一个新记录,一列对应一个字段。 (2) REPLACE FROM ARRAY数组名 [常用子句] 用内存数组的值更新数据表中符合条件的记录。
查询结果 → 数组:SELECT …… INTO ARRAY arrayname   将SQL SELECT语句的查询结果传给数组arrayname。这里“SELECT ……”可为各种形式的SELECT查询语句。
给内存变量赋值:STORE 表达式 TO 变量名   或   变量名=表达式

七、排序与索引
将当前表排序后建立一个新数据表:SORT TO   文件名   ON   字段名1   [/A | /D] [/C] [   字段名2   [/A | /D] [/C] …] [ASCENDING | DESCENDING] [常用子句];
建立单索引文件:INDEX   ON   表达式   TO   单索引文件名 [FOR<条件>]   [UNIQUE] [COMPACT] [ASCENDING][DESCENDING][ADDITIVE]
建立复合索引文件:INDEX    ON   表达式 TO   TAG   索引名 [OF 复合索引文件名] [FOR 条件] [UNIQUE|CANDIDATE] [ASCENDING][DESCENDING][ADDITIVE]
使用索引文件:打开表时将索引文件一并打开,USE命令带INDEX子句: USE tablename|? [IN 工作区号][INDEX 索引文件名列表|?]
给当前表打开一个或多个索引文件:SET INDEX TO[索引文件名列表|?][ORDER 索引文件名序号|索引文件名|[TAG]索引名 [OF 复合索引文件名] [ASCENDING][DESCENDING]]
指定字符字段在排序或索引时的整理系列:SET COLLATE TO 整理系列,   对于汉字字符串,“整理系列”可以是“Machine”、“PinYin”或“Stroke”三者之一(必须带引号),分别表示按机器码、拼音和笔划排序。
指定当前表中的控制索引文件或标记:SET ORDER TO [索引文件名序号|索引文件名|[TAG]索引名 [OF 复合索引文件名] [IN 工作区号|表别名][ASCENDING][DESCENDING]
删除索引   DELETE    TAG   ALL [OF 复合索引文件名]
DELETE    TAG   索引标识1 [OF 复合索引文件名1][,索引标识2 [OF 复合索引文件名2]]…

八、查找和定位
顺序查找当前表中满足条件的第一条记录:LOCATE FOR 条件下[范围][WHILE条件]  找到后将记录指针定位在满足条件的第一条记录,且函数FOUND()的返回值为真。
在索引表中查找:FIND cExpr 其中cExpr为字符串表达式。如果找到,则记录指针定位在满足条件的第一条记录,且函数FOUND()的返回值为真;查找失败时,FOUND()的返回值为假,记录指针定位在文件尾。
在索引表中查找:SEEK eExpr [ORDER 索引文件名序号|索引文件名|[TAG]索引名 [OF复合索引文件名] [ASCENDING][DESCENDING]][IN 工作区号|表别名]   如果找到,则记录指针定位在满足条件的第一条记录,且为真;查找失败时,FOUND()的返回值为假,记录指针定位在文件尾。
继续查找:CONTINUE用LOCATE、 FIND或 SEEK查找到一条记录后,用CONTINUE继续查找下一条。
用以上查找命令LOCATE、 FIND、SEEK和CONTINUE的查找结果,都可以通过函数FOUND()的返回值反映出来。

九、统计计算
统计表中的记录数:COUNT [范围] [FOR 条件] [WHILE 条件][TO内存变量名]   统计满足条件的记录数,显示记录数或将结果赋给内存变量名。
求和:SUM   [表达式列表] [范围] [FOR 条件] [WHILE 条件][TO内存变量名|TO ARRAY 数组名]
求平均值:AVERAGE [表达式列表] [范围] [FOR 条件] [WHILE 条件][TO内存变量名|TO ARRAY 数组名]
对当前表中数值型字段进行分组求和:TOTAL TO tablename ON 字段名[常用子句]  其中tablename为存放结果的表文件名,字段名为确定求和分组的字段。
计算:CALCULATE 表达式列表 [范围] [FOR 条件] [WHILE 条件][TO内存变量名|TO ARRAY 数组名]
其中表达式列表可以是如下函数的任意组合: AVG(nExpr), CNT(), MAX(eExpr), MIN(eExpr), NPV(nExpr1, nExpr2,…),STD(nExpr),SUM(nExpr),VAR(nExpr)其中nExpr为数值表达式,eExpr为任意表达式。

十、程序控制
条件语句:
IF 条件 [THEN]
……
[ELSE]
[……]
ENDIF

多分支语句:
DO CASE
CASE 逻辑表达式1
……
CASE 逻辑表达式2
……
CASE 逻辑表达式n
……
[OTHERWISE]
……
ENDCASE

DO循环:
DO WHILE 条件
[LOOP]
……
[EXIT]
……
ENDDO

FOR循环
FOR 循环变量=初值 TO 终值 STEP 步长
……(中间可插入[LOOP]或[EXIT])
ENDFOR | NEXT

扫描循环(对一个表中满足条件的记录进行循环):
SCAN [范围] [FOR 条件] [WHILE 条件]
……(中间可插入[LOOP]或[EXIT])
ENDSCAN

集合扫描循环
FOR EACH Var IN Group
Commands
[EXIT]
[LOOP]
ENDFOR | NEXT [Var]

十一、其它
定义数组:DECLARE | DIMENSION 数组名(下标1,下标2,……)
定义过程:
PROCEDURE 过程名
PARAMETERS 参数表
……
RETURN [TO MASTER | TO 程序名]

定义函数:
FUNCTION 函数名
PARAMETERS 参数表
……
RETURN 表达式

调用一个子程序或过程   DO 子程序名 | 过程名 [IN 程序文件名][WITH 实在参数表]
定义公共变量:PUBLIC 变量名列表    PUBLIC [ARRAY] 数组名1(行1,列1)[, 数组名2(行2,列2) [,…]]
定义私有变量PRIVATE变量名列表    PRIVATE ALL[LIKE | EXCEPT 通配符]
定义局部变量 LOCAL 变量名列表    LOCAL   [ARRAY] 数组名1(行1,列1)[, 数组名2(行2,列2) [,…]]
显示各种信息: LIST … (格式见有关手册) DISPLAY … (格式见有关手册)
输出提示信息:
WAIT [<提示信息>] [TO <内存变量>];
[WINDOW[AT[<行>,< 列>] [NOWAIT]];
[CLEAR|NOCLEAR];
[TIMEOUT<数值表达式>]
各种设置命令:设置是否显示日期中的世纪:SET CENTURY ON | OFF
设置显示的小数位数:SET DECIMALS TO 小数位数
设置是否处理带删除标记的记录:SET DELETED ON | OFF 如果设置为ON,则不处理带删除标记的记录。
设置是否显示命令的结果:SET TALK ON | OFF
设置文件的搜索路径:SET PATH TO 路径
设置传给子程序或自定义函数的参数是按值还是按引用方式传递:SET UDFPARMS TO value | REFERENCE    如设置为TO value,表示按值传递。
执行一个外部命令或程序:RUN 命令或程序
在指定的位置显示或打印:@行,列 SAY   …
在指定的位置显示表达式的值,并等待用户输入,将输入值赋给一变量:@行,列SAY   表达式 GET 变量名 [DEFAULT 表达式]READ

例:
@2,2 say “请输入金额: ” get nMoney default 50
Read
此例先在第2行、第2列显示”请输入金额: “,等待用户输入一个数值,将用户输入值赋给变量nMoney,如果用户不输入数值(直接按回车),则将50赋给nMoney。请注意在下一行不能漏掉“Read”。

 

 

 

 

 

 

 

VF常用命令和程序命令

2007-08-04 21:20

VF常用命令和程序命令一、主要命令:
1、CREATE
作用:建立一个新的表。
格式:CREATE [<文件>|?](注意,命令字符可取前面四个字符,后面可省略不写,即CREA

,下同;中括号表示其中的参数是可选的;|管道符号表示两个参数只能选择一个,不能同

时选择,下同。)
说明:文件指建立以.dbf为扩展名的VFP数据库文件,在命令后面加上一个问号表示系统会

弹出
对话框,要求用户输入想要建立的表名。在命令中不加文件名或问号系统也会弹出对话框,

要求用
户输入想要建立的表名。
2、MODIFY STRUCTURE
作用:显示表文件结构,并允许修改此表的结构。
格式:MODIFY STRUCTURE
说明:只有在用USE命令打开表文件以后,才能显示或修改表文件的结构。
3、APPEND
作用:在当前表的尾部(无论表中有无记录)追加记录(在当前表指当前正使用的表)。
格式:APPEND [BLANK]
说明:在APPEND命令后面加上BLANK参数表示在当前表的尾部添加一条空白记录。无BLANK参

数时,表示在当前表的尾部添加一条记录并要求用户输入相应的字段内容。
4、INSERT
作用:在表文件中间插入一个新记录。
格式:INSERT [BEFORE] [BLANK]
说明:INSERT 在当前记录后插入一记录;
INSERT BEFORE 在当前记录前插入一记录;
INSERT BEFORE BLANK 在当前记录前插入一空记录。
5、BROWSE
作用:主要用于打开浏览窗口,查阅表文件并同时进行修改。
格式:BROWSE
6、USE
作用:打开和关闭表文件。
格式:USE [<文件名>]
USE
说明:前一个命令用来打开<文件名>指定的表文件,该表如有备注型字段,则同时打开相应


备注文件(.fpt文件);后一个命令关闭当前打开的表文件。
7、LIST和DISPLAY
作用:显示表(.dbf)的内容、结构或状态。
格式:LIST|DISPLAY [OFF] [<范围>] [FIELDS] <表达式表> [WHILE <条件>] [FOR <条件

>]
[TO PRINT|TO FILE <文件>]
LIST|DISPLAY STRUCTURE TO PRINT|TO FILE <文件>]
LIST|DISPLAY STATUS [TO PRINT|TO FILE <文件>]
说明:命令带OFF参数表示不显示记录号,范围指定对哪些记录进行操作,范围包括:

RECORD n
第几号记录、NEXT n 当前记录开始的几个记录、REST 自当前记录开始至文件末尾的所有记

录、ALL
所有的记录。不选范围则隐含范围为ALL;FIELDS后跟字段名,字段名与字段名之间用逗号


隔。WHILE后跟条件,FOR后面也跟条件,区别是,WHILE后的条件如果满足,便停止查找;

FOR后的
条件查找所有满足条件的记录。TO PRINT和TO FILE <文件>分别表示将显示结果在打印机上

打印出
来和将显示结果输出到文件。DISPLAY命令在显示记录满屏后,要求用户按任意键继续显示

,并且在
该命令中,如果省略范围仅显示当前记录。格式中,下面两个命令分别为显示表结构(

STRUCTURE)和工作状态(STATUS)。
8、记录的定位
作用:用记录指针(POINTER)定位记录。
格式:GO[TO] RECORD n|TOP|BOTTOM
n
SKIP [+|-]
说明:第一个命令又叫绝对定位,其中,RECORD n定位到n号记录,TOP定位到第1个记录,
BOTTOM定位到最后一个记录。第二个命令定位到第n个记录,n是一个数值。第三个命令又叫

相对定
位,它以当前记录为基准前移(-)或后移(+)n个记录,不选任选项,则默认记录指针后

移一个记录。
9、CHANGE和EDIT
作用:显示要编辑或修改的字段。
格式:CHANGE|EDIT [<范围>] [FIELDS <字段名表>] [WHILE <条件>] [FOR <条件>]
10、BROWSE
作用:打开一个”浏览”窗口,供用户浏览或修改记录。
格式:BROWSE [FIELDS <字段名表>]
11、REPLACE
作用:用表达式的值代替命令中与之相对应的字段的内容。
格式:REPLACE [<范围>] <字段1> WITH <表达式1>[,<字段2> WITH <表达式2>] [FOR <条

件>
] [WHILE<条件>]
12、DELETE、PACK、ZAP和RECALL
作用:分别是给要删除的记录作删除标记、彻底删除、删除所有记录和取消被选中的表记录


删除标志。
格式:DELETE [<范围>] [WHILE<条件>] [FOR <条件>] (特例:DELETE FILE

FILENAME.DBF,
该命令删除指定的表文件)
PACK
ZAP
RECALL [<范围>] [FOR <条件>] [WHILE<条件>]
13、SORT和INDEX
作用:分别是建立一个其记录以新的物理顺序排列的新表文件和对当前表根据关键字表达式

的值
从小到大排列,并存入TO后指定的索引文件名的文件或复合索引文件的一个标识中。
格式:SORT TO <文件名> ON <字段名1> [/A] [/C] [/D][,<字段名2> [/A] [/C]

[/D]]…
[ASCENDING|DESCENDING] [<范围>] [FOR <条件>] [WHILE<条件>] [FIELDS<字段表>]
INDEX ON <关键字表达式> TO <文件名>
INDEX ON <关键字表达式> TAG <标识名> [OF <文件名>] [FOR <条件>]
说明:第1个命令中,/A按字段名升序排序,/D按字段名降序排序,/C忽略大小写,针对字

符型
关键字而言,ASCENDING和DESCENDING分别表示升序和降序。第1个命令建立.dbf表文件,第

2个命令
建立.idx单一索引文件,第3个命令建立.cdx复合索引文件(Compound Index)。
14、USE <表文件名> INDEX <索引文件名表>、SET INDEX TO和SET ORDER TO
作用:分别是打开表文件的同时打开索引文件、打开索引文件和改变主索引。
格式:USE <表文件名> INDEX <索引文件名表>
SET INDEX TO [<索引文件名表>]
SET ORDER TO [<索引文件名>](特例:重新索引命令:REINDEX)
15、FIND、SEEK和LOCATE及CONTINUE
作用:前两个命令FIND和SEEK是在一个已经建立了索引文件的表中,定位到关键字中的内容

与命
令行中字符串相同的第一个记录。后一个命令在用USE打开表文件以后,直接查询表中字段

内容。
格式:FIND <“字符串”>|<字符串>
SEEK <表达式>
LOCATE [<范围>] [FOR <条件>] [WHILE<条件>]
CONTINUE
说明:FIND命令与SEEK命令的区别是前者后跟字符串,而后者后跟表达式。在用LOCATE命令

找到
一个匹配记录后,可用CONTINUE命令搜索表的剩余部分来寻找其他匹配的记录。
16、COUNT
作用:统计当前表文件中符合条件的记录数。
格式:COUNT [<范围>] [FOR <条件>] [WHILE<条件>] [TO <内存变量名>]
说明:内存变量名可用除参数外的任意字符。
17、SUM
作用:对当前表中选中记录的全部或指定的数值字段或由指定字段组成的数值表达式累加求

和。
格式:SUM [<范围>] [数值<表达式>] [TO <内存变量名表>] [FOR <条件>] [WHILE<条件>]
18、AVERAGE
作用:对当前表中选中记录的全部或部分数值型字段及其组成的表达式求平均值并显示。
格式:AVERAGE [<范围>] [数值<表达式>] [TO <内存变量名表>] [FOR <条件>] [WHILE<条

件>]

二、常用函数
1、数学函数
函数 用途
ABS(<数值表达式>) 绝对值,|x|
CEILING(<数值表达式>) >=自变量的最小整数
EXP(<数值表达式>) 对基E的幂,e=2.71828
FLOOR(<数值表达式>) <=自变量的最大整数
INT(<数值表达式>) 取整(舍尾)自变量
LOG(<数值表达式>) 自变量的自然对数,ln x
LOG10(<数值表达式>) 自变量的普通对数,lg x
MAX(<表达式1>,<表达式2>) 两个值的最大值
MIN(<表达式1>,<表达式2>) 两个值的最小值
MOD(<数值表达式1>,<数值表达式2>) 求余数
RAND([<数值表达式1>]) 返回伪随机数
ROUND(<数值表达式1>,<数值表达式2>) 四舍五入第一个自变量
SIGN(<数值表达式>) 自变量的符号
SQRT(<数值表达式>) 平方根(正根)
2、字符串操作函数
函数 用途
&<内存变量> 用于代替内存变量内容
LEN(<字符串表达式>) 返回字符串表达式的字符个数
SPACE(<数值表达式>) 生成空格
SUBSTR(<字符串表达式>,<数值表达式n>[,<数值表达式L>]) 求子字符串,从指定的字

符串表达式第n个开始,总长为L的字符串
LOWER(<字符串表达式>) 将字符串字母转换成小写字母
UPPER(<字符串表达式>) 将字符串字母转换成大写字母
TRIM(<字符串表达式>) 删除字符串尾空格
ASC(<字符串表达式>) 返回字符串表达式最左边的第一个字符的ASCII码
CHR(<数值表达式>) 将数值表达式转换成字符
AT(<字符串表达式1>,<字符串表达式2>[,<数值表达式n>]) 确定字符串表达式1在字符

串表达式2中的位置,n为字符串表达式第几次出现
STR(<数值表达式>[,<数值表达式L>][,<数值表达式n>) 将数值转换为字符串,L为数值

表达式总长,n为小数位数
VAL(<字符串表达式>) 将数字字符串转换为数字
TYPE(<表达式>) 检测表达式值的数据类型
LTRIM(<字符串表达式>) 删除字符串左部空格
RTRIM(<字符串表达式>) 删除字符串右部空格
LEFT(<字符串表达式>,<数值表达式n>) 取字符串左边部分字符,n为返回的字符个数
RIGHT(<字符串表达式>,<数值表达式n>) 取字符串右边部分字符,n从右边截取字符个数
3、表(.dbf)操作函数
函数 用途
BOF([<工作区号或别名>]) 查表文件开始函数
EOF([<工作区号或别名>]) 表文件结尾测试函数
RECNO([<工作区号或别名>])测试当前或指定工作区表的当前记录号
DELETED([<工作区号或别名>])记录删除测试函数
FILE(<“字符串”>)测试文件是否存在函数
DBF([<工作区号或别名>]) 检测表的文件名函数
4、日期、时间函数
函数 用途
DATE() 查系统当前日期函数
TIME([<数值表达式>]) 查系统当前时间函数
YEAR(<日期型表达式>|<日期时间型表达式>) 由日期查年函数
MONTH(<日期型表达式>|<日期时间型表达式>) 从日期查月份函数
CMONTH(<日期型表达式>|<日期时间型表达式>) 由日期查月份名函数
DAY(<日期型表达式>|<日期时间型表达式>) 从日期查当月的日函数
DOW(<日期型表达式>|<日期时间型表达式>[,<数值表达式>])由日期查星期函数
CDOW(<日期型表达式>|<日期时间型表达式>) 从日期查星期名函数
DTOC(<日期型表达式>|<日期时间型表达式>) 日期转换为字符函数
CTOD(<字符串表达式>) 字符串转换为日期函数
CTOT(<字符串表达式>) 返回日期时间值函数
TTOC(<日期时间型表达式>) 返回字符值
5、显示、打印位置函数
函数 用途
ROW() 判断光标行位置函数
COL() 判断光标列位置函数
INKEY([<数值表达式>]) 检测用户所击键对应的ASCII码函数,数值表达式以秒为单位等

待击键的时间
6、其他函数
函数 用途
DISKSPACE() 返回默认磁盘驱动器中可用字节数函数
OS() 检测操作系统名称的函数
VERSION() 返回VFP版本号的函数

三、主要程序语句
1、条件判断语句
格式:(1)IF <条件>
<命令语句组>
ENDIF
说明:如果条件为真,则执行命令语句组中的各语句,否则跳过这些命令语句不执行,
而执行ENDIF后的语句。
(2)IF <条件>
<命令语句组1>
ELSE
<命令语句组2>
ENDIF
说明:如果条件为真,执行命令语句组1,否则执行命令语句组2。
(3)IF <条件1>
IF <条件2>
<命令语句组1>
ELSE
<命令语句组2>
ENDIF

ELSE
<命令语句组N>
ENDIF
说明:进行多重条件的嵌套选择。
(4)DO CASE
CASE <条件1>
<命令语句组1>
CASE <条件2>
<命令语句组2>
CASE <条件3>
<命令语句组3>


CASE <条件N>
<命令语句组N>
[OTHERWISE]
[<命令语句组N+1>]
ENDCASE
说明:依次判断条件,转入条件为真的命令语句组中执行。当所有条件都不成立时,若有
OTHERWISE项,则执行命令语句组N+1,否则执行ENDCASE后面的语句。
2、循环语句
格式:(1)DO WHILE <条件>
<命令语句组>
[LOOP]
<命令语句组>
[EXIT]
<命令语句组>
ENDDO
说明:判断条件是否为真,如为真就重复执行循环体中的命令语句组,直到条件为假,结束


环。
(2)SCAN
<命令语句组>
ENDSCAN
说明:在一个表中建立一个执行命令语句组的循环,并执行对每一条记录的操作,直到表文


记录完为止。

VFP常用函数使用说明

1、数值运算函数
函数 操作 例 结果
SQRT(x) 求平方根 SQRT(9) 3
INT(x) 取整数 INT(3.14) 3
ROUND(x) 四舍五入 ROUND(3.14159,4) 3.1416
MOD(x,y) 求X除以Y的余数 MOD(25,4) 1
MAX(x,y) 求X,Y中的最大值 MAX(7,8) 8
MIN(x,y) 求X,Y中的最小值 MIN(1,2,3) 1

2、字符中操作函数
函数名 操作 例 结果
UPPER(S) 小写字母 UPPER(abc) ABC
LOWER(S) 大写字母 LOWER(ACD) acd
LEN(S) 求字符串的长度 LEN(“中国1号”) 7
AT(S1,S2) 在字符串S2,找字符串S1 AT(“H”,”CHINA”) 2
SUBSTR(S,I,N) 在S字符串中的第I个字符起取N个字符 SUBSTR(‘TECHNOLO’,3,3) CHN
LEFT(S,N) 从字符串S左边取N个字符 LEFT(”中国人”,4)中国
RIGHT(S,N) 从字符串S右边取N个字符 S=‘12345′
RIGHT(S,3) 345
SPACE(N) 生成N个空格 “合计”+SPACE(2)+”123” 合计123
TRIM(S) 消除字符串尾部空格 TRIM(“姓名 “) 姓名
ALLTRI(S) 消除字符串中所有空格 ALLTRIM(”李 丽”) 李丽
STUFF(S1,N1,N2,S2) 用字符串S2替换S1中第N1个字符起的N2个字符 STUFF(”NOW”,2,

1,”E”) NEW
& 宏替换 P=”G2″
USE &P USE G2

3、日期和时间函数
函数名 操作 例 结果
DATE() 求当前日期 DATE() 2001/11/12
DATETIME() 求当前日期和时间 DATETIME() 2001/11/12/0:22:33am
YEAR(D) 求年份 YEAR(DATE()) 2001
MONTH(D) 求月份(数值) MONTH(DATETIME()) 11
CMONTH(D) 求月份(字符) MONTH(DATETIME()) Novenber
DAY(D) 求日期 DAY(DATE()) 12
DOW(D) 求星期几(数值) DOW(DATE()) 1
CDOW(D) 求星期几(英文) CDOW(DATE()) sunday
TIME(D) 求当前时间 TIME(DATE()) 10:20:38am

4、数据类型转换函数
函数名 操作 例 结果
ASC(S) 求第一个字符串的ASCII码 ASC(“what”) 87
CHR(N) 求ASCII码的字符 CHR(87) w
STR(R,L,D) 数值转换成字符,L为长度,D为小数位数 X=3.1415
STR(X,6,2) 3.14
VAL(S) 字符串转换为数值 VAL(“123″) 123.00
CTOD(S) 字符串转日期 CTOD(’11/01/2002′) 11/01/2002
DTOC(D) 日期转换成字符串 DTOC(DATE()) 11/01/2002
DTOS(D) 把日期转成年月日式的字符串 DTOS(DATE()) 20021101
CTOT(C) 字符串转成日期时间型 CTOT(11/01/2002 10:30:50am) 11/01/2002 10:30:50am
DTOT(D) 日期型转为日期时间型 DTOT(DATE()) 11/25/2001 00:00:01am
TTOC(T) 日期时间型转为字符型 TTOC(DATETIME()) 11/25/2001 00:00:01am
TTOD(T) 日期时间型转为日期型 TTOD(DATETIME()) 11/25/2001
IIF(LE,E1,E2) 逻辑判断 IIF(A>0,”YES”,”NO”) YES

5、检测函数
函数名 操作 例 结果
RECNO() 检测当前记录号 RECNO() 1
RECCOUNT() 检测当前记录数 RECCOUNT() 12
BOF() 开始记录 BOF() 1
EOF() 最后记录 EOF() 12
FOUND() 返回查找结果 FOUND() .T.
ROW() 返回当前行坐标 ROW() 1
COL() 返回当前列坐

 

 

 

————————————————————————————————–

 

VF常用命令

数据库文件及记录命令

ADD   TABLE   在当前数据库中添加一个自由表

APPEND   在表的末尾添加一个或多个新记录

APPEND FROM ARRAY 由数组添加记录到表中

APPEND FROM   从一个文件中读入记录,追加到当前表的尾部

APPEND GENERAL 从文件中导入OLE对象并将其放入通用字段中

APPEND MEMO   将文本文件的内容复制到备注字段中

APPEND PROCEDURES 将文本文件中的存储过程追加到当前数据库中

AVERAGE   计算数值表达式或字段的算术平均值

BLANK    清除当前记录中所有字段的数据

BROWSE   打开浏览窗口,显示当前或选定表的记录

CALCULATE   对表中的字段或包含字段的表达式进行财务和统计操作

CHANGE   显示要编辑的字段

CLOSE    关闭各种类型的文件

CLOSE MEMO   关闭一个或多个备注编辑窗口

COMPILE DATABASE 编译数据库中的存储过程

CONTINUE   继续执行先前的LOCATE命令

COPY MEMO   复制当前记录中的指定备注字段的内容到文本文件

COPY PROCEDURES 将当前数据库中的存储过程复制到文本文件

COPY STRUCTURE 用当前选择的表结构创建一个新的空自由表

COPY STRUCTURE EXTENDED 创建新表,它的字段包含当前选定表的结构信息

COPY TO ARRAY 将当前选定表中的数据复制到数组

COPY TO   用当前选定表的内容创建新文件

COUNT    统计表中记录数目

CREATE   生成一个新的VisualFoxPro

CREATE CONNECTION 创建一个命名连接并把它存储在当前数据库中

CREATE DATABASE 创建并打开一个数据库

CREATE TRIGGER 创建表的删除、插入或更新触发器

CREATE VIEW   VisualFoxPro环境创建视图文件

DELETE   给要删除的记录做标记

DELETE CONNECTION 从当前数据库中删除一个命名连接

DELETE DATABASE 从磁盘上删除数据库

DELETE TRIGGER 从当前数据库的表中删除删除插入更新触发器

DELETE VIEW   从当前数据库中删除一个SQL视图

DISPLAY   VisualFoxPro主窗口或用户自定义窗口中显示与当前表有关的信息

DISPLAY CONNECTIONS 显示当前数据库中与命名连接有关的信息

DISPLAY DATABASE 显示有关当前数据库的信息,或当前数据库中的字段、命名连接、表或视图的信息

DISPLAY MEMORY 显示内存变量和数组的当前内容

DISPLAY PROCEDURES 显示当前数据库中存储过程的名称

DISPLAY STRUCTURE 显示一个表文件的结构

DISPLAY TABLES    显示包含在当前数据库中所有的表和表的信息

DISPLAY VIEWS    显示当前数据库中关于SQL视图的信息以及SQL视图是否基于本地或远程表的信息

DROP TABLE    把一个表从数据库中移出,并从磁盘中删除它

DROP VIEW    从当前数据库中删除指定的SQL视图

EDIT    显示要编辑的字段

EXPORT    VisualFoxPro表中的数据复制到其他格式的文件中

FIND    查找记录

FLUSH    将对表和索引所作的修改存入磁盘

FREE TABLE    删除表中的数据库引用

GATHER    将当前选定表中当前记录的数据替换为某个数组、内存变量组或对象中的数据

GO|GOTO    将记录指针移动到指定记录上

IMPORT    从外部文件导入数据,创建一个VisualFoxPro新表

INSERT    插入记录

JOIN    将两个数据库文件合并

LIST    连续显示表或环境信息

LIST   CONNECTIONS    连续显示有关当前数据库中命名连接的信息

LIST    DATABASE    连续显示有关当前数据库的信息

LIST    PROCEDURES    连续显示当前数据库存储过程的名称

LIST    TABLES    连续显示包含在当前数据库中的所有表和表的信息

LIST    VIEWS    连续显示当前数据库中有关SQL视图的信息

LOCATE    按顺序搜索表从而找到满足指定逻辑表达式的第一个记录

MODIFY CONNECTION    显示连接设计器,让你能够交互地修改当前数据库中已有的命名连接

MODIFY DATABASE    打开数据库设计器,让你能够交互地修改当前数据库

MODIFY GENERAL    在编辑窗口中打开当前记录中的通用字段

MODIFY MEMO    打开当前记录备注字段的编辑窗口

MODIFY PROCEDURE    打开VisualFoxPro文本编辑器,可在其中为当前数据库创建新的存储过程

MODIFY STRUCTURE    显示表设计器

MODIFY VIEW    显示视图设计器

OPEN    DATABASE    打开一个数据库

PACK    从当前表中永久删除标有删除标记的记录

PACK    DATABASE    从当前数据库中删除标有删除标记的记录

RECALL    恢复所选表中带有删除标记的记录     &#8226;

REMOVE    TABLE    从当前数据库中移去一个表

RENAME    CONNECTION    重命名当前数据库中的一个命名连接

RENAME    TABLE    重命名当前数据库中的表

RENAME    VIEW    重命名当前数据库中的3QL视图

REPLACE    更新表的记录内容

REPLACE    FROM   ARRAY    使用内存变量数组中的值更新字段内容

SCAN...ENDSCAN    运行扫描数据表文件

SCATTER    从当前记录中把数据复制到一组内存变量或数组中

SEEK    查找记录命令

SELECT    激活指定工作区

SET   AUTOINCERROR    在自动增加值产生错误时是否更新或插入一个值到记录中

SET   COLLATE    指定在后续索引和拌序操作中,字符型字段的排序顺序

SET   DATABASE    指定当前数据库

SET   DATASESSION    激活指定的表单数据工作期

SET   DELETED    指定VisualFoxPro是否处理标有删除标记的记录,以及其他命令是否可以操作它们

SET   EXCLUSIVE    指定VisualFoxPro在网络上以独占方式还是共享方式打开表文件

SET   FIELDS    指定可以访问表中的哪些字段

SET   FILTER    指定访问当前表中记录时必须满足的条件

SET   INDEX    打开一个或多个索引文件,供当前表使用     

SET   KEY    根据索引关键字,指定访问记录的范围

SET   LOCK    激活或废止在某些命令中的自动文件锁定

SET   MULTILOCKS    决定能否使用LOOK()RLOCK()锁定多个记录

SET   NEAR    FINDSEEK查找记录不成功时,确定记录指针停留的位置

SET   NOCPTRANS    防止把已打开表中的选定字段转换到另一个代码页

SET   NULL    确定ATLTERTABLECREATETABLEINSERT-SQL命令如何处理null

SET   NULLDISPLAY    指定null值显示时对应的字符中

SET   RELATION    在两个打开的表之间建立关系

SET   RELATIONOFF    解除当前选定工作区中父表与相关子表之间已建立的关系

SET   REPROCESS    指定一次锁定尝试不成功后,VisualFoxPro对文件或记录再次尝试加锁的次数或时间

SET   SKIP    创建表与表之间的一对多关系

SET   TABLEVALIDATE    指定一个表的执行级别

SET   WINDOW   OF   MEMO    设置备注字段使用的窗口

SKIP    使记录指针在表中向前移动或向后移动

SUM    对当前选定表的指定数值字段或全部数值字段进行求和

TOTAL    计算当前选定表中数值字段的总和

UPDATE    更新数据库文件的记录

USE    打开一个表及其相关索引文件,或打开一个SQL视图

VALIDATE   DATABASE    保证当前数据库中表和索引位置的正确性

ZAP    从表中删除所有记桌,只留下表的结构

索引及排序命令

COPY   INDEXES    从单项索引.IDX文件创建复合索引标识

COPY   TAG    根据复合索引文件的标识创建单项索引(IDX)文件

DELETE   TAG    从复合索引(CDX)文件中删除标识

INDEX    创建一个索引文件,利用该文件可以按某种逻辑顺序显示和访问表记录

REINDEX    重整索引

SET   ORDER    指定表的主控索引文件或标识

SET   UNIQUE    指定具有重复索引关键字的记录是否保留在索引文件中

SORT    对当前选定表进行捧序,井将捧过序的记录输出到新表中

Visual FoxPro环境设定命令

CREATE   COLOR   SET    从当前颜色设置中创建一个颜色集合

DISPLAY   STATUS    显示VisualFoxPro环境的状态

SET   ANSI    确定VisualFoxProSQL命令中如何用操作符对不同长度字符串进行比较

SET   ASSERTS    指定ASSERT命令是否被忽略

SET   AUTO   SAVE 当退出READ命令或返回到命令窗口时,决定V FP是否把数据缓冲区中的数据保存到磁盘上去

SET   BELL 关掉或打开计算机铃声,并设置铃声属性

SET   BLOCKSIZE 指定VisualFoxPro如何为保存备注字段分配磁盘空间

SET   BORDER 指定当在浏览窗口中定位到一个文本框时,是否显示输入法生成器

SET   BRSTATUS 设定浏览窗口的状态行

SET   CARRY 决定使用INSERTAPPENDBROWSE命令创建新记录时,是否将当前记录数据复制到新记录中

SET   CLEAR 设置清除方法

SET   CLOCK 决定VisualFoxPro是否显示系统时钟,也可以指定系统时钟在VisualFoxPro主窗中的位置

SET   COLOR   OF 设定颜色对的组合

SET   COLOR   OF   SCHEME 设定调色板的颜色组合

SET   COLOR   SET 设定颜色集的组合

SET   COLOR   TO 改变屏幕颜色

SET 设定命令

SET   COMPATIBLE 设置与其他Xbase语言的兼容性

SET   CONFIRM 指定是否可以用在文本框中键入最后一个字符的方法退出文本框

SET   CONSOLE 激活或废止从程序中向VisualFoxPro主窗口或活动的用户自定义窗口的输出

SET   COVERAGE 开启或关闭编辑日志,或指定一个文本文件,编辑日志的所有信息将输出到其中

SET   CPCOMPILE 指定编译程序的代码页

SET   CPDIALOG 指定打开表时是否显示代码页对话框

SET   CURRENCY 定义货币符号,并且指定货币符号在数值、货币、浮点数和双精度数表达式中的显示位置

SET   CURSOR 确定在VisualFoxPro等待输入时,是否显示插入点

SET   DEBUG 设置调试模式

SET   DEBUGOUT     将调试结果输出到一个文件

SET   DECIMALS 指定数值表达式中的小数点位数

SET   DEFAULT 指定默认的驱动器、目录或文件夹

SET   DELLMITERS 设定分割字符

SET   DEVELOPMENT 使Visual FoxPro在运行程序时,对目标文件的编译日期时间与程序的创建日期时间进行比较

SET   DEVICE @…SAY的输出结果定向到屏幕、打印机或文件

SET   DISPLAY 设置显示模式

SET   DOHISTORY 设定取得运行中程序的状态

SET   ENGINEBEHAVIOR 允许SQL数据引擎兼容VisualFoxPr070VisualFoxpr080

SET   ESCAPE 决定是否可以通过按Ese键中断程序和命令的运行

SET   EXACT 指定比较不同长度两个字符串时,VisualFoxPro使用的规则

SET   FIXED 指定在显示数值时小数位数是否固定

SET   FULLPATH 指定CDX()DBP()MDX()NDX()等函数是否返回文件名的路径

SET   FUNCTION 给功能键或组合键分配表达式(键盘宏)

SET   HEADINGS 指定用TYPE显示文件内容时,是否显示字段的列标头,并指定是否包含文件信息

SET   HELP 激活或废止VisualFoxPro联机帮助或指定的帮助文件     

SET   INTENSITY 设置屏幕反白模式

SET   KEYCOMP 控制VisualFoxPro的键击定位

SET   LOGERRORS 决定VisualFoxPro是否将编译错误信息送入文本文件

SET   MACKEY 指定显示宏键定义对话框的单个键或组合键

SET   MEMOWIDTH 指定备注字段和字符表达式的显示宽度

SET   MESSAGE 定义在Visual FoxPro主窗口或图形状态栏中显示的信息,或者指定有关用户自定义菜单栏和菜单命令的信息位置

SET   NOTIFY 确定是否显示某种系统信息

SET   ODOMETER 对处理记录的各命令指定记录计数器的报告间隔

SET   OLEOBJECT VisualFoxPro找不到对象时,指定是否在WindowsRegistry中查找

SET   OPTIMIZE 启用或废止Rushmore优化

SET   PALETI~ 指定是否使用默认的调色板

SET   PATH 指定查找文件的路径

SET   POINT 显示数值表达式或货币表达式时,确定所用小数点字符

SET   RESOURCE 更新资源文件或指定资源文件

SET   SAFETY 设定确认模式

SET   SEPARATOR 设置千位分隔符号

SET   SPACE 使用???命令时,确定字段或表达式之间是否显示空格

SET   STATUS   BAR 显示或删除图形状态栏

SET   STATUS 显示或移去基于字符的状态栏

SET   SYSFORMATS 指定是否用当前W’mdows系统设置值更新VisualFoxPro系统设置

SET   SYSMENU 在程序运行期间,启用或废止VisualFoxPro系统菜单栏,并对其重新配置

SET   TALK 决定VisualFoxPro是否显示命令结果

SET   TEXTMERGE 指定是否对文本合并分隔符括起的字段、内存变量、数组元素、函数或表达式进行计算

SET   TEXTMERGE   DELIMITERS 指定文本合并分隔符

SET   TOPIC 指定激活VisualFoxPro帮助系统时,要打开的帮助主题

SET   TOPIC   ID 指定激活Visual FoxPro帮助系统时要显示的帮助主题。帮助主题根据主题的上下文D确定

SET   VIEW 打开或关闭查看窗口,或者从一个视图文件中恢复VisualFoxPro环境

Visual FoxPro文件管理命令

CD|CHDIR    更改目录

COPY   FILE    复制任何类型的文件

DELETE   FILE    从磁盘上删除文件

DISPLAY   FILES    显示关于文件的信息

ERASE    从磁盘上删除文件

MD|MKDIR    在磁盘上创建一个新目录或子目录

MODIFY   FILE    打开编辑窗口,从中可以修改或创建文本文件

RD|RMDIR    从磁盘上删除一个目录

RENAME    把文件名称更改为一个新名称

SET   ALTERNATE    设置交互文件

TYPE    显示文件的内容

Visual FoxPro网络命令

BEGIN   TRANSACTION    启动一个事务处理

CREATE   SQL   VIEW    建立SQL视图

END   TRANSACTION    结束当前事务

ROLLBACK    取消当前事务期间所做的任何修改

SET   REFRESH    当网络上的其他用户修改记录时,确定是否更新浏览窗口或确定更新浏览窗口的频度

UNLOCK    对一个表中的单条记录、多条记录或者文件解锁,或者对所有打开的表解除所有记录馈 和文件锁

Visual FoxPro输入输出命令

?|??      计算表达式的值,并输出计算结果

@…BOX      在窗口中绘制方框

@…CLASS      在了屏幕上建立一个类的对象

@…CLEAR      清除屏幕

@…EDIT      建立编辑框

@…FILL      在区域内填充颜色

@…GET-CheckBoxes 建立复选框对象

@…GET-ComboBoxes 建立下列列表框

@…GET-CommandButtons 建立按钮对象

@…GET-ListBoxes 建立列表对象     &#8226;

@…GET-OptionButtons 建立选项按钮对象

@…GET-Spinners 建立微调按钮对象

@…GET-TextBoxes 建立文本框对象

@…GET-TransparentButtons 建立透明按钮对象

@…SAY-Pictures&OLEObjects 显示OLE对象或图形

@…SAY 定位输出数据

@…SCROLL 滚动屏幕

@…TO 清除部分屏幕画面

\|\\ 文字直接输出命令

ASSERT 若指定的逻辑表达式为假(.F.),则显示一个调试消息框

CLEAR 从内存中释放指定项

COMPILE   FORM 编译一个或多个表单对象

CREATE   FORM 打开表单设计器

CREATE   FROM COPYSTRUCTUREEXTENDED文件创建一个表

CREATE   LABEL 打开标签设计器

CREATE   QUERY 打开查询设计器

CREATE   SCREEN 建立表格文件

CREATE   SCREEN-QuickScreen 快速建立表格文件

CREATE   SQL VIEW 显示视图设计器来创建SQL视图

DEBUG 启动VisualFoxPro调试器

DEBUGOUT 调试输出窗口中显示一个表达式的结果

DEFINE   BOX 定义方框

DIRDIRECTORY 显示目录或文件夹中文件的信息

DO   FORM 运行用表单设计器创建的、编译过的表单或表单集

HIDE   MENU 隐藏活动的用户自定义菜单栏

HIDE   POPUP 隐藏由HIDEPOPUP创建的一个或多个活动菜单

INPUT 由用户输入数据

MODIFY   FORM 打开表单设计器,从中可以修改或创建一个表单

MODIFY   LABEL 打开标签设计器,从中可以修改或创建一个标签

MODIFY   QUERY 打开查询设计器,从中可以修改或创建一个查询

MODIFY   SCREEN 打开表单设计器

READ 读取已建立的对象

RESTORE   SCREEN 恢复先前保存在屏幕缓冲区、内存变量或数组元素中的Visual FoxPro主窗口或用户自定义窗口

SAVE    SCREEN Visual FoxPro主窗口或活动的用户自定义窗口的图象保存到屏幕缓冲区、内存变量或数组元素中

SCROLL    屏幕滚动命令

SET   FORMAT    设定表格文件

SET   READBORDER    确定是否在@…GET创建的文本框周围放上边框

SHOW   GET    更新GET对象内容

SHOW   GETS    更新GET对象内容     &#8226;

SHOW   OBJECT    更新GET对象内容

TEXT...ENDTEXT    文字输出

Visual FoxPro菜单命令

@…MENU    建立菜单

@…PROMPT    建立菜单选项

ACTIVATE   MENU    显示并激活一个菜单栏

ACTIVATE   POPUP    显示并且激活一个菜单

CREATE   MENU    ViualFoxPro中打开菜单设计器

DEACTIVATE   MENU    使一个用户自定义菜单栏失效,并将它从屏幕上移去,但并不从内存中删除菜单栏的定 

DEACTIVATE   POPUP    使DEFINEPOPUP创建的菜单失效

DEFINE   BAR    DEFINEPOPUP创建的菜单中创建一个菜单项

DEFINE   MENU    创建菜单栏

DEFINE   PAD    在用户自定义菜单栏或Ⅵsu81FoxPro系统菜单栏上创建一个菜单标题

DEFINE   POPUP    创建菜单

MENU    建立菜单

MENU   TO    启动菜单

MODIFY   MENU    打开菜单设计器,从中可以修改或创建菜单系统

MOVE   POPUP    把菜单移动到新位置

ON   BAR    指定从菜单中选择特定菜单项时激活的菜单或菜单栏

ON   EXIT   BAR    指定离开选项时的操作

ON   EXIT   MENU    指定离开菜单时的操作

ON   EXIT   PAD    指定离开选择页时的操作

ON   EXIT   POPUP    指定离开弹出式菜单时的操作

ON   PAD    指定菜单或菜单栏,当选择特定的菜单标题时激活它

ON   SELECTION   BAR    指定选择特定菜单项时应执行的命令

ON   SELECTIONM   ENU    指定在菜单栏上选择任何菜单标题时执行的命令

ON   SELECTION   PAD    指定选择菜单栏上特定菜单标题时执行的命令

ON   SELECTIONP   OPUP    指定从特定菜单或所有菜单上选择任一菜单项时所要执行的命令

POP   MENU    恢复用PUSHMENU命令压进堆栈的菜单栏定义

POP   POPUP    恢复用PUSHPOPUP命令压进堆栈的菜单定义

PUSH   MENU    把一个菜单栏定义压进内存中的菜单栏定义堆栈

PUSH   POPUP    把一个菜单定义压进内存中的菜单定义堆栈

READ   MENU    读取已建立的菜单

RELEASE   BAR    从内存中删除菜单上的指定菜单项或所有菜单项

RELEASE   MENUS    从内存中删除用户自定义菜单栏     &#8226;     

RELEASE   PAD    从内存中删除指定或所有的菜单标题

RELEASE   POPUPS &#8226;从内存中删除指定或所有的菜单

SET   MARK   OF 为菜单标题或菜单项指定标记字符,或者指定显示还是清除该标记字符

SET   SKIP   OF 启用或废止用户自定义菜单或Viual FoxPro系统菜单的菜单、菜单栏、菜单标题或菜单项

SHOW   MENU 显示一个或多个用户自定义菜单栏,但不激活它们

SHOW   POPUP 显示一个或多个用DEFINEPOPUP定义的菜单,但不激活它们

SIZE   POPUP 更改用DEFINEPOPUP命令创建的菜单大小

Visual FoxPro打印命令

???    把结果直接输出到打印机

CREATE   REPORT    以编程方式创建报表

EJECT    向打印机发送换页符

EJECTPAGE    向打印机发出有条件走纸的指令

LABEL    根据表文件和标签定义文件打印标签

MODIFY   REPORT    打开报表设计器,从中可以修改或创建一个报表

ON   PAGE    指定当报表中打印输出到达一定行数,或发出EJECTPAGE时,将执行的命令

PRINTJOB...ENDPRINTJOB    打印设置

REPORT    根据MODIFYREPORTCREATEREPORT创建的报表定义文件显示或打印报表

SET   MARGIN    设置打印的左页边距,对所有定向到打印机的输出结果都起作用

SET   PDSETUP    装入一个打印机驱动程序设置或清除当前打印机驱动程序设置

SET   PRINTER    打开或者关闭向打印机的输出,或将结果输出到一个文件、端口

Visual FoxPro程序管理命令

&    执行宏替换

&&    标明程序文件中非执行的内部注释的开始

*    标明程序文件中非执行的注释行的开始

ASSIST    为提供向后兼容性,使用DO代替

CALL    调用装入的二进制文件

CANCEL    结束当前VisualFoxPro程序的执行

COMPILE    编译一个或多个源文件

DECLARE    创建一维或二维数组

DIMENSION    创建一维或二维内存变量数组     ‘

DOCASE...ENDCASE    分支判断命令

DO    执行一个VisualFoxPro程序或过程

DOWHILE...ENDDO    循环语句

DOEVENTS    执行所有等待的Windows事件

ERROR    生成一个VisualFoxPro错误

EXIT    DOWHILEFORSCAN循环中退出

FOR   EACH...ENDFOR    VisualFoxPro数组或集合中的每一个元素依次执行一组命令

FOR...ENDFOR    循环语句

FUNCTION    定义一个用户自定义函数

GETEXPR    显示表达式生成器对话框

IF…ENDIF    判断语句

LOAD    将二进制文件装入内存

LOCAL        创建局部内存变量和内存变量数组

LOOP    返回程序控制

LPARAMETERS    将调用程序传入的数据赋给局部内存变量或数组

MODIFY   COMMAND    打开一个编辑窗口,从中可以修改或创建程序文件

NOTE    在程序文件中指示注释行的开始,注释行不可执行

PARAMETERS    将调用程序传来的数据赋值给私有内存变量或数组

PRIVATE    在当前程序中隐藏指定的、在调用程序中定义的内存变量或数组

PROCEDURE    用在程序文件中标识一个过程的开始

PUBLIC    定义全局内存变量或数组

QUIT    结束当前VisualFoxPro工作期,并将控制权返回给操作系统

READ   EVENTS    开始事务处理

RELEASE    从内存中删除内存变量和数组

RELEASE   PROCEDURE    关闭用SETPROCEDURE命令打开的过程文件

RESTORE   FROM    恢复保存在内存变量文件或备注字段中的内存变量和内存变量数组,并把它们放回到内 存中

RESUME    继续执行一个挂起的程序

RETRY    重新执行前面的命令

RETURN    将程序控制返回给调用程序

RUN    执行外部操作命令或程序

SAVE   TO    把当前内存变量和数组保存到内存变量文件或备注字段中

SET   ECHO    为调试程序打开跟踪窗口

SET   EVENTLIST    指定被跟踪的事件,这些事件将显示在调试输出窗口中或输出到由SET事件TRACKING命令指定     的文件中

SET   EVENTTRACKING    允许或关闭事件跟踪,或者指定事件跟踪信息输出到一个文本文件中

SET   PROCEDURE    打开过程文件

SET   STEP    为程序调试打开跟踪窗口并挂起程序

SET   TRBETWEEN    在跟踪窗口的断点之间启用或废止跟踪

SET   UDFPARMS    VisualFoxPro在向用户自定义函数(UDF)传递参数时,指定为按值传递还是通过引用 传递

SUSPEND    使用SUSPEND可暂停程序的执行,并返回到VisualFoxPro的交互状态

TRY...CATCH...FINALLY    指定一个结构来处理在运行时出现的错误或异常

WAIT    显示信息并暂停VisualFoxPro的执行,按某个键或单击鼠标后继续执行

Visual FoxPro窗口命令

ACTIVATE   SCREEN    把结果输出到VisualFoxPro主窗口

ACTIVATE   WINDOW    显示并且激活一个或多个用户自定义窗口或VisualFoxPro系统窗口

DEACTIVATE   WINDOW    使用户自定义窗口或VisualFoxPro系统窗口失效,并将它们从屏幕上移去,但不从内存 中删除

DEFINE   WINDOW    DEFINEWINDOW

DOCK   WINDOW    停靠或合并VisualFoxPro的工具窗口

HIDE   WINDOW    隐藏一个活动的用户自定义窗口或VisualFoxPro系统窗口

MODIFY   WINDOW    修改用户自定义窗口或VisualFoxPro主窗口

MOVE   WINDOW    把窗口移动到新位置

RELEASE   WINDOWS    从内存中释放用户自定义窗口或VisualFoxPro主窗口

RESTORE   WINDOW    将保存在窗口文件或备注字段中的窗口定义和窗口状态恢复到内存中

SAVE   WINDOWS    把所有窗口定义或指定的窗口定义保存到窗口文件或备注字段中

SHOW   WINDOW    显示一个或多个用户自定义窗口或VisualFoxPro系统窗口,但不激活它们

SIZE   WINDOW    更改用DEFINEWINDOW命令创建的窗口大小,或者更改VisualFoxPro系统窗口的大 

ZOOM   WINDOW    更改用户自定义窗口或VisualFoxPro系统窗口的大小与位置

Visual FoxPro日期及时间命令

SET   CENTURY 确定MicrosoftVisualFoxPro是否显示日期表达式当前世纪部分并确定VisualFoxPro只有两位年份值的日期的解释方式

SET   DATE 指定日期表达式和日期时间表达式的显示格式

SET   FDOW 指定一周中的第一天

SET   FWEEK 指定一年的第一周要满足的条件

SET   HOURS 将系统时间设置为12小时或24小时时间格式

SET   MARK   TO 指定显示日期表达式时所使用的分隔符

SET   SECONDS 当显示日期时间值时,指定是否显示时间部分的秒

SET   STRICTDATE 指定不明确的日期和日期时间常数是否产生错误

Visual FoxPro按键、鼠标及事件拦截 命令

KEYBOARD 把指定的字符表达式放置到键盘缓冲区中

MOUSE 单击、双击、移动或拖动鼠标

ON   ERROR 指定当出现错误时执行的命令

ON   ESCAPE 指定在程序或命令运行过程中,按下FSC键时所执行的命令

ON   KEY= 拦截按键事件

ON   KEY 拦截按键事件

ON   KEY   LABEL 拦截按键事件

ON   READERROR 拦截读取错误事件

ON   SHUTDOWN 拦截退出FoxPro事件

PLAY   MACRO 执行一个键盘宏

POPKEY   恢复用PUSHKEY命令放入栈内的ONKEYLABEL指定键值

PUSHKEY 把所有当前的ONKEYLABEL命令设置压入内存中的一个堆栈

RESTORE   MACROS 把保存在键盘宏文件或备注字段中的键盘宏恢复到内存中

SAVE   MACROS 把一组键盘宏保存到键盘宏文件或备注字段中

SET   TYPEAHEAD 指定键盘缓冲区中可以存储的最大字符数

Visual FoxProSQL命令

ALTER   TABLE-SQL 以编程方式修改表的结构

CREATE   CURSOR-SQL 创建一个临时表

CREATE   TABLE-SQL 创建一个含有指定字段的表

DELETE-SQL 给要删除的记录做标记

INSERT-SQL 在表尾追加一个包含指定字段值的记录

SELECT-SQL 从一个或多个表中检索数据

UPDATE-SQL 以新值更新表中的记录

Visual FoxPro类及程序库命令

ADD   CLASS 向.VCX可视类库中添加一个类定义

CREATE   CLASS 打开类设计器,创建一个新的类定义

CREATE   CLASSLIB 创建一个新的、空的可视类库(VCX)文件

DECLARE-DLL 注册外部Windows32位动态链接库(DLL)中的一个函数

DEFINE   CLASS 创建一个用户自定义类或子类,并为创建的类或子类指定属性、事件和方法

DISPLAY   DLLS VisualFoxPro中,显示与32W’mdows动态链接库(DLL)函数有关的信息

DISPLAY   OBJECTS 显示有关一个对象或一组对象的信息

LIST   DLLS 连续显示有关32WindowsDLL函数的信息

LIST   OBJECTS 连续显示有关一个对象或一组对象的信息

MODIFY   CLASS 打开类设计器,让用户修改已有的类定义或创建新的类定义

RELEASE   CLASSLIB 关闭包含类定义的.VCX可视类库

RELEASE   LIBRARY 从内存中删除一个外部的API

REMOVE   CLASS 从.VCX可视类库中删除一个类定义

RENAME   CLASS 重命名.VCX可视类库中的一个类定义

SET   CLASSLIB 打开包含类定义的.VCX可视类库

SET   LIBRARY 打开一个外部的API(应用程序接口)库文件

WITH...ENDWITH 指定对象属性

Visual FoxPro项目文件及其他命令

BUILD   APP 使用项目文件生成以.APP为扩展名的应用程序

BUILD   DLL 使用项目文件生成以.dll为扩展名的动态链接库(DLL)

BUILD   EXE 从项目生成一个可执行文件

BUILD   MTDLL 生成多线程动态链接库(DLL)

BUILD   PROJECT 创建并生成一个项目文件

CREATE   PROJECT 打开项目管理器并创建一个项目

EXTERNAL 向项目管理器提示一个未定义的引用

HELP 打开帮助窗口

MODIFY   PROJECT 打开项目管理器,从中可以修改或创建一个项目文件

 

 » 转载请注明来源:网络蛀虫小窝 » 《VF常用命令》
 » 本站地址:http://www.gomoth.com

标签: