VFP常用命令.docx
《VFP常用命令.docx》由会员分享,可在线阅读,更多相关《VFP常用命令.docx(14页珍藏版)》请在冰豆网上搜索。
VFP常用命令
VFP常用命令.txt我很想知道,多少人分开了,还是深爱着。
ゝ自己哭自己笑自己看着自己闹。
你用隐身来躲避我丶我用隐身来成全你!
待到一日权在手,杀尽天下负我狗。
fox命令
VisualFoxPro常用命令分类表
数据库文件及记录命令
ADDTABLE在当前数据库中添加一个自由表
APPEND在表的末尾添加一个或多个新记录
APPENDFROMARRAY由数组添加记录到表中
APPENDFROM从一个文件中读入记录,追加到当前表的尾部
APPENDGENERAL从文件中导入OLE对象并将其放入通用字段中
APPENDMEMO将文本文件的内容复制到备注字段中
APPENDPROCEDURES将文本文件中的存储过程追加到当前数据库中
AVERAGE计算数值表达式或字段的算术平均值
BLANK清除当前记录中所有字段的数据
BROWSE打开浏览窗口,显示当前或选定表的记录
CALCULATE对表中的字段或包含字段的表达式进行财务和统计操作
CHANGE显示要编辑的字段
CLOSE关闭各种类型的文件
CLOSEMEMO关闭一个或多个备注编辑窗口
COMPILEDATABASE编译数据库中的存储过程
CONTINUE继续执行先前的LOCATE命令
COPYMEMO复制当前记录中的指定备注字段的内容到文本文件
COPYPROCEDURES将当前数据库中’的存储过程复制到文本文件
COPYSTRUCTURE用当前选择的表结构创建一个新的空自由表
COPYSTRUCTUREEXTENDED创建新表,它的字段包含当前选定表的结构信息
COPYTOARRAY将当前选定表中的数据复制到数组
COPYTO用当前选定表的内容创建新文件
COUNT统计表中记录数目
CREATE生成一个新的VisualFoxPro表
CREATECONNECTION创建一个命名连接并把它存储在当前数据库中
CREATEDATABASE创建并打开一个数据库
CREATETRIGGER创建表的删除、插入或更新触发器
CREATEVIEW从VisualFoxPro环境创建视图文件
DELETE给要删除的记录做标记
DELETECONNECTION从当前数据库中删除一个命名连接
DELETEDATABASE从磁盘上删除数据库
DELETETRIGGER从当前数据库的表中删除“删除”、“插入”或“更新”触发器│
DELETEVIEW从当前数据库中删除一个SQL视图
DISPLAY在VisualFoxPro主窗口或用户自定义窗口中显示与当前表有关的信息
DISPLAYCONNECTIONS显示当前数据库中与命名连接有关的信息
DISPLAYDATABASE显示有关当前数据库的信息,或当前数据库中的字段、命名连接、表或视图的信息
DISPLAYMEMORY显示内存变量和数组的当前内容
DISPLAYPROCEDURES显示当前数据库中存储过程的名称
DISPLAYSTRUCTURE显示一个表文件的结构
DISPLAYTABLES显示包含在当前数据库中所有的表和表的信息
DISPLAYVIEWS显示当前数据库中关于SQL视图的信息以及SQL视图是否基于本地或远程表的信息
DROPTABLE把一个表从数据库中移出,并从磁盘中删除它
DROPVIEW从当前数据库中删除指定的SQL视图
EDIT显示要编辑的字段
FoxPro的命令结构一般由命令动词、语句体和注释几部分构成。
如:
LIST[范围][[FIELDS字段名列表][FOR条件][WHILE条件][OFF][TOPRINT]
常用子句
范围:
表示记录的执行范围,可以是下面几项其中之一:
ALL表示全部记录;
NEXTn表示从当前记录开始的以下n条记录;
RECORDn表示第n号记录;
REST表示从当前记录到最后一条记录。
FIELDS字段名表:
用于指定操作的字段,多个字段时用逗号分隔。
FOR条件:
对满足条件的记录进行操作。
WHILE条件:
当遇到第一个不满足条件的记录时,停止命令执行。
以下命令中,大写的英文词为关键词,必须原样照写。
“常用子句”指以下几个可选子句:
[范围][FIELDS字段名表][FOR条件][WHILE条件]
命令中的“列表”,指用“,”分隔的各项。
如“字段名列表”就是将各个字段名用逗号分隔。
部分英文词的意义:
Databasename数据名tablename数据表名filename文件名Viewname视图名arrayname数组名
提示:
加下划线的为本课程要求掌握的命令。
一、数据库的建立、打开、关闭和删除
建立数据库:
CREATEDATABASE[databasename|?
]
从磁盘中删除数据库:
DELETEDATABASEdatabasename|?
打开数据库:
OPENDATABASE[EXCLUSIVE|SHARED][NOUPDATE]
打开数据库设计器(允许用户按交互方式编辑当前数据库):
MODIFYDATABASE[databasename|?
]
指定的数据库databasename为当前数据库。
指定当前的数据库:
SETDATABASETO[databasename]
Databasename必须为已经打开的数据库。
如果省略数据库名称databasename,则不指定当前数据库(没有当前数据库)。
关闭数据库:
CLOSEDATABASE[ALL]
关闭当前数据库,如果带ALL子句,则关闭所有打开的数据库。
二、数据表和视图的建立、打开、关闭和删除
建立数据表(SQL命令):
CREATETABLE|DBFtablename(Col_name1Type1[NOTNULL/NULL]
[{,Col_name2Type2[NOTNULL/NULL]}...])
table_name是所创建的数据表的名字。
Col_name1,Col_name2,...是表中列的名。
Type1,Type2...是相应列的数据类型(VFP的数据类型见表3-9)。
如果说明为NOTNULL,则列中不允许分配空值(这种情况下,列不能包含空值,如果插入空值,将返回错误信息)。
向当前打开的数据库中添加数据表:
ADDTABLEtablename|?
从当前打开的数据库中删除数据表:
REMOVETABLEtablename|?
[DELETE]
如果包含DELETE子句,将从磁盘中删除这个表文件,否则,只从数据库中删除,但文件仍保存在磁盘中。
在当前打开的数据库中建立视图:
CREATESQLVIEWviewnameASSELECT……
其中SELECT……为SELECT语句。
执行这个语句时,如果没有打开的数据库,则建立独立的视图,这样的视图不能存储。
从当前打开的数据库中删除视图:
DELETEVIEWviewname
打开一个表:
USEtablename|?
[IN工作区号]
将当前数据表与另一数据表连接后建立一个新表:
JOINWITH工作区号|表别名TOtablenameFOR条件[FIELDS字段名表]
三、数据表和表结构的编辑、修改
打开浏览窗口(可在其中编辑数据表):
BROWSW(详细格式见P.114~116)
打开并修改数据表中的字段:
(1)CHANGE[FIELDS字段名列表]
(2)EDIT[FIELDS字段名列表]
这两个命令的功能相似,可选子句较多(详见手册)。
数据表改名:
RENAMETABLEtablename1TOtablename2
其中数据表tablename1必须存在且未打开。
视图改名:
RENAMEVIEWviewname1TOviewname2
其中数据表tablename1必须存在且未打开。
修改数据表结构(SQL命令):
ALTERTABLEtablename;
ADD字段名Type[NULL|NOTNULL]
[,字段名Type[NULL|NOTNULL];
[ALTERCOLUMN字段名Type{NULL|NOTNULL}];
[{,字段名TypeNULL|NOTNULL}...];
[DROP字段名[,字段名[,...]]
将当前表与另一表之间建立关联:
SETRELATIONTO[表达式1INTO工作区号1|表别名1];
[,表达式2INTO工作区号2|表别名2][,...]
建立关联的两个表必须事先已按关联表达式进行索引排序。
在当前表与另一表之间建立一对多关联:
SETSKIPTO表别名1[,表别名2]
消除当前表与另一表之间的关联:
SETRELATIONOFFINTO工作区号|表别名
四、数据表中数据操作(查询、插入、删除和修改等)
数据查询SELECT语句(SQL命令)
格式见教材的有关章节。
这是本课程的重点内容,必须很好地掌握。
更改数据表中的记录:
REPLACE字段1WITH表达式1[ADDITIVE];
[,<[,<字段2>WITH<表达式2>[ADDITIVE],…];
[FOR条件1][WHILE条件2]
其中的ADDITIVE子句适用于备注字段,表示将表达式的值加在字段的末尾。
用内存数组的值更新数据表中的记录:
REPLACEFROMARRAY数组名[FIELDS字段名列表][常用子句]
用新的值更新表中的记录(SQL命令):
UPDATE[databasename!
]tablename;
SETColumn_1=Expression1[{Column_2=expression2}...];
[WHERECondition]
用一个表中的数据更新当前指定工作区中打开的表:
UPDATEONfieldnameFROMfilename;
REPLACEfieldname1WITHexpr1
[,fieldname2WITHexpr2[,...]]
给记录加删除标记(SQL命令):
DELETEFROM[databasename!
]tablename;
[WHERE条件]
给记录加删除标记:
DELETE[范围][FOR条件][WHILE条件];
[IN工作区号|表别名]
永久删除加了删除标记的记录:
PACK
永久删除打开的数据库中加了删除标记的记录:
PACKDATABASE
去掉删除标记(恢复)
RECALL[常用子句]
删除一个表中所有记录(保留表的结构):
ZAP[INtablename|alias]
为数据表文件追加记录:
APPEND[BLANK][IN工作区号|别名]
从另一个文件中提取数据添加到当前数据表的尾部:
APPENDFROMfilename|?
[FIELDS字段名列表][FOR条件]
其中filename所指定的文件可以是数据表、EXCEL电子表格、文本文件等,如果不是数据表,需要其它子句指定格式(详见手册)。
用内存数组的值添加到当前数据表的尾部:
APPENDFROMARRAYarrayname[FOR条件][FIELDS字段名列表]
数据中的一行对应一个新记录,一列对应一个字段。
从一个文件输入一个OLE对象放入一个通用(general)字段:
APPENDGENERAL通用字段名[FROMfilename]
如果省略子句FROMfilename,则将指定的字段清空。
将一个文本文件的内容拷贝到一个备注字段:
APPENDMEMO备注字段名[FROMfilename][OVERWRITE]
如果省略子句FROMfilename,则将指定的字段清空。
插入新记录(在当前记录之前或后插入):
INSERT[BLANK][BEFORE]
如不省略BLANK,则插入一个空白记录,且不显示输入窗口。
在表中插入新记录并赋值(SQL命令):
INSERTINTOtablename[(字段1[,字段2,...])]VALUES(eExpression1[,eExpression2,...])
或
INSERTINTOtablenameFROMARRAYArrayName|FROMMEMVAR
如带有FROMMEMVAR子句,则用同名的内存变量给字段赋值。
清除当前记录中字段的数据:
BLANK[常用子句]
移动记录指针:
SKIP[n][IN工作区号|表别名]
五、文件管理(文件和文件夹的复制、创建和删除)
从当前表复制出表或其它类型的文件(表须打开)
COPYTOfilename[FIELDS字段名列表][常用子句][其它子句]
如果没有指定类型,则复制一个与当前的表相同的数据表。
复制表的结构
COPYSTRUCTURETOfilename[FIELDS字段名列表]
复制任何文件:
COPYFILE源文件TO目的文件
如果用此命令复制表,表须关闭
从磁盘上删除任意文件:
(1)ERASEfilename|?
(2)DELETEFILE[filename|?
]
任意文件改名(或文件移动到另一文件夹):
RENAMEfilename1TOfilename2
其中filename1和filename2都可以包含路径。
如二者不在同一文件夹,则将filename1移动到filename2所在的文件夹。
显示一个文件夹中的文件信息:
DIR|DIRECTORY[ONdrive]
从磁盘上删除一个文件夹:
RD|REDIR文件夹名
在磁盘上建立一个文件夹:
MD|MKDIR文件夹名
六、数据的复制与传送
单个记录与数组间的数据传送
当前记录→数组或内存变量:
SCATTER[FIELDS字段名列表][MEMO]TO数组名[BLANK]|MEMVAR[BLANK]
其中[BLANK]表示建立一个空元素的数组。
如果用MEMVAR子句,则表示将各字段的值复制到同名同类型的内存变量。
如果包含MEMO子句,则备注字段一起复制。
数组或内存变量→当前记录
GATHERFROM数组名|MEMVAR[FILEDS字段名列表][MEMO]
用同名的内存变量或数组中的第一行置换当前记录,如果数组为多行的二维数组,也只用第一行。
成批记录与数组间的数据传送
表→数组:
COPYTOARRAYarrayname[常用子句]
数组→表:
(1)APPENDFROMARRAYarrayname[FOR条件][FIELDS字段名列表]
用内存数组的值加在数据表的尾部,数据中的一行对应一个新记录,一列对应一个字段。
(2)REPLACEFROMARRAY数组名[常用子句]
用内存数组的值更新数据表中符合条件的记录。
查询结果→数组:
SELECT……INTOARRAYarrayname
将SQLSELECT语句的查询结果传给数组arrayname。
这里“SELECT……”可为各种形式的SELECT查询语句。
给内存变量赋值:
STORE表达式TO变量名
或
变量名=表达式
七、排序与索引
将当前表排序后建立一个新数据表:
SORTTO文件名ON字段名1[/A|/D];
[/C][字段名2[/A|/D][/C]...];
[ASCENDING|DESCENDING][常用子句];