资源描述
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作用:主要用于打开浏览窗口,查阅表文件并同时进行修改。格式:BROWSE6、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)定位记录。格式:GOTO RECORD n|TOP|BOTTOMnSKIP +|-说明:第一个命令又叫绝对定位,其中,RECORD n定位到n号记录,TOP定位到第1个记录,BOTTOM定位到最后一个记录。第二个命令定位到第n个记录,n是一个数值。第三个命令又叫相对定位,它以当前记录为基准前移(-)或后移(+)n个记录,不选任选项,则默认记录指针后移一个记录。9、CHANGE和EDIT作用:显示要编辑或修改的字段。格式:CHANGE|EDIT FIELDS WHILE FOR 10、BROWSE作用:打开一个浏览窗口,供用户浏览或修改记录。格式:BROWSE FIELDS 11、REPLACE作用:用表达式的值代替命令中与之相对应的字段的内容。格式:REPLACE WITH , WITH FOR WHILE12、DELETE、PACK、ZAP和RECALL作用:分别是给要删除的记录作删除标记、彻底删除、删除所有记录和取消被选中的表记录的删除标志。格式:DELETE WHILE FOR (特例:DELETE FILE FILENAME.DBF,该命令删除指定的表文件)PACKZAPRECALL FOR WHILE推荐精选13、SORT和INDEX作用:分别是建立一个其记录以新的物理顺序排列的新表文件和对当前表根据关键字表达式的值从小到大排列,并存入TO后指定的索引文件名的文件或复合索引文件的一个标识中。格式:SORT TO ON /A /C /D, /A /C /D.ASCENDING|DESCENDING FOR WHILE FIELDSINDEX 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 WHILECONTINUE说明: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.71828FLOOR() =自变量的最大整数INT() 取整(舍尾)自变量LOG() 自变量的自然对数,ln xLOG10() 自变量的普通对数,lg xMAX(,) 两个值的最大值MIN(,) 两个值的最小值MOD(,) 求余数RAND() 返回伪随机数ROUND(,) 四舍五入第一个自变量SIGN() 自变量的符号SQRT() 平方根(正根)2、字符串操作函数函数 用途& 用于代替内存变量内容LEN() 返回字符串表达式的字符个数SPACE() 生成空格SUBSTR(,) 求子字符串,从指定的字符串表达式第n个开始,总长为L的字符串LOWER() 将字符串字母转换成小写字母UPPER() 将字符串字母转换成大写字母TRIM() 删除字符串尾空格ASC() 返回字符串表达式最左边的第一个字符的ASCII码CHR() 将数值表达式转换成字符AT(,) 确定字符串表达式1在字符串表达式2中的位置,n为字符串表达式第几次出现STR(,) 将数值转换为字符串,L为数值表达式总长,n为小数位数VAL() 将数字字符串转换为数字TYPE() 检测表达式值的数据类型LTRIM() 删除字符串左部空格RTRIM() 删除字符串右部空格推荐精选LEFT(,) 取字符串左边部分字符,n为返回的字符个数RIGHT(,) 取字符串右边部分字符,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 ELSEENDIF说明:如果条件为真,执行命令语句组1,否则执行命令语句组2。(3)IF IF ELSEENDIF.ELSEENDIF说明:进行多重条件的嵌套选择。(4)DO CASECASE CASE CASE .CASE OTHERWISEENDCASE说明:依次判断条件,转入条件为真的命令语句组中执行。当所有条件都不成立时,若有OTHERWISE项,则执行命令语句组N+1,否则执行ENDCASE后面的语句。2、循环语句格式:(1)DO WHILE 推荐精选LOOPEXITENDDO说明:判断条件是否为真,如为真就重复执行循环体中的命令语句组,直到条件为假,结束循环。(2)SCANENDSCAN说明:在一个表中建立一个执行命令语句组的循环,并执行对每一条记录的操作,直到表文件记录完为止。VFP常用函数使用说明1、数值运算函数函数 操作 例 结果SQRT(x) 求平方根 SQRT(9) 3INT(x) 取整数 INT(3.14) 3ROUND(x) 四舍五入 ROUND(3.14159,4) 3.1416MOD(x,y) 求X除以Y的余数 MOD(25,4) 1MAX(x,y) 求X,Y中的最大值 MAX(7,8) 8MIN(x,y) 求X,Y中的最小值 MIN(1,2,3) 12、字符中操作函数函数名 操作 例 结果UPPER(S) 小写字母 UPPER(abc) ABCLOWER(S) 大写字母 LOWER(ACD) acdLEN(S) 求字符串的长度 LEN(中国1号) 7AT(S1,S2) 在字符串S2,找字符串S1 AT(H,CHINA) 2SUBSTR(S,I,N) 在S字符串中的第I个字符起取N个字符 SUBSTR(TECHNOLO,3,3) CHNLEFT(S,N) 从字符串S左边取N个字符 LEFT(中国人,4) 中国RIGHT(S,N) 从字符串S右边取N个字符 S=12345RIGHT(S,3) 345SPACE(N) 生成N个空格 合计+SPACE(2)+123 合计123TRIM(S) 消除字符串尾部空格 TRIM(姓名 ) 姓名ALLTRI(S) 消除字符串中所有空格 ALLTRIM(李 丽) 李丽STUFF(S1,N1,N2,S2) 用字符串S2替换S1中第N1个字符起的N2个字符 STUFF(NOW,2,1,E) NEW& 宏替换 P=G2USE &P USE G2推荐精选3、日期和时间函数函数名 操作 例 结果DATE() 求当前日期 DATE() 2001/11/12DATETIME() 求当前日期和时间 DATETIME() 2001/11/12/0:22:33amYEAR(D) 求年份 YEAR(DATE() 2001MONTH(D) 求月份(数值) MONTH(DATETIME() 11CMONTH(D) 求月份(字符) MONTH(DATETIME() NovenberDAY(D) 求日期 DAY(DATE() 12DOW(D) 求星期几(数值) DOW(DATE() 1CDOW(D) 求星期几(英文) CDOW(DATE() sundayTIME(D) 求当前时间 TIME(DATE() 10:20:38am4、数据类型转换函数 函数名 操作 例 结果ASC(S) 求第一个字符串的ASCII码 ASC(what) 87CHR(N) 求ASCII码的字符 CHR(87) wSTR(R,L,D) 数值转换成字符,L为长度,D为小数位数 X=3.1415STR(X,6,2) 3.14VAL(S) 字符串转换为数值 VAL(123) 123.00CTOD(S) 字符串转日期 CTOD(11/01/2002) 11/01/2002DTOC(D) 日期转换成字符串 DTOC(DATE() 11/01/2002DTOS(D) 把日期转成年月日式的字符串 DTOS(DATE() 20021101CTOT(C) 字符串转成日期时间型 CTOT(11/01/2002 10:30:50am) 11/01/2002 10:30:50amDTOT(D) 日期型转为日期时间型 DTOT(DATE() 11/25/2001 00:00:01amTTOC(T) 日期时间型转为字符型 TTOC(DATETIME() 11/25/2001 00:00:01amTTOD(T) 日期时间型转为日期型 TTOD(DATETIME() 11/25/2001IIF(LE,E1,E2) 逻辑判断 IIF(A0,YES,NO) YES5、检测函数 函数名 操作 例 结果RECNO() 检测当前记录号 RECNO() 1RECCOUNT() 检测当前记录数 RECCOUNT() 12BOF() 开始记录 BOF() 1EOF() 最后记录 EOF() 12FOUND() 返回查找结果 FOUND() .T.ROW() 返回当前行坐标 ROW() 1COL() 返回当前列坐 (注:可编辑下载,若有不当之处,请指正,谢谢!) 推荐精选
展开阅读全文