VFP基础知识

更新时间:2023-03-08 17:09:02 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第二章 VFP基础知识

复习: 1、VF文件类型 (1)项目文件(. PJX) (2)表文件( . DBF)

注:表文件是用于存储数据的二维表。表中的备注型字段保存在同名的备注文件

中。备注文件的扩展名为( . FPT) (3)数据库文件( . DBC) (4)程序文件( . PRG)

注:执行后生成.FXP文件

(5)表单文件( . SCX)

(6)索引文件( . IDX)和复合索引文件( . CDX)

(7)内存变量文件( . MEM)2、思考:用菜单方式设置默认目录与在命令窗口中用“set default to 盘符:\\路径”的方式设置默认目录有什么不同?写出用菜单方式设置默认目录的步骤。 3、DB、DBS、DBMS的关系 4、选择、投影、连接三种运算

5、三种数据模型:层次模型、网状模型、关系模型 6、关系数据库、元组、属性、关键字、域 7、实体完整性、域完整性、参照完整性 8、自由表、数据库表

四川省等级考试大纲相关内容: 2.VFP的数据元素

(1) 常量:数值型、字符型、逻辑型、日期型常量 (2) 变量:字段变量、简单内存变量、数组;

内存变量的保存与恢复;数组的定义

(3) 变量类型:数值型、字符型、逻辑型、日期型、备注型、通用型等 (4) 表达式:表达式的类型及运算顺序 (5) 常用函数:

数值计算函数:ABS( )、INT( )、SQRT( )、MAX( )、MIN( )、ROUND( )、MOD( )等。

字符处理函数:&、ALLTRIM( )、TRIM()、LTRM()、SUBSTR( )、LEFT( )、RIGHT( )、LEN( )、AT( )、SPACE( )、UPPER( )、LOWER( )等。

数据类型转换函数:CTOD( )、DTOC( ) 、VAL( )、STR( )、CHR( )、ASC( )等。 日期处理函数:DATE( )、TIME( )、DAY( )、DOW( )、MONTH( )、YEAR( )等。 测试函数:BOF( )、EOF( )、RECNO( )、FOUND( )、SELECT( )、DELETE( )、TYPE( )等。

其它函数:ROW( )、COL( )、INKEY( )、READKEY( )等。

2.1数据类型

1.字符型(Character,简写为C)

由数字、字母等ASCII字符和汉字组成。最多可达254个字符。 注:字符型数据使用时必须用定界符(“ ”,‘ ’或[ ])括起来。 2. 数值型

在VFP中数值型数据被细分为5种。 (1)数值型(Numeric ,简写N)

由0~9、小数点和正负号组成。最大长度为20位 (2)浮点型数据(Float,简写为 F)

用F(Float)表示,它是数值型数据的一种。增设浮点型数据主要目的是使计算精度提高。

(3)整型数据(Integer,简写为I) (4)双精度型数据(Double,简写为B) (5)货币型数据(Currency,简写 为Y) 3. 日期型(Date,简写为D)

4.日期时间型(Date Time,简写为T)

注:书写时必须按照格式{^MM/DD/YY}或{^YYYY/MM/DD} 5.逻辑型数据(Logic,简写为L) 6.备注型数据(Memo,简写为M)

用于数据中需要进行备注、说明的不定长或大量的字符型数据。

注:备注型数据存放在与表文件同名、扩展名为FPT的备注文件中。表中存放的是指向备注型数据在备注文件中存放的具体位置的指针。 7.通用型(General,简写为G)

用于存放数据表中引入的OLE(对象连接与嵌入)。如文档、表格、图片等。存放

方法和备注型相同 不常用数据类型

8.屏幕型(Screen,简写为S)

用S(Screen)表示,专用于保存屏幕显示信息。

2.2常量

常量

1、概念:指在命令操作或程序运行过程中其值始终保持不变的数据。 2、类型

(1)字符型常量:(定界符 \ 如: \, [菜子花花非黄] (2)数值型常量 -23.5

(3)日期型常量:(定界符{}) 如: {^2009/3/15}(4)逻辑型常量:(定界符.t. .F.) 如: .t.(5)浮点型常量 如:1.58E+10

(6)日期时间型常量 如:{^2009-3-15 10:15:30} 注: 判断常量的唯一标准是定界符!

2.3变量

大纲:(2) 变量:字段变量、简单内存变量、数组;

内存变量的保存与恢复;数组的定义

概念和分类 (1)概念

命令操作和程序运行过程中其值可以改变的量。

(2)分类

分为:字段变量、内存变量、数组变量、系统变量

1、 字段变量

即数据表中的字段,是在建表的时候定义的一类变量。

2、内存变量

(1) 概念:用来保存所需要的常数、中间结果或对数据表和数据库进行某种处理

后的结果。

(2)类型:字符型、数值型、日期型、日期时间型、逻辑型、货币型和屏幕型。 注:当内存变量和字段变量同名时,若要使用内存变量必须在内存变量必须在内存变量前面加“M .”或者“M ->”(3)内存变量的命名规则

可以用数字、字母(大小写通用)、汉字和下画线组成。

注:定义变量名时必须以字母或汉字开头,内存变量名不能与Visual FoxPro的

保留字同名 。

例如:正确: a 、kill123 、ss_ss 、姓命 、中123a_ss

不正确:'sss、1a 、l*ss 、k$ss 、年_@龄 (4)内存变量的赋值

格式: ① STORE <表达式> TO <内存变量名表>

功能:将表达式的值赋给内存变量名表中的一个或多个变量.

例如: STORE 2+3 TO A,B,C

② <内存变量名>=<表达式>

功能:将表达式的值赋给内存变量,同时定义内存变量并确定其类型.

例如: X=“X”(5)内存变量的显示输出命令

①格式: DISPLAY/LIST MEMORY [LIKE <通配符>] [TO PRINTER /TO

FILE < 文件名>]

功能:显示内存变量的当前内容,并可将这些内容打印或送到一个文

本文件中。 例如:X1=12

X2=“12” XYZ=.T. Y=X1

LIST MEMORY LIKE X?

LIST MEMORY LIKE X* 注:DISP是分屏显示,LIST是滚动显示 ②格式:?/??<内存变量名表>

功能:换行或在当前位置显示内存变量名表中每个内存变量的值. 例如:?X1,XYZ

??X2,Y ?XYZ

(6)内存变量的保存与恢复

①保存命令格式:

SAVE TO <内存变量文件名> [ALL LIKE<通配符>/ALL EXCEPT <通配

符>]

功能:将当前内存中的内存变量存放到内存变量文件中 说明:内存变量文件的扩展名为.MEM ②恢复命令格式:

RESTORE FROM <内存变量文件名> [ADDITIVE]

(7)内存变量的删除

格式:①CLEAR MEMORY

②RELEASE 〈内存变量名表〉

③RELEASE ALL [LIKE/EXCEPT〈通配符〉]

3、数组变量 (1)概念

数组变量〈数组〉是按一顶顺序排列的一组内存变量的集合。

(2)数组的定义

格式:DIMENSION/DECLARE 〈数组名1〉(〈数值表达式〉1……) 例如:DIEM A(6),B(3,2)

(3)数组的赋值

注:数组定义好后,数组中的每个数组元素自动被赋予逻辑值 . F. 例如:DIME A(3,4)

STORE 5*6 TO A(1,2),A(3,3) A(1)={^2002/02/03} A(2,4)=[TRU]+?E?

LIST MEMO LIKE A

4、系统变量

由VF自动生成和维护的内存变量,以下画线“_”开头,用于控制输出和显示信

息的格式,其名称由系统规定。

2.4 运算符与表达式 1、算术运算符与数值表达式

参与运算的对象为数值型数据,得到的结果也为数值型数据。 例如:1+ -2=-1 5%2=1 2^3=2**3=8 2、字符运算符与字符表达式

参与运算的对象为数值型数据,得到的结果也为数值型数据。 注:“+”表示原样连接

“-”在连接字符串时会将前面字符串最后的空格移到连接后字符串的最后。

例如(1)?“THI??”+”S” (2) ?” ??THI”+”s” (3)?”THI??”+”??S” 结果为:THI??S ??THIS THI????S

(1)?”THI??”+”S” (2) ?” ??THI”-”s” (3)?”THI??”-”??S” 结果为:THIS?? ??THIS THI??S??

“?”表示空格

3、关系运算符与关系表达式

参与运算的对象类型必须相同或相容,得到的结果为逻辑值 。

注: (1)字符型数据按照相应位置上的两个字符ASCII码值进行比较。汉字按照拼音进行比较。(“A”的ASCII码值为65,“a”的为97)

(2)在SET EXACT OFF状态下,用“=”比较两个字符串时,只要“=”右边的字符串与左边的字符串的左端部分相同,即认为是相等。如是在SET EXACT ON状态下,则要完全相同才是相同。

(3)“$”字符串包含运算符,功能:比较“$”右边的字符串是否包含左边的字符串. 例如:?“abc”$”a”,”a-c”$”abc”,”a”$”ab”输出结果为:.F.,.F.,.T. 4、日期运算符与日期表达式

注:日期型数据只能和整数相加,两个日期型不能进行相加。在和整数做运算时都是那照天来计算 例如:?{^2004/02/29}+20 结果为:2004/03/20

5、逻辑型运算符与逻辑表达式

要求参与运算的对象为逻辑型数据,得到的结果为逻辑型数据。 逻辑运算:真值表。 A B NOT B A .AND. B A .OR. B

.T. .T. . .F. .F. .T. .F. .T. .F. .F. .T. .F. .T. .T. .F. .F. .F. .T. .T. .T. .F.. 结论: 对于and来讲,如果其中一边为.F.,那么结果都为.F. 对于 or 来讲,如果其中一边为.T.,那么结果都为.T. 也就是说可以将.t.->1,.f.->0,and 看做 * ,or看做 + 优先级:not>and>or 例如:x=10

x>23 and “this”==”this” and x>(2+13)/23*11 and (max(12,22)>min(22,22) or x>0)

x>23 and “this”==”this” and x>(2+13)/23*11 and max(12,22)>min(22,22) or x>0

6、运算符及表达式的运算顺序 例2-8 (28页)

200<100+15 AND “AB”+”EFG”>”ABC” OR NOT “Pro” $ ”FoxPro” (1) 先进行算术运算和字符串连接运算:100+15, “AB”+”EFG” ? 200<115 AND “ABEFG” >”ABC” OR NOT “Pro” $ ”FoxPro” (2) 进行<、>比较和包含$运算? .F. AND .T. OR NOT .T. (3) 逻辑NOT AND OR 运算? .F. AND .T. OR .F. ? .F. OR .F. ?.F.

优先次序 先 后 分 类 算术运算符 字串运算符 关系运算符 运算符符号及优先次序 ( )→ **或^ → *, / → +,- 圆括号 乘方 乘 除 加 减 +,- 字符串连接 <, <=, >, >=, <>或#或! =, ==,$ 小于 小于等于 大于 大于等于 不等于 等于 字符串精确比较 字符包含于 ( ) → .NOT.或! → .AND. → .OR. 圆括号 非 与 或

逻辑运算符 思考: ** 50岁以上的女的 ** 性别=”女” and 年龄>50

** 入校总分在450分以上的男同学和在400分以上的女同学 ** 所有基本工资在800元以上的女讲师

2.5常用函数

调用函数格式:<函数名>([参数表]) 使用函数时应注意以下几点:

1、函数名

2、除了&宏函数外,所有函数必须加 () 3、函数的作用 4、函数的参数

5、函数的返回值及其类型

(1)每一个函数必然有一个具有确定数据类型的返回值。 (2)函数可以和其它数据进行操作运算。

(2) 函数所要求的参数也有一定的数据类型,参数类型不匹配时,将会出现语法

错误 (5) 常用函数:

数值计算函数:ABS( )、INT( )、SQRT( )、MAX( )、MIN( )、ROUND( )、MOD( )等。

字符处理函数:&、ALLTRIM( )、TRIM()、LTRM()、SUBSTR( )、LEFT( )、RIGHT( )、LEN( )、AT( )、SPACE( )、UPPER( )、LOWER( )、 STUFF()等。

数据类型转换函数:CTOD( )、DTOC( ) 、VAL( )、STR( )、CHR( )、ASC( )、 LOWER()、UPPER()、等。

日期处理函数:DATE( )、TIME( )、DAY( )、DOW( )、MONTH( )、YEAR( )等。 测试函数:BOF( )、EOF( )、RECNO( )、FOUND( )、SELECT( )、DELETE( )、TYPE( )、 FILE()、DBF()、RECCOUNT()、IIF()等。 其它函数:ROW( )、COL( )、INKEY( )、READKEY( )等。

2.5.1.数值运算函数

(1)求绝对值函数ABS() 【格式】 ABS()

【功能】 返回的绝对值,参数的类型为N型,得到的函数值的类型为N型。 【例如】 输入语句:

?ABS(-13.5),ABS(13.5),ABS(-50)

显示结果: 13.5 13.5 50

注意:语句 ? ||是非格式输出语句,具有计算功能。语句在命令窗口输入。 2)取整函数INT() 【格式】 INT()

【功能】 返回的整数部分。 【例如】 输入语句:

?INT(-8.99+3),INT(26.9),INT(-26.2),INT(26.2) 显示结果: -5 26 -26 26 (3)求四舍五入函数ROUND() 【格式】ROUND(,)

【功能】返回按所指定的保留小数位数进行四舍五入的值。若的值为负,则返回小数点左边为绝对值个数零的整数值。 【例如】: 输入语句:

?ROUND(68.345,2),ROUND(68.745,0),ROUND(68.345,-1),ROUND(68.345,-2) 显示结果: 68.35 69 70 100 (4)求平方根SQRT() 【格式】SQRT() 【功能】返回的平方根。 【说明】的值必须为正数或零。

【例如】 输入语句:?SQRT(25.9),SQRT(8*8),SQRT(ABS(-36)) 显示结果: 5.09 8.00 6.00 (5)求余函数MOD() 【格式】MOD(,)

【功能】返回除以的余数。 【说明】函数值的符号与相同。 【例如】 输入语句:

?MOD(10,3),MOD(-10,-3),MOD(10,-3),MOD(-10,3) 显示结果: 1 -1 2 (6)求指数函数EXP() 【格式】EXP(N)

【功能】返回以e为底,N为幂次的指数值。 【例如】 输入语句:

?EXP(5.5),EXP(1),EXP(-5),EXP(2*2) 显示结果: 244.69 2.72 0.01 54.60 (7)求对数函数LOG() 【格式】LOG()

【功能】返回的自然对数值。 【说明】值必须大于零。 【例如】 输入语句:

?LOG(16.5),LOG(10),LOG(1) 显示结果: 2.80 2.30 0.00 (8)求最大值函数MAX() 【格式】MAX(,[,…])

【功能】返回表达式串,[,…]中的最大值。

【说明】这些表达式必须具有相同数据类型(可以同是字符、数值或日期)。 【例如】 输入语句:

-2

?MAX(-23,3.56,12.8,5*9) ?MAX ('BOOK','PEN','READ')

显示结果: 45 READ &&比较字符的ASCII大小 9)求最小值函数MIN() 【格式】MIN(,[,…])

【功能】返回表达式串,[,…]中的最小值。

【说明】这些表达式必须具有相同数据类型(可以同是字符、数值或日期)。 【例如】 输入语句: ?MIN(-23,3.56,12.8,5*9) ??MIN('BOOK','PEN','READ') 显示结果: -23 BOOK

2.5.2.字符处理函数

(1)宏代换函数& 【格式】&[.]

【功能】将存储在字符型内存变量中的字符串替换出现。此外,利用可选的句号分隔符“.”及,还可将额外的值添在其尾端,而且本身也可以是一个宏。 【例如】输入下列语句序列 Name=“李小红” A1=“你好!&NAME” ?A1

显示结果:你好!李小红 输入语句:

?”你是&NAME吗?”

显示结果:你是&NAME吗? ?“你是&NAME . 吗? ” 显示结果:你是李小红吗? 输入语句序列: A=“123”?&A+123 显示结果:246 X1=“STUD.DBF\ USE &X1

结果:打开STUD.DBF表

注意:赋值语句的功能是将表达式的值送到变量中。 (2)删除字符串空格函数

① 删除字符串前置空格及尾部空格函数ALLTRIM() 【格式】ALLTRIM(<字符表达式>)

【功能】返回删除了<字符表达式>的前置空格及尾部空格的字符串。 ② 删除字符串前置空格函数LTRIM() 【格式】LTRIM(<字符表达式>)

【功能】返回删除了<字符表达式>的前置空格的字符串。 ③ 删除字符串尾部空格函数RTRIM()或TRIM() 【格式】RTRIM(<字符表达式>)

【功能】返回删除了<字符表达式>的尾部空格的字符串。 例如:A=“ ABC ”

?LTRIM(A),B ?RTRIM(A),B

B=“XYZ”

?ALLTRIM(A),B

?TRIM(A),B

(3)、查找字符串起始位置函数AT()和ATC()

【格式】AT(<字符表达式1>,<字符表达式2>[,<数值表达式>])

【功能】 返回<字符表达式1>第一次出现在<字符表达式2>中的整数位置值(从左到右计数)。若<字符表达式1>未出现在<字符表达式2>中,则返回零值。如果有可选项<数值表达式>,则在<字符表达式2>中从<数值表达式>值代表出现<字符表达式1>的次数开始查找。函数AT()和ATC()功能相同,只是AT()要区分大小写,ATC()不区分大小写。 例如:?AT(“n”,”Internet”)

?AT(“N”,”Internet”) ?AT(“n”,”Internet”,2)

输出结果:2 0 6 (4)、取子串函数

① 左截子串函数LEFT()

【格式】LEFT(<字符表达式>,<数值表达式>)

【功能】返回从<字符表达式>最左边计起的<数值表达式>值个字符。 ② 右截子串函数RIGHT()

【格式】RIGHT(<字符表达式>,<数值表达式>)

【功能】返回从<字符表达式>最右边计起的<数值表达式>值个字符。如果<数值表达式>值小于或等于零,则返回空字符串。 ③ 截子串函数SUBSTR()

【格式】SUBSTR(<字符表达式>,<数值表达式1>[,<数值表达式2>]) 【功能】返回<字符表达式>中,从<数值表达式1>值开始,由<数值表达式2>值指

定个数的字符串。如果无<数值表达式2>选项,则从<数值表达式1>值位置开始直到<字符表达式>值尾部。 【例如】 :

?SUBSTR(“Microsoft PowerPoint”,11,5) 输出结果:Point

?SUBSTR(“面向对象程序设计”,9,4) 输出结果:程序

?left(“面向对象程序设计”,8) 输出结果:面向对象 ?right(“面向对象程序设计”,8) 输出结果:程序设计

(5)、空格生成函数SPACE() 【格式】SPACE(<数值表达式>)

【功能】返回一个由<数值表达式>值确定的空格组成的字符串。 【例如】 :?“首都”+“北京”输出结果:首都北京 ?“首都”+SPACE(3)+“北京”输出结果:首都???北京 注: ? 表示空格,一个空格表示一个字符

(6)、转换字符串函数 ①字符插入或替换函数STUFF()

【格式】STUFF (<字符表达式1>,<起始位置>,<长度>,<字符表达式2>) 【功能】在<字符表达式1>中插入或替换一字符串。在<字符表达式1>中从<起始位置>决定的位置开始,删除由<长度>决定的字符个数,然后在该位置插入<字符表达式2>。如果<长度>为零,则仅将<字符表达式2>插入<字符表达式1>中。如果<字

符表达式2>为一空字符串,则仅从<字符表达式1>中清除<长度>个字符而不加入任何字符。

【例如】 : A=“FOXPRO” 显示结果:FOXBASE

?STUFF(A,4,3,\

B=“BASE”

?STUFF(A,4,4,B)

显示结果:FOX

?STUFF(\Y\

显示结果:DISPLAY

②大写字母转小写字母函数LOWER() 【格式】LOWER(<字符表达式>)

【功能】将<字符表达式>中的所有大写字母转换成小写字母,其它字符不变 。返回值为字符型。

【例如】 :?LOWER(“FoxPro”) 显示结果:foxpro

③小写字母转大写字母函数UPPER() 【格式】UPPER(<字符表达式>)

【功能】将<字符表达式>中的所有小写字母转换成大写字母,其它字符不变 【例如】 :?UPPER(“FoxPro”) 显示结果:FOXPRO (7)、ASCII码转换函数

①求ASCII字符对应数值函数ASC()【格式】ASC(<字符表达式>)【功能】返回<字符表达式>值最左边字符对应的ASCII码(十进制)。 【例如】 :?ASC(“ABC”)

输出结果:65

②求数值对应的ASCII字符函数CHR()【格式】CHR(<数值表达式>)【功能】返回<数值表达式>值对应的ASCII字符【例如】 :?CHR(97) 输出结果:a

(8)、测试字符串长度函数LEN() 【格式】LEN()

【功能】返回值的字符个数。可以是一个字符串、备注字段或字符类型字段。若为一空字符串,则返回数值零。 【例如】 输入语句: ?LEN(\) 显示结果:12

X=“ 计算机等级考试”?LEN(X) 显示结果:14

(9)条件赋值函数IIF()

【格式】IIF(<逻辑表达式>,<表达式1>,<表达式2>)

【功能】按<逻辑表达式>的逻辑值决定返回<表达式1>的值或<表达式2>的值。若<逻辑表达式>的逻辑值为真,则返回<表达式1>的值,若<逻辑表达式>的逻辑值为假,则返回<表达式2>的值。 【例如】 输入语句: X=2 Y=3

?IIF(X>Y,X>0,10+Y) 输出结果:13

?IIF(X0,10+Y) 输出结果:.T.

2.5.3.日期和时间处理函数

(1)、DATE()函数 【格式】DATE( )

【功能】返回当前的系统日期。返回的日期格式可用SET CENTURY、SET DATE TO命令来更改。 (2)、TIME()函数 【格式】TIME( )

【功能】返回当前的系统时间。 (3)、YEAR()函数

【格式】YEAR(<日期表达式>)

【功能】返回以数值类型表示的<日期表达式>所代表的公元4位年份。<日期表达式>可以为系统日期函数、内存变量或数据库字段。(4)、MONTH()函数 【格式】MONTH(<日期表达式>)

【功能】返回以数值类型表示的<日期表达式>的月份值。 (5)、DAY()函数

【格式】DAY(<日期表达式>)

【功能】返回以数值类型表示的<日期表达式>所代表该月的第几日。 (6)、DOW()函数

【格式】DOW(<日期表达式>)

【功能】返回以数值类型表示的<日期表达式>所代表该星期的第几天,星期日是第1天,星期六是第7天。<日期表达式>可以为系统日期函数、内存变量或数据库字

段。

2.5.4.数据类型转换函数

(1)、STR()函数

【格式】STR(<数值表达式1>[,<数值表达式2>[,<数值表达式3>]]) 【功能】先计算<数值表达式1>的值,然后将此值转换成长度为<数值表达式2>(如果指定了<数值表达式2>)的字符串;如果指定了<数值表达式3>,则此字符串在小数点右边有<数值表达式3>个数字字符。<数值表达式2>包括整数个数、小数点及右边的小数数字个数。

【例如】 输入语句:?STR(256.40,6,2), STR(256.40,5), STR(256.40), STR(256.47,5,2), STR(10256.40,4,2)

输出结果为:256.40 256 256 256.5 **** (2)、VAL()函数

【格式】VAL(<字符表达式>)

【功能】从<字符表达式>的最左边字符开始,在忽略前置空格的情形下由左向右将阿拉伯数字字符转换成数值,直到遇到一个非数字字符为止。如果<字符表达式>的第一个字符不是阿拉伯数字,则VAL( )函数返回数值零 【例如】 输入语句: ?VAL(“A18”)

输出结果:0

?VAL(“18A18”)

输出结果:18.00

Y=VAL(143.1592) ?Y

输出结果:143.16

?STR(Y,8,4)

输出结果:143.1592

(3)、CTOD()函数

【格式】CTOD(<日期格式字符表达式>)

【功能】将<日期格式字符表达式>转换成日期型的值。 【例如】 输入语句:

输入语句:?CTOD(\) ?Ctod(\ 显示结果:12/10/99

/ /

注意: 的默认格式必须是:月/日/年或月-日-年 (其中年可以是2位也可以是4位),若是:年-月-日或年/月/日格式将得到一个值: / /,当然也可使用命令set date to 命令修改日期格式(参见第五章Set Date to命令或“工具”菜单下的“选项”中的“区域”设置)。

输入语句:Set Date to ymd &&设置日期格式为:年-月日 D1=CTOD(\ ?D1 D2=CTOD(\ ?D2

显示结果: 03/10/01

/ /

(4)、DTOC()函数【格式】DTOC(<日期型表达式>[,1])【功能】将<日期型表达式>转换成日期格式字符串。<日期型表达式>可以是系统日期函数、内存变量或数据库字段。有可选项[,1],则与DTOS()函数功能相同。 输入语句:?DTOC(DATE())

2.5.5、测试函数

(1)、测试光标所在列函数COL() 【格式】COL()

【功能】返回屏幕上当前光标所在的列数(0~79)。 (2)、测试光标所在行函数ROW() 【格式】ROW()

【功能】返回屏幕上当前光标所在的行数(0~24)。 (3)读一键函数

【格式】INKEY([数值型表达式])

【功能】返回从键盘输入的一个键的键值。等待用户按键时间为[数值型表达式]秒钟。若[数值型表达式]为0则无限期的等待,若省略[数值型表达式]则不等待,若超过时间用户未按键,则返回0。 【例如】 输入语句: ?INKEY(3) ?INKEY( ) ?INKEY(0)

显示结果:97 &&从键盘输入小写字母a

0 &&不等待,直接返回0

99 &&无限期的等待,直到输入小写字母c

(4)测试类型函数

【格式】TYPE(<字符型表达式>)

【功能】返回值是<字符型表达式>中字符 串所表示的表达式的类型。 <字符型表达式>必须放在定界符??、“”或[]中 (5)、测试当前记录号函数

【格式】RECNO([<工作区号或别名>])

【功能】返回值当前工作取区或指定工作区中打开的数据表的饿当前记录号,即记录指针当前指向的记录号。返回值为数值型(N型),缺省工作区好或别名时指当前工作区。

(6)、测试文件头函数

【格式】BOF([<工作区号或别名>])

【功能】测试当前工作区或指定工作区中数据表的记录指针是否指向第一条记录之前。返回值为逻辑型(L型)数据。若记录指针指向第一条记录之前,则返回值为.T.,否则,返回值为.F.。缺省工作区是当前工作区。 (7)、测试文件尾函数

【格式】EOF([<工作区号或别名>])【功能】测试当前工作区或指定工作区中数据表的记录指针是否指向最后一条记录之后。返回值为逻辑型(L型)数据。若记录指针指向最后一条记录之,则返回值为.T.,否则,返回值为.F.。缺省工作区是当前工作区。

(8)、测试查询结果函数

【格式】FOUND([<工作区号或别名>])

【功能】在使用查找命令LOCATE/CONTINUE、FIND、SEEK后测试是否在当前工作区或指定工作区中是否找到满足条件的记录,返回的值类型为逻辑型(L型),

如果找到,则返回值为.T.,否则返回值为.F.,缺省工作区为当前工作区。 (9)、测试文件是否存在函数 【格式】FILE(<文件名>)

【功能】测试在当前的计算机系统中是否存在指定的<文件名>,返回值的类型为逻辑型(L型),如果存在,则返回.T.,否则,返回.F.。 (10)、测试表文件是否存在函数 【格式】DBF([<工作区号或别名>])

【功能】测试当前工作区或指定工作区中是否存在数据表文件,返回的值类型为逻辑型(L型),如果存在,则返回值为.T.,否则返回值为.F.,缺省工作区为当前工作区。

(11)、测试记录个数函数

【格式】 RECCOUNT([<工作区号或别名>])

【功能】 返回当前工作区或指定工作区中数据表的记录总数,返回的值类型为数值型(N型),缺省工作区为当前工作区. (12)、选择工作区函数

【格式】SELECT([0/1/别名])

【功能】 返回当前工作区号或未使用工作区的最大编号,选0或缺省0/1/别名返回当前工作区号;选1返回未使用工作区的最大编号。返回的值类型为数值型(N型)。 作业: 1、习题二

本文来源:https://www.bwwdw.com/article/yow6.html

Top