搜档网
当前位置:搜档网 › 2021年VFP命令大全

2021年VFP命令大全

2021年VFP命令大全
2021年VFP命令大全

VFP命令、函数及程序语句大全(一)

欧阳光明(2021.03.07)

学过VFP(Microsoft Visual FoxPro)的朋友都知道它是微软公司开发的数据库管理系统。它经历了从dBASE、FoxBASE、FoxPro直到VFP的发展过程。本文便以VFP 6.0为例介绍它的命令、函数及程序语句,为学习VFP的朋友提供必要的学习参考,也为已经精通VFP的朋友提供复习的好机会。一主要命令: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、in 在这个条件里

2、not 不在这个条件里

3、and 条件是…和…

4、or 条件为…或者…

Visual FoxPro数据库函数

ADATABASES() 将所有打开数据库的名称和路径放到内存变量数组中

ADBOBJECTS() 把当前数据库中的命名连接名、关系名、表名或sQL视图名放到一个内存变量数组中

AFIELDS() 把当前表的结构信息存放在一个数组中,并且返回表的字段数

ALIAS() 返回当前表或指定工作区衰的别名

ASESSIONS() 创建一个已存在的数据工作期ID数组

ATAGINFO() 创建一个包含索引和键表达式的名字、数量和类型信息的数组

AUSED() 将一个数据工作期中的表别名和工作区存入内存变量数组BOF() 确定当前记录指针是否在表头

CANDIDATE() 判断索引是否为候选索引

CDX() 根据指定的索引位置编号,返回打开的复合索引(.CDX)文件名称

CPDBP() 返回一个打开表所使用的代码页

CREATEOFFLINE() 由已存在的视图创建一个游离视图CURSORGETPROP() 返回VisualFoxPro表或临时表的当前属性设置

CURSORSETPROP() 指定VisualFoxPro表或临时表的属性设置CURSORTOXML() 转换VisualFoxPro临时表为XML文本CURVAL() 从磁盘上的表或远程数据源中直接返回字段值

DBC() 返回当前数据库的名称和路径

DBF() 返回指定工作区中打开的表名,或根据表别名返回表名DBSETPROP() 给当前数据库或当前数据库中的字段、命名连接、表或视图设置一个属性

DELETED() 返回一个表明当前记录是否标有删除标记的逻辑值DESCENDING() 是否用DESCENDING关键字创建了一个索引标识DROPOFFLINE() 放弃对游离视图的所有修改,并把游离视图放回

到数据库中

EOF() 确定记录指针位置是否超出当前表或指定表中的最后一个记录

FCOUNT() 返回衰中的字段数目

FIELD() 根据编号返回表中的字段名

FILTER() 返回SETFILTER命令中指定的表筛选表达式

FLDLIST() 对于SETmELDS命令指定的字段列表,返回其中的字段和计算结果字段表达式

FLOCK() 尝试锁定当前表或指定表

FOR() 返回一个己打开的单项索引文件或索引标识的索引筛选表达式

FOUND() 如果CONTINUE、FIND、LOCATE或SEEK命令执行成功,函数的返回值为"真"

FSIZE() 以字节为单位,返回指定字段或文件的大小GETFLDSTATE() 返回一个数值,标明表或临时表中的字段是否已被编辑,或是否有追加的记录,或者记录的删除状态是否已更改GETNEXTMODIFIED() 返回一个记录号,对应于缓冲表或临时表中下一个被修改的记录

HEADER() 返回当前或指定表文件的表头所占的字节数IDXCOLLATE() 返回索引或索引标识的排序序列

INDBC() 如果指定的数据库对象在当前数据库中,则返回"真"(.T.) INDEXSEEK() 在一个索引表中搜索第一次出现的某个记录ISEXCLUSIVE() 判断一个表或数据库是以独占方式打开的

ISFLOCKED() 返回表的锁定状态

ISREADONLY() 判断是否以只读方式打开表

ISRLOCKED() 返回记录的锁定状态

KEY() 返回索引标识或索引文件的索引关键字表达式KEYMATCH() 在索引标识或索引文件中搜索一个索引关键字LOOKUP() 在表中搜索字段值与指定表达式匹配的第一个记录LUPDATE() 返回一个表最近一次更新的日期

MDX() 根据指定的索引编号返回打开的.CDX复合索引文件名MEMLINES() 返回备注字段中的行数

MLINE() 以字符串形式返回备注字段中的指定行

NDX() 返回为当前表或指定表打开的某一索引(JDX)文件的名称ORDER() 返回当前表或指定表的主控索引文件或标识

PRIMARY() 检查索引标识,如果为主索引标识,就返回"真"(.T.) RECCOUNT() 返回当前或指定表中的记录数目

RECNO() 返回当前表或指定表中的当前记录号

RECSIZE() 返回表中记录的大小(宽度)

REFRESH() 在可更新的SQL视图中刷新数据

RELATION() 返回为给定工作区中打开的表所指定的关系表达式SEEK() 在一个已建立索引的表中搜索一个记录的第一次出现位置SELECT() 返回当前工作区编号或未使用工作区的最大编号SETFLDSTATE() 为表或临时表中的字段或记录指定字段状态值或删除状态值

SQLCANCEL() 请求取消一条正在执行的SQL语句

SQLCOLUMNS() 把指定数据源表的列名和关于每列的信息存储到一个VisualFoxPro临时表中

SQLCOMMIT() 提交一个事务

SQLCONNECT() 建立一个指向数据源的连接SQLDISCONNECT() 终止与数据源的连接

SQLEXEC() 将一条SQL语句送入数据源中处理

SQLGETPROP() 返回一个活动连接的当前设置或默认设置SQLMORERESULTS() 如果存在多个结果集合,则将另一个结果集合复制到VisualFoxPro临时表中

SQLPREPARE() 在使用SQLEXEC()执行远程数据操作前,可使用本函数使远程数据为将要执行的命令做好准备

SQLROLLBACK() 取消当前事务处理期间所做的任何更改SQLSETPROP() 指定一个活动连接的设置SQLSTRINGCONNECT() 使用一个连接字符串建立和数据源的连接SQLTABLES() 把数据源中的表名存储到VisualFoxPro临时表中SYS(14) 索引表达式

SYS(21) 控制索引编号

SYS(22) 控制标识名或索引名

SYS(2011) 返回当前工作区中记录锁定或表锁定的状态

SYS(2012) 返回表的备注字段块大小

SYS(2021) 筛选索引表达式

SYS(2029) 返回与表类型对应的值

SYS(3054) Rushmore优化等级 ·

TAG() 返回打开的.CDX多项复合索引文件的标识名,或者返回打开的.IDX单项索引文件的文件名

TAGCOUNT() 返回复合索引文件(.CDX)标识以及打开的单项索引文件(.IDX)的数目

TAGNO() 返回复合索引文件(.CDX)标识以及打开的单项索引(.IDX)文件的索引位置

TARGET() 返回一个表的别名,该表是SETRELATION命令的INTO子句所指定关系的目标

UNIQUE() 用于测试索引是否以惟一性方式建立

UPDATED() 用于测试在最近的READ命令中,数据是否已被修改USED() 确定是否在指定工作区中打开了一个表XMLTOCURSOR() 转换XML文本到VisualFoxPro游标或表

-------Visual FoxPro日期和时间函数

CTOD()把字符表达式转换成日期表达式。

CDOW()从给定日期或日期时间表达式中返回星期值。

CMONTH()返回给定日期或日期时间表达式的月份名称。

CTOD()把字符表达式转换成日期表达式。

CTOT()从字符表达式返回一个日期时间值。

DATE()返回由操作系统控件的当前系统日期,或创建一个与2000年兼容的日期值。

DATETIME()以日期时间值返回当前的日期和时间, 或创建一个2000 兼容的日期时间值。

DAY()以数值型返回给定日期表达式或日期时间表达式是某月中的

第几天。

DMY()从一个日期型或日期时间型表达式返回一个“日-月-年”格式的字符表达式(例如,31 May 1995)。月名不缩写。

DTOC()由日期或日期时间表达式返回字符型日期。

DTOS()从指定日期或日期时间表达式中返回yyyymmdd 格式的字符串日期。

DTOT()从日期型表达式返回日期时间型值。

GOMONTH()对于给定的日期表达式或日期时间表达式,返回指定月份数目以前或以后的日期。

HOUR()返回日期时间表达式的小时部分。

MDY()以“月-日-年”格式返回指定日期或日期时间表达式,其中月份名不缩写。

MINUTE()返回日期时间型表达式中的分钟部分。

MONTH()返回给定日期或日期时间表达式的月份值。

QUARTER()返回一个日期或日期时间表达式中的季度值。

SEC()返回日期时间型表达式中的秒钟部分。

SECONDS()以秒为单位返回自午夜以来经过的时间。

SYS(1)以日期数字字符串的形式返回当前系统日期。

SYS(2)返回自午夜零点开始以来的时间,按秒计算。

SYS(10)将 (Julian) 日期转换成一个字符串。

SYS(11)将日期格式表示的日期表达式或字符串转换成(Julian) 日期。

TIME()以 24 小时制、8 位字符串(时:分:秒)格式返回当前系统时

间。

TTOC()从日期时间表达式中返回一个字符值。

TTOD()从日期时间表达式中返回一个日期值。

WEEK()从日期表达式或日期时间表达式中返回代表一年中第几周的数值。

YEAR()从指定的日期表达式中返回年份。

Visual FoxPro字符函数

ALLTRIM().删除指定字符表达式的前后空格符

ASC() 返回字符表达式中最左边字符的ANSI值

AT() 返回一个字符表达式或备注字段在另一个字符表达式或备注字段中首次出现的位置

AT_C() 返回一个字符表达式或备注字段在另一个字符表达式或备注字段中首次出现的位置

ATC() 返回一个字符表达式或备注字段在另一个字符表达式或备注字段中首次出现的位置

ATCC() 返回一个字符表达式或备注字段在另一个字符表达式或备注字段中首次出现的位置

ADDBS() 如果必要,向一个路径表达式添加一个反斜杠ATCLINE() 返回一个字符表达式或备注字段在另一个字符表达式或备注字段中第一次出现的行号

ATLINE() 返回一个字符表达式或备注字段在另一个字符表达式或备注字段中首次出现的行号

BETWEEN() 判断一个表达式的值是否在另外两个相同数据类型的

表达式的值之间

CHR() 根据指定的ANSI数值代码返回其对应的字符

CHRTRAN() 将第一个字符表达式中与第二个表达式的字符相匹配的字符替换为第3个表达式中相应的字符

CHRTRANC() 将第一个字符表达式中与第二个表达式的字符相匹配的字符替换为第3个表达式中相应的字符

CPCONVERT() 把字符、备注字段或字符表达式转换到其他代码页CHRSAW() 确定一个字符是否出现在键盘缓冲区中

CHRTRAN() 在一个字符表达式中,把与第二个表达式字符相匹配的字符替换为第三个表达式中相应字符

CHRTRANC() 将第一个字符表达式中与第二个表达式的字符相匹配的字符替换为第三个表达式中相应的字符

DIFFERENCE() 返回0到4间的一个整数,表示两个字符表达式间的相对语音差别

EMPTY() 确定表达式是否为空值

GErWORDCOUNr() 计数一个中中的单词数

GETWORDNUM() 从一个串中返回一个指定的词

INLIST() 判断一个表达式是否与一组表达式中的某一个相匹配 ' ISALPHA() 判断字符表达式的最左边一个字符是否为字母ISBLANK() 判断表达式是否为空值

ISDIGIT() 判断字符表达式的最左边一个字符是否为数字(0到9) ISLEADBYTE() 如果字符表达式第一个字符的第一个字节是前导字节,则返回"真"(.T.)

ISLOWER() 判断字符表达式最左边的字符是否为小写字母ISMOUSE() 判断计算机是否具有鼠标

ISNULL() 判断计算结果是否为NULL值

ISUPPER() 判断字符表达式的第一个字符是否为大写字母(A~z) LEFT() ·从字符表达式最左边一个字符开始返回指定数目的字符LEPTC() 从字符表达式最左边一个字符开始返回指定数目的字符LEN() 返回字符表达式中字符的数目

LENC() 返回字符表达式中字待的数目

LIKE() 确定一个字符表达式是否与另一个字符表达式相匹配LIKEC() 决定一个字符表达式是否与另一个字符表达式相匹配LOWER() 以小写字母形式返回指定的字符表达式

LTRIM() 删除指定的字符表达式的前导空格,然后返回得到的表达式

OCCURS() 返回一个字符表达式在另一个字符表达式中出现的次数OEMTOANSI() 用于将字符串表达式中的字符转换成与其相对应的ANSI字符集中的字符

PADL()、PADR()、PADC() 由一个表达式返回一个字符中,并从左边,右边或同时从两边用空格或字符把该字符串填充到指定长度PROPER() 从字符表达式中返回一个字符串,字符串中的每个首字母大写

RAT() 返回一个字符表达式或备注字段在另一个字符表达式或备注字段内第一次出现的位置,从最右边的字符算起

RATC() 返回一个字符表达式在另-个字符表达式或备注字段最后一

次出现所在的行号,从最后-行算起

RATLINE() 回一个字符表达式或备注字段在另一个字符表达式或备注字段中最后出现的行号,从最后一行开始计数。

REPUCATE() 返回一个字符串,这个字符串是将指定字符表达式重复指定次数后得到的

RIGHT() 从一个字符串的最右边开始返回指定数目的字符RIGHTC() 从一个字符串中返回最右边指定数目的字符

RTRIM() 删除了字符表达式后续空格后,返回结果字符串SOUNDEX() 返回指定的字符表达式的语音表示

SPACE() 返回由指定数目的空格构成的字符串

STR() 返回与指定数值表达式对应的字符

STRCONV() 将字符表达式转换成另一种形式

STREXTRACT() 返回一个两个分隔符间的串

STRTRAN() 在第一个字符表达式或备注字段中,搜索第二个字符表达式或备注字段,并用第3个字符表达-式或备注字段替换每次出现的第2个字符表达式或备注字段

STUFF() 返回一个字符串,此字符串是通过用另一个字符表达式替换现有字符表达式中指定数目的字符得到的

STUFFC() 返回一个字符串,此字符串是通过用另一个字符表达式替换现有字符表达式中指定数目的字符、得到的

SUBSTR() 从给定的字符表达式或备注字段中返回字符串SUBSTRC() 从给定的字符表达式或者备注字段返回字符串

SYS(15) 替换字符串中的字符

SYS(20) 转换德文文本

TEXTMERGE() 提供串表达式的求值。

TRIM() 返回删除全部后缀空格后的指定字符表达式

TXTWIDTH() 按照字体平均字符宽度返回字符表达式的长度TYPE() 计算字符表达式,并返回其内容的数据类型

UPPER() 用大写字母返回指定的字符表达式

---------Visual FoxPro数值函数

ABS() 返回指定数值表达式的绝对值

ACOS() 返回指定数值表达式的反余弦值

ASIN() 返回数值表达式的反正弦弧度值

ATAN() 返回数值表达式的反正切弧度值

ATN2() 返回指定值的反正切值,返回值无象限限制

BINTOC() 将整型用二进制字符型表示。

BITAND() 返回两个数值型数值在按位进行AND运算后的结果BITCLEAR() 清除一个数值型数值的指定位(将此位设置成0),并返回结果值

BITLSHIFr() 返回一个数值型数值向左移动给定位后的结果BrrNOT() 返回一个数值型数值按位进行NOT运算的结果

BITOR() 返回两个数值型数值按位进行OR运算的结果BITRSHIFF() 返回一个数值型数值向右移动指定位后的结果BITSET() 将一个数值型数值的某一位设置为1并返回结果BITTEST() 确定一个数值型数值的指定位是否为1

BITXOR() 返回两个数值型数值按位进行异或运算的结果

CEILING() 返回大于或等于指定数值表达式的最小整数

COS() 返回数值表达式的余弦值

CTOmN() 将二进制字符型表示转换为整数

DTOR() 将度转换为弧度

EVALUATE() 计算字符表达式的值并返回结果

EVL() 从两个表达式中返回一个非空值

EXP() 返回eAx的值,其中x是某个给定的数值型表达式

FLOOR() 对于给定的数值型表达式值,返回小于或等于它的最大整数

FV() 返回一笔金融投资的未来值

INT() 计算一个数值表达式的值,并返回其整数部分

LOG() 返回给定数值表达式的自然对数(底数为c)

LOGl0() 返回给定数值表达式的常用对数(以10为底) ·

MAX() 对几个表达式求值,并返回具有最大值的表达式

MIN() 计算一组表达式,并返回具有最小值的表达式

MOD() 用一个数值表达式去除另一个数值表达式,返回余数MTON() 由一个货币型表达式返回一个数值型值

NORMALIZE() 把用户提供的字符表达式转换为可以与VisualFoxPro函数返回值相比较的格式

NTOM() 由一个数值表达式返回含有四位小数的货币值

NVL() 从两个表达式返回一个非null值

PAYMENT() 返回固定利息贷款按期兑付的每一笔支出数量

PI() 返回数值常数n

PV() 返回某次投资的现值

RAND() 返回一个0到1之间的随机数

ROUND() 返回圆整到指定小数位数的数值表达式

RTOD() 将弧度转化为度

SIGN() 当指定数值表达式的值为正、负或0时,分别返回1、-1或0

SIN() 返回一个角度的正弦值 ·

SQRT() 返回指定数值表达式的平方根

SYS(2007) 返回一个字符表达式的检查求和值

TAN() 返回角度的正切值

VAL() 由数字组成的字符表达式返回数字值

相关主题