VF常用函数
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(内存变量名或数组元素名)?|??命令功能:计算机表达式的值,并输出计算结果。
???命令功能:把结果直接输出到打印机AADD TABLE 命令功能:在当前数据库中添加一个自由表语法:ADD TABLE TableNameALTER 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 命令功能:从一个文件中读入记录,添加到当前表的尾部。
VF惯用指令及考试大纲

VF惯用指令一.常用指令作用:建立一个新的表。
格式:CREATE [<文件>|?](注意,命令字符可取前面四个字符,后面可省略不写,即CREA,下同;中括号表示其中的参数是可选的;|管道符号表示两个参数只能选择一个,不能同时选择,下同。
)说明:文件指建立以.dbf为扩展名的VFP数据库文件,在命令后面加上一个问号表示系统会弹出对话框,要求用户输入想要建立的表名。
在命令中不加文件名或问号系统也会弹出对话框,要求用户输入想要建立的表名。
作用:显示表文件结构,并允许修改此表的结构。
格式:MODIFY STRUCTURE说明:只有在用USE命令打开表文件以后,才能显示或修改表文件的结构。
作用:在当前表的尾部(无论表中有无记录)追加记录(在当前表指当前正使用的表)。
格式:APPEND [BLANK]说明:在APPEND命令后面加上BLANK参数表示在当前表的尾部添加一条空白记录。
无BLANK参数时,表示在当前表的尾部添加一条记录并要求用户输入相应的字段内容。
作用:在表文件中间插入一个新记录。
格式:INSERT [BEFORE] [BLANK]说明:INSERT 在当前记录后插入一记录;INSERT BEFORE 在当前记录前插入一记录;INSERT BEFORE BLANK 在当前记录前插入一空记录。
作用:主要用于打开浏览窗口,查阅表文件并同时进行修改。
格式:BROWSE作用:打开和关闭表文件。
格式:USE [<文件名>]USE说明:前一个命令用来打开<文件名>指定的表文件,该表如有备注型字段,则同时打开相应\的备注文件(.fpt文件);后一个命令关闭当前打开的表文件。
作用:显示表(.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所有的记录。
vf命令函数与表达式

11 设X="11",Y="1122",下列表达式结果为假的是()。
A) NOT(X==Y)AND (X$Y) B) NOT(X$Y)OR (X<>Y) C) NOT(X>=Y) D) NOT(X$Y)参考答案:D【解析】字符串精确比较运算符"==",只有当两个字符串完全相同时,才会是逻辑真,所以X==Y为逻辑假;子串包含测试运算符$,如果运算符前的字符串是运算符后的字符串的一个子字符串,则为逻辑真,所以X$Y为逻辑真;大于等于运算符>=,是对两个字符串自左向右逐个进行比较,一旦发现两个对应字符不同,就根据两个字符的排序序列决定两个字符串的大小,X、Y的前两个字符相同,所以比较第3个字符,由于X只有两个字符,则第3位X小于Y,所以X小于Y,故X>=Y为逻辑假;X<>Y为逻辑真。
由以上可得:A)选项中,由于NOT的优先级高于AND,所以先比较NOT(X==Y)为逻辑真,由于X$Y也为逻辑真,所以NOT(X==Y)AND (X$Y)为逻辑真。
B)选项中,由于NOT 的优先级高于OR,所以先比较NOT(X$Y)为逻辑假,由于X<>Y也为逻辑真,所以NOT(X$Y)OR (X<>Y)为逻辑真。
C)选项中,X>=Y为逻辑假,则NOT(X>=Y)为逻辑真。
D)选项中,X$Y也为逻辑真,则NOT(X$Y)为逻辑假。
12 以下是与设置系统菜单有关的命令,其中错误的是()。
A) SET SYSMENU DEFAULT B) SET SYSMENU TO DEFAULTC) SET SYSMENU NOSA VE D) SET SYSMENU SA VE 参考答案:A【解析】设置系统菜单的命令格式:SET SYSMENU ON | OFF | AUTOMA TIC | TO[<>]| TO[<>]| TO[<>]| SA VE | NOSA VE。
实验三 VF的表达式和函数

实验三VF的表达式和函数一实验目的1、练习掌握VF表达式的使用方法。
2、练习掌握VF函数的使用方法。
二实验内容1、已知:x=5 y=6 计算z=(x3+3x2y+y3)/(2x+3y)x=5y=6z=(x^3+3*x^2*y+y^3)/(2*x+3*y)?x,y,z2、显示”我是辽宁科技大学”+”的学生”? ”我是辽宁科技大学”+”的学生”3、”我是辽宁科技大学”-”的学生”?”我是辽宁科技大学”-”的学生”4、已知:x=5;y=10 计算z=(x2+3xy+y2)/(x+y)x=5y=10z=(x^2+3*x*y+y^2)/(x+y)?x,y,z5、显示”辽宁科技大学”+”高职院”?”辽宁科技大学”+”高职院”6、显示”辽宁科技大学”-”高职院”?”辽宁科技大学”-”高职院”7、显示{^1998/11/01}+10并说明其实际意义? {^1998/11/01}+10实际含义:1998年11月1日10天以后的日期8、显示{^1998/11/01}-10并说明其实际意义?{^1998/11/01}-10实际含义:1998年11月1日10天以前的日期9、显示{^1998/11/01 10:20:30}+100并说明其实际意义?{^1998/11/01 10:20:30}+100实际含义:10、显示{^1998/11/01 10:20:30}-100并说明其实际意义?{^1998/11/01 10:20:30}-10实际含义:11、{^2006/09/24}-{^1998/11/01}并说明其实际意义?{^2006/09/24}-{^1998/11/01}实际含义:12、{^2011/09/24 0:0:0 }-{^1998/11/01 10:20:30}并说明其实际意义?{^2011/09/24 0:0:0 }-{^1998/11/01 10:20:30}实际含义:13、显示11>12的值?11>1214、比较今天与昨天的大小?{^2010/03/22}>{^2010/03/23}15、比较”张三”与”李四”的大小?”张三”>”李四”16、变量x任意取一个数值,试判断x是否在10与20之间x=12?x>10 and x<2017、完成赋值操作:X为-123.45,Y的值为X的绝对值x=-123.45y=abs(x)?x?y18、完成赋值操作:Z的值为X的绝对值的平方根。
VF常用命令和程序命令

VF常用命令和程序命令一、主要命令:1、CREATE作用:建立一个新的表。
格式:CREATE [<文件>|?](注意,命令字符可取前面四个字符,后面可省略不写,即CREA,下同;中括号表示其中的参数是可选的;|符号表示两个参数只能选择一个,不能同时选择,下同。
说明:文件指建立以.dbf为扩展名的VFP数据库文件,在命令后面加上一个问号表示系统会弹出对话框,要求用户输入想要建立的表名。
在命令中不加文件名或问号系统也会弹出对话框,要求用户输入想要建立的表名。
例:create d:\student说明:在D盘下建立一个名为student的表文件。
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 d:\student说明:打开D盘下名为student的表文件USE ,表打开后不能看到表数据内容,通过显示菜单进行浏览。
作用:关闭当前打开的表文件。
VF的命令表达式和函数

LIST ALL FOR LEFT(姓名,2) = «王〃・AND.年龄>20 LIST REST FOR . NOT.团员 REPLACE ALL FOR GZ WITH GZ+120 ;
FOR工作时间<「1988-12-31}.OR.职称=«教
授力
日期运算和函数: +-
注意:表达式的数据类型必须一致
变量:在程序运行过程中,其值会发生变化 的 量,分为内存变量和亭段变量。介绍 内存变 量
•变量名:以字母,汉字或下划线开始的 10 个以内的符号,一旦定义,就
在存储器中开辟相应的存储空间,符号 化 的地址。
•变量赋值: X=345
I /II
, FIE_34= «太
M
s
制
S
,
3 8
黑8 S —H
IS SI Iq
日期-日期=整数(天数) 日期+整数二日期 日期-整数二日期
分析下列命令序列:
Count all for year ( 出 身 年 月 ) = 1 9 7 2 to n Locate all for 姓名=«张山〃 卬预付款-(date 。-入住肘间)*168 ? n ? Day (date ()) ? Month (date())
I
-
J
-
旧
咀
昭
邮
制
s
T I
V
I
皆
番g T
<
坦I
8
S
V
I s也
S I
vs
H J
挡
v
贸£
-目
瓯
m g N
邮
算术运算和函数(对数字型数据) + - * / ** 或" %
VFP函数和操作命令
•求整函数–int (<数值表达式>) 功能:返回整数部分–Ceiling (<数值表达式>) 功能:返回大于或等于它的最小数–floor (<数值表达式>)功能:返回小于或大于它的最大数•四舍五入函数–round (<数值表达式1>,<数值表达式2>)•求字符串函数–len (<字符表达式>) 功能:返回指定字符表达式值的长度•大小写转换函数–lower (<字符表达式>) 功能:字母转成小写,字符不变–Upper (<字符表达式>)功能:字母转成大写,字符不变•空格字符串生成函数–space(<数值表达式>)功能:返回由指定数目的空格组成的字符串。
•删除前后空格函数–rtrim (<字符表达式>)功能:去掉尾部空格后形成的字符串–Ltrim (<字符表达式>)功能:去掉前导空格后形成的字符串–alltrim (<字符表达式>)功能:去掉前导和尾部空格形成的字符串•求子串函数–left (<字符表达式>,<长度>) 功能:取左边–Right (<字符表达式>,<长度>)功能:取右边–substr (<字符表达式>,<起始位置>,<长度>) 功能:从起始开始取起,作为函数值•日期和时间函数–date () 功能:返回系统当前日期,函数值:日期型–Time () 功能:以hh:mm:ss格式返回当前时间,为字符型–Datetime () 功能:返回当前日期时间,函数值:日期型•求年份、月份、天数函数(返回值:数值型)–year (<日期表达式>|<日期时间表达式>):从指定日期当中返回年份–Month (<日期表达式>|<日期时间表达式>):从指定日期当中返回月份–Day (<日期表达式>|<日期时间表达式>):从指定日期当中返回天数•时、分、秒函数(函数值:数值型)–hour (<日期时间表达式>) 功能:返回小时部分–Minute (<日期时间表达式>)功能:返回分钟部分–Sec (<日期时间表达式>)功能:返回秒数部分•数值转换成字符串–str (<数值表达式>[,<长度>[,<小数位数>]]):将<数值表达式>的值转成字符串,转换时根据需要自动四舍五入。
VF的数据及其运算
M.内存变量名 M->内存变量名
22
VF的数据类型---变量
(1)内存变量的赋值 给内存变量赋值的命令有两种格式:
<内存变量>=<表达式> STORE <表达式> TO <内存变量表>
23
VF的数据类型---变量
2
VF的数据类型
1.字符型
中文、英文、数 字和其它ASCII字
符
文字数据类型
用字母C表示
长度范围是0~254个字符。
3
VF的数据类型
小数点、数字和 正负号
2.数值型
表示数量
用字母N表示
在内存中占8字节
若一个字段变量是数值型,数据位长为20
4
VF的数据类型 3.货币型
表示货币值 用字母Y表示 在内存中占8字节
VF的内部函数—数值函数
7. 四舍五入函数 格式:ROUND(<数值型表达式1>,<数值型表达式2>) 注意:当表达式2的符号为负时,函数值的计算方法:
我们以小数点为分界,向小数点左边移动。如round(5.123,1)就从第-1位(也就是5所在的位置)开始四舍五入,5>=5,所 以入上去一位,结果为10。
当表达式2的值大于小数点前的数据数—数值函数 8. 求最大值和最小值函数 格式:MAX(<表达式1>),<表达式2>,…, <表达式n>) MIN(<表达式1>,<表达式2>,…, <表达式n>)
41
VF的内部函数—数值函数
9.π函数 格式:PI() 功能:返回圆周率π的近似值。
VFP6.0_数据与数据运算
2、内存变量的基本操作(P31) 赋值:格式1:store 表达式 to 内存变量表 格式2:内存变量名 = 表达式 显示:显示所有内存变量:display/list memory [like 通配符] [to print] [to file (文件名)] 显示指定内存变量的值:?/?? 内存变量名清单 保存:存储内存变量的文件称为内存文件,扩展名为.mem save to 内存文件名 [all like/all except <通配符>] 恢复:restore from 内存文件名 [additive] 清除:清除所有内存变量:clear memory 清除部分内存变量:release 内存变量名清单 release [all like/all except <通 配符>] 例题:3.1-3.5
字符型(Character):由汉字、字母、数字、空格、符号等任意 ASCII码字符组成,字符型数据的长度为1-254,每个字符占1个字节, 每个汉字占2个字节。 货币型(Currency):用于储存货币值的数据。货币型数据最多只 能保留到小数点后4位,超过,则会四舍五入,不足四位,则自动在后 面补0。表示范围:-922337203685477.5808 ~ 922337203685477.5809。 数值型(Numeric):用于存储一个数量,由正负号、小数点、数字 组成。Visual FoxPro 6.0对数值型支持十进制和十六进制两种方式, 在表中占1~20个宽度。取值范围为-0.9999999999E+19-0.9999999999E+20
3.3 常用函数
3、日期和时间函数 求系统日期:date( ) 求系统时间:time( ) 求系统日期时间:datetime( ) 求年:year(日期型数据) 求月:month(日期型数据) 求日:day(日期型数据) 求时:hour(日期时间型数据) 求分:minute(日期时间型数据) 求秒:stc(日期时间型数据) 例:函数的运用 计算现在2008年奥运会开幕式还有多少天,合多少年,多 少周?
VF数据库命令与函数
数据库命令与函数<>尖括号括起来的句子是必选项,不输入尖括号。
[]方括号括起来的句子是可选项,如果不选择可选项,按默认值处理。
|竖线号表示前后两项任选一项,且只能选择一项……省略号按照前项相同方式重复。
第一章:显示数据命令:?[数据列表]使用命令获取帮助信息:HELP<帮助主题>算数运算符:+ 加法、- 减法、* 乘法、/ 除法、^ 或 ** 乘方、% 求余。
关系运算符:> 大于、>= 大于等于、< 小于、<= 小于等于、= 等于 == 恒等于、<>或!=或# 不等于、$ 包含于(仅用于字符)逻辑运算符:逻辑非 NOT或!、逻辑与AND、逻辑或OR。
1给单个变量赋值:<内存变量值>=<表达式>2给多个变量赋值:STORE <表达式> TO <内存变量表>3显示内存变量:DISPLAY MEMORY [LIKE 变量通配名]4删除所有用户自定义内存变量CLEAR MEMORY5删除指定的用户自定义内存变量RELEASE <内存变量表>1定义一维数组或二维数组命令DECLARE<数组名1>(行[,列])[,数组名2(行[,列])…]常用函数:(1)数值函数:ABS(数值表达式)绝对值函数INT(数值表达式)取整函数ROUND(数值表达式,有效位数)四舍五入函数SQRT(数值表达式) 平方根函数LOG(数值表达式)自然对数函数(2)日期和时间函数DATE() 日期函数YEAR(日期表达式) 年函数MONTH(日期表达式) 月函数DAY(日期表达式) 日函数TIME() 时间函数(3)字符函数SPACE(空格个数) 生成空格函数LTRIM(字符表达式) 删除先导空格函数RTRIM(字符表达式) 删除尾随空格函数ALLTRIM(字符表达式) 删除先导和尾随函数LEFT(字符表达式,字符个数) 左子串函数RIGHT(数值表达式,字符个数) 右子串函数SUBSTR(字符表达式,起始位置[,字符个数]) 子字符串函数(4)测试函数LEN(字符型表达式) 测试字符串长度函数EMPTY(表达式) 测试数据是否为空函数TYPE(“表达式”) 测试数据类型函数BETWEEN(表达式1,表达式2,表达式3) 测试数据范围函数(5)转换函数STR(数值表达式[,长度[,小数位数]])数值转换为字符函数VAL(字符表达式) 字符转换为数值函数CTOD(字符表达式) 字符转换为日期函数DTOC(日期表达式[,1]) 日期转换为字符函数UPPER(字符表达式) 小写转换为大写函数LOWER(字符表达式) 大写转换为小写函数ASC字符表达式) 字符转换为ASCII函数CHR(数值表达式) ASCII转化为字符函数(6)其他函数MAX(表达式1,表达式2,表达式3) 最大值函数MIN(表达式1,表达式2,表达式3) 最小值函数第二章2创建表的命令:CREATE<表文件名>3创建表的SQ命令CREATE TABLE|DBF <表文件名> (<字段名><类型>[(宽度[,小数位数])[,字段名…])4复制表的命令COPY TO <表文件名>[FIELDS 字段列表][FOR 条件]5复制表结构的命令COPY STRUCTURE TO <表文件名> [FIELDS 字段列表]1使用命令创建数据库CREATE DATABASE <数据库名>2使用命令打开数据库OPEN DATABASE <数据库名>3设置当前数据库SET DATABASE TO [数据库名]4关闭当前数据库CLOSE DATABASE5关闭所有打开的文件CLOSE ALL1使用命令打开表USE <表文件名> [IN 工作区号] [ALIAS 别名]2使用命令关闭表USE [工作区号|别名]3使用命令显示表的结构DISPLAY STRUCTURE4使用命令浏览编辑数据BROWSE [FIELDS 字段列表][FOR 条件][FREEZE 字段名][LOCK 锁定字段数][NOAPPEND][NODELETE][NOEDIT]5绝对移动记录指针命令GO TOP|BOTTOM|<记录号>相对移动记录指针命令SKIP[记录数]测试当前记录号的函数RECNO()测试记录总数的函数RECCOUNT()数据显示命令DISPLAY [ALL][FIELDS 字段列表]追加记录,命令APPEND [BLANK]追加记录的SQL命令INSERT INTO <表名> [(<字段名列表>)] VALUES (<表达式列表>)使用命令从表文件追加记录APPEND FROM <表文件名> [FIELDS 字段列表] [FOR 条件]使用命令逻辑删除记录DELETE [ALL] [FOR 条件]逻辑删除记录的SQL命令DELETE FORM <表文件名> [WHERE 条件]测试记录是否有删除标记的函数DELETE()使用命令取消记录的删除标记REACLL [ALL] [FOR 条件]使用命令物理删除记录PACK物理删除所有记录命令ZAP成批替换数据REPLACE <字段名1> WITH <表达式1>[,<字段名2> WITH <表达式2>…] [ALL][FOR 条件]更换数据的SQL命令UPDATE <表文件名> SET <字段名1>=<表达式1>[,<字段名2>=<表达式2>…] [WHERE 条件]使用命令创建索引INDEX ON <关键字> TAG <索引名> [OF 符合索引文件名] [FOR 条件] [DESCENDING]打开索引文件:SET INDEX TO<索引文件列表>使用命令指定当前索引SET ORDER TO<索引名>[OF 索引文件名]使用命令维护索引REINDEX使用命令检索数据LOCATE FOR <条件>继续检索命令CONTINUE测试检索是否成功的函数FOUND()测试指针是否在文件尾的命令EOF()求和命令SUM[表达式列表][FOR条件]求平均值命令AVERAGE[表达式列表][FOR条件]使用命令创建表之间的一对一关系SET RELATION TO[关键字 INTO 别名]使用命令创建表之间一对多关系SET SKIP TO <别名>使用命令运行查询DO <查询文件名>使用命令打开查询文件MODIFY QUERY <查询文件名>查询数据的SQL命令SELECT [DISTINCT][输出数量]<查询项列表>FROM <数据源>[WHERE 条件][GROUP BY 分组项列表][HAVING 条件][ORDER BY 排序项列表][输出对象]查询数据SELECT基本格式SELECT <字段列表>FROM [数据库名!]<表名>字符通配符LIKE”?”表示该位置可以匹配任何一个字符“*”表示该位置可以匹配零个或者多个字符查询结果排序ORDER BY 排序项1 [ASC|DESC][,排序项2[ASC|DESC]…] 简单的计算查询COUNT函数:计算SUM函数:求和AVG函数:求平均值MAX函数:求最大值MIN函数:求最小值指定输出的记录数TOP n[PERCENT]指定查询去向INTO 目标|TO FILE 文件名 [ADDITIVE][TO PRINTER|TO SCREEN] 指定两个表之间联接条件[数据库名]<表名>[INNER|LEFT|RIGHT|FULL]JOIN[数据库名!]<表名>[ON联接条件]使用命令创建视图CREATE VIEW <视图名> AS <查询语句>删除视图的SQL命令DROP VIEW <视图名>使用命令创建程序MODIFY COMMAND<程序文件名>运行程序DO <程序文件名>添加注释*|NOTE <命令行>清屏命令CLEAR输入字符命令ACCEPT [提示信息] TO <内存变量>输入表达式命令INPUT [提示信息] TO <内存变量>输入单字符命令WAIT [提示信息] [TO 内存变量] [WINDOW][TIMEOUT 时间]格式化输出命令@<行,列> SAY <显示信息>格式化输入@<行,列> [SAY 显示信息] GET <变量>格式化输入命令需要与READ命令共同使用,才能激活命令中的变量,接收输入的数据.测试行坐标的函数ROW()测试列坐标的函数COL()设置会话状态命令SET TALK ON|OFF设置文件保护命令SET SAFETY ON|OFF清除内存变量命令CLEAR ALL单分支选择结构IF<条件><语句组>ENDIF双分支选择结构IF<条件><语句组1>ELSE<语句组2>ENDIF多分支选择结构DO CASECASE<条件1><语句组1>CASE<条件2><语句组2>…CASE<条件n><语句组n>[OTHERWISH语句组]ENDCASE基于条件的循环DO WHILE<条件><语句组>ENDDO针对记录的循环SCAN[FOR 条件]<语句组>ENDSCAN针对次数的循环FOR<变量>=<初值>TO<终值>[STEP 步长] <语句组>ENDFOR终止本次循环命令LOOP结束循环命令EXIT定义过程PROCEDURE<过程名><语句组>ENDPROC打开与关闭过程文件命令SET PROCEDURE TO[过程文件名] 过程传递参数命令DO<程序名|过程名>[WITH 参数表] 接收参数命令PARAMETERS<参数表>。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
常用函数ABS():返回一个数值表达式的绝对值。
语法:ABS(数值表达式)返回值:数据型示例 ?ABS(5),ABS(-5) &&返回结果均为:5ALLTRIM():去掉字符型表达式开头和结尾的空格。
TRIM():去掉字符型表达式结尾的空格。
语法:ALLTRIM(字符表达式) 返回值:字符型cString=” Visual FoxPro ”?ALLTRIM(cString) &&返回结果为”Visual FoxPro”?TRIM(cstring) &&返回结果为” Visual FoxPro”ASC():返回字符串左边第一个字符的ASCII码值。
语法:ASC(字符表达式)返回值:数值型?ASC('abcdef') &&返回结果为:97AT():返回字符串1在字符串2中首次出现的位置。
语法:AT(cSearchExpression, cExpressionSearched [, nOccurrence])cSearchExpression:字符串1;cExpressionSearched:字符串2;nOccurrence:指定出现的次数(第一次,第二次)返回值:数值型STORE 'Now is the time for all good men' TO gcStringSTORE 'is the' TO gcFindStringCLEAR &&清空屏屏幕内容? AT(gcFindString,gcString) && 显示5STORE 'IS' TO gcFindString? AT(gcFindString,gcString) && 显示0ATC():返回字符串1在字符串2中首次出现的位置。
字母不分大小写。
其他同AT()?ATC(gcFindString,gcString) &&显示5BETWEEN():返回一个表达式的值是否在两个给定的值之间。
语法:BETWEEN(eTestValue, eLowValue, eHighValue)返回值:逻辑型或NULL说明:三个参数的类型必须相同?BETWEEN(8,6,9) &&返回结果为.T.?BETWEEN({^2000-02-},{^1999-01-01},{^2001-01-01} &&返回为.T.BOF():查看表指针是否指向记录的开始标志。
语法:BOF([工作区号|别名]) 返回值:逻辑型CDOW():以字符的形式返回日期(时间)型表达式是星期几Day-Of-Week)。
语法:CDOW(日期表达式| 日期时间表达式)返回值:字符型dVar={^2001-10-01}?CDOW(dVar) &&显示“Monday”CHR():返回给定ASCII值所对应的字符。
语法:CHR(ASCII值) 返回值:字符型?CHR(65) &&显示字符“A”CMONTH():以字符的形式返回日期(时间)型表达式的月份。
语法:CMONTH(日期表达式|日期时间表达式)返回值:字符型?CMONTH({^2001-10-01}) &&显示“October”CTOD():将字符型转成日期型。
语法:CTOD(字符表达式)返回值:日期型SET STRICTDATE TO 0STORE '07/04/1776' TO gcthe_4thCLEAR? CTOD(gcthe_4th)STORE DATE( ) TO gdtodaySTORE CTOD('12/25/95') TO gdchristmasSTORE STR(gdchristmas - gdtoday, 6) TO gddays_left? 'There are', gddays_left, 'days until Christmas'DATE():返回系统当前日期。
语法:DATE()返回值:日期型 ?DATE()DATETIME():返回系统当前日期时间。
语法:DATETIME()返回值:日期时间型?DATETIME() 11/03/03 12:22:22 FMDAY():返回一个日期(时间)型表达式中的“日”。
语法:DAY(日期表达式| 日期时间表达式)返回值:数值型?DAY({^2001-10-01}) &&显示为1DOW():以序号形式返回一个日期是星期几,星期天为1,星期一为2……语法:DOW(日期表达式| 日期时间表达式)返回值:数值型?DOW({^2001-10-01}) &&显示为2DTOC():将日期型转换成字符型。
语法:DTOC(日期表达式| 日期时间表达式[, 1]) 返回值:字符型如选择参数1,则返回的字符串格式为yyyymmdd。
STORE CTOD('10/31/95') TO gdThisDateCLEAR? DTOC(gdThisDate) &&显示为“10/31/95”STORE DTOC({10/31/95}+90) TO gcExpireDate? 'Your 90-day warranty expires ', gcExpireDate? DTOC({10/31/95},1) &&显示为“19951031”EMPTY():测试一个表达式的值是否为空。
对字符型而言,空串和空格串为空;数值型、整型、浮点型、双精度型及货币型中0即为空;空日期和空日期时间也是空。
语法:EMPTY(表达式)返回值:逻辑型EOF():测试表指针是否指向记录的结束标志。
语法:EOF([工作区号| 别名])返回值:逻辑型FCOUNT():返回已打开的表中的字段总数。
语法:FCOUNT([工作区号| 别名])返回值:数值型FIELD():返回一个表中指定序号的字段名。
语法:FIELD(字段序号[, 工作区号| 别名])返回值:字符型USE xsFOR gnCount = 1 TO FCOUNT( )? FIELD(gnCount) &&显示每个字段名NEXTGETCOLOR():打开系统的“颜色”对话框。
结果是一颜色值。
语法:GETCOLOR()返回值:数值型GETDIR():打开系统的“选定目录”对话框。
结果是选定的文件夹的路径。
语法:GETDIR()返回值:字符型GETFILE():打开系统的“打开”对话框。
结果为选定的文件及其路径。
语法:GETFILE()返回值:字符型GETFONT():打开系统的“字体”对话框。
结果为所选定的字体、字形、字号。
语法:GETFONT()返回值:字符型HOUR():返回一个日期时间表达式中的小时。
语法:HOUR(日期时间表达式)返回值:数值型IIF():如果条件成立则返回第一个表达式的值,否则返回第二个表达式的值。
语法:IIF(条件, 表达式1, 表达式2)返回值:字符型、数值型、日期型、日期时间型、货币型a=7b=8?IIF(a>b,"真","假") &&结果为“假”a=17?IIF(a>b,"真","假") &&结果为“真”INT():取一个数值型表达式的整数部分。
语法:INT(数值表达式)返回值:数值型? INT(12.5) && 显示 12? INT(6.25 * 2) && 显示 12? INT(-12.5) && 显示 -12STORE -12.5 TO gnNumber? INT(gnNumber) && 显示 -12LEFT():返回一个字符表达式结果左边的若干字符。
语法:LEFT(字符表达式, 数值表达式)返回值:字符型示例? LEFT('Redmond WA', 4) && 显示“Redm”LEN():返回一个字符串的长度。
语法:LEN(字符表达式)返回值:数值型LOWER():将字符串所有的大写字母转换成小写。
语法:LOWER(字符表达式)返回值:字符型LTRIM():去掉字符串左边(首部)的空格。
语法:LTRIM(字符表达式)返回值:字符型MAX():返回若干个表达式中的最大值。
语法:MAX(表达式1, 表达式2[, 表达式3...])返回值:字符型、数据值、日期(时间)型、货币型、双精度型说明:各表达式的类型须一致。
MESSAGEBOX():显示一个对话框。
(详见学习指导书P.40~42)语法:MESSAGEBOX(提示信息内容[, 按钮及图标类型[, 标题文本]]) 返回值:数值型MIN():返回若干个表达式中的最小值。
语法:MIN(表达式1, 表达式2[, 表达式3...])返回值:字符型、数据值、日期(时间)型、货币型、双精度型说明:各表达式的类型须一致。
MINUTE():返回一个日期时间型表达式中的分钟值。
语法:MINUTE(日期时间表达式)返回值:数值型MOD():计算一个整数整另一个整数后所得的余数。
语法:MOD(被除数, 除数)返回值:数值型说明:结果和除数同号;若被除数与除数同号则表示余几个,若异号则表示差几个。
?MOD(18,5) &&结果为 3?MOD(18,-5) &&结果为 -2?MOD(-18,-5) &&结果为 -3?MOD(-18,5) &&结果为 2MONTH():返回一个日期(时间)表达式中的月份。
语法:MONTH(日期表达式| 日期时间表达式)返回值:数值型PUTFILE():打开系统的“另存为”对话框。
结果为输入的文件名及其路径。
语法:PUTFILE([提示文本] [, 文件名] [, 扩展名])返回值:字符型RAND():返回一个0~1之间的随机数。
语法:RAND([种子数])返回值:数值型RECNO():返回指定工作区中表的当前记录号。
语法:RECNO([工作区号| 别名])返回值:数值型RGB():返回一个由红、绿、蓝三种颜色组成的颜色。
语法:RGB(红色值,绿色值, 蓝色值)说明:三种颜色的值均在0~255之间。
RIGHT():返回一个字符串右边的若干字符。
语法:RIGHT(字符表达式, 数值表达式)返回值:字符型? RIGHT('Redmond, WA', 2) && 显示“WA”ROUND():返回一个在指定小数位上四舍五入后的数。