vfp的数据类型和存储类型课件

上传人:阳*** 文档编号:111951757 上传时间:2022-06-21 格式:PPT 页数:37 大小:81KB
收藏 版权申诉 举报 下载
vfp的数据类型和存储类型课件_第1页
第1页 / 共37页
vfp的数据类型和存储类型课件_第2页
第2页 / 共37页
vfp的数据类型和存储类型课件_第3页
第3页 / 共37页
资源描述:

《vfp的数据类型和存储类型课件》由会员分享,可在线阅读,更多相关《vfp的数据类型和存储类型课件(37页珍藏版)》请在装配图网上搜索。

1、vfp的数据类型和存储类型 第第三三章章 VFP的数据类型与存储类型的数据类型与存储类型 Visual FoxPro 6.0 vfp的数据类型和存储类型3.1 3.1 数据数据类型类型 数据是反映客观事物属性的记录。通常分为数值型和数据是反映客观事物属性的记录。通常分为数值型和字符型两种基本类型。数据类型一旦被定义,就确定了字符型两种基本类型。数据类型一旦被定义,就确定了其存储方式和使用方式。其存储方式和使用方式。Visual FoxProVisual FoxPro系统将数据细系统将数据细化分为以下十三种类型。化分为以下十三种类型。 (1 1)字符型字符型 ( Character ) ( Ch

2、aracter ) 字符型(字符型(C C型)数据可型)数据可以包含任何可显示的以包含任何可显示的ASCIIASCII码字符,包括字母、数字、码字符,包括字母、数字、汉字、符号、空格等汉字、符号、空格等, ,长度范围是长度范围是0 0254254个字符,使用个字符,使用时必须用定界符单引号,双引号,方括号括起来。时必须用定界符单引号,双引号,方括号括起来。 、 “” “”、 vfp的数据类型和存储类型(2 2)数值型数值型 ( Numeric ) ( Numeric ) 数值型(数值型(N N型)是由数字(型)是由数字(0 09 9)、)、小数点和正负号组成。最大长度为小数点和正负号组成。最大

3、长度为2020位(包括、和小数点)。位(包括、和小数点)。 (3 3)整型整型 ( Integer ) ( Integer ) 整型(整型(N N型)表示整数,仅用于字段变型)表示整数,仅用于字段变量,数据占量,数据占4 4个字节。个字节。(4 4)浮点型浮点型 ( Float ) ( Float ) 浮点型(浮点型(N N型)与数值型等价,为与其它型)与数值型等价,为与其它软件的兼容而设。软件的兼容而设。(5 5)双精度型双精度型 ( Double ) ( Double ) 双精度型(双精度型(N N型)是更高精度的数型)是更高精度的数值型数据,只用于字段变量,固定占用值型数据,只用于字段变

4、量,固定占用8 8个字节,并采用固定长度个字节,并采用固定长度浮点格式存储。浮点格式存储。 vfp的数据类型和存储类型(6 6)货币型货币型 ( Currency ) ( Currency ) 货币型(货币型(Y Y型)用来表示货币值,型)用来表示货币值, 系统默认的货币符号是系统默认的货币符号是“$” $” 。 (7 7)日期型日期型 ( Data ) ( Data ) 日期型(日期型(D D型)用于表示日期,用默认格型)用于表示日期,用默认格式式mm/dd/yyyymm/dd/yyyy来表示,长度固定为来表示,长度固定为8 8位,位,yyyyyyyy表示年表示年, ,占占4 4字节,字节,

5、mmmm表示月表示月, ,占占2 2字节,字节,dddd表示日表示日, ,占占2 2字节。字节。(8 8)日期时间型日期时间型 ( DataTime ) ( DataTime ) 日期时间型数据是描述日期和时间日期时间型数据是描述日期和时间的数据。的数据。 其默认格式为其默认格式为mm/dd/yyyy hh:mm:ssmm/dd/yyyy hh:mm:ss。 其中其中yyyyyyyy代表年代表年, ,前两个前两个mmmm代表月,代表月,dddd代表日,代表日,hhhh代表小时代表小时, ,后后两个两个mmmm代表分钟,代表分钟,ssss代表秒,长度固定为代表秒,长度固定为8 8位。位。(9 9

6、)逻辑型逻辑型 ( Logical )( Logical )逻辑型数据(逻辑型数据(LogicLogic)是描述客观事物真)是描述客观事物真假的数据,用于表示逻辑判断结果。假的数据,用于表示逻辑判断结果。 逻辑型数据只有真(逻辑型数据只有真(.T.T.)和假()和假(.F.F.)两种值,长度固定为)两种值,长度固定为1 1位位。 vfp的数据类型和存储类型(1010)备注型备注型 ( Memo )( Memo )备注型数据(备注型数据(MemoMemo)用于存放较长的字符)用于存放较长的字符型数据类型。可以把它看成是字符型数据的特殊形式。型数据类型。可以把它看成是字符型数据的特殊形式。 备注型

7、字段固定占备注型字段固定占4 4个字节,用来存储一个指向备注文件个字节,用来存储一个指向备注文件(.FPT.FPT)的指针,实际数据长度仅受限于现有的磁盘空间。)的指针,实际数据长度仅受限于现有的磁盘空间。 (1111)通用型通用型 ( General ) ( General ) 通用型(通用型(G G型)用于存储型)用于存储OLEOLE对象,对象,可以是电子表格、文档、图片等。仅适用于表中的字段,固定占可以是电子表格、文档、图片等。仅适用于表中的字段,固定占4 4个字节,实际数据长度仅受限于现有的磁盘空间。个字节,实际数据长度仅受限于现有的磁盘空间。 (1212)字符型字符型(二进制)(二进

8、制) 与字符类相似,但若代码页(不同与字符类相似,但若代码页(不同语系代码)改变时,其值并不会随之改变,即语系代码)改变时,其值并不会随之改变,即VFPVFP不会自动转换成不会自动转换成相应国家的语系。相应国家的语系。 (1313)备注型备注型(二进制)(二进制) 与字符型(二进制)一样,当代码页改与字符型(二进制)一样,当代码页改变时,其值不会随之改变。变时,其值不会随之改变。 vfp的数据类型和存储类型3.2 3.2 数据数据存储类型存储类型(常量、变(常量、变 量)量) 3.2.13.2.1常量常量 在数据处理过程中其值不发生变化的量叫常量。在数据处理过程中其值不发生变化的量叫常量。 1

9、.1.数值型数值型(N N型)型) 数值型常量是由数字数值型常量是由数字0909、小数点、正负号和、小数点、正负号和 E E(科学计数法)(科学计数法)组成的数值。组成的数值。 如如 整数整数: 100 100 ,-35-35 小数小数: 2.54358 2.54358 科学计数法科学计数法 如如: 1.2E+5 : 1.2E+5 表示表示 1.2 1.2乘以乘以1010的的5 5次方。次方。 0.3926E1, 2.7E02 0.3926E1, 2.7E02 vfp的数据类型和存储类型2.2.字符型字符型(C C型)型)字符型常量是由字符型常量是由“ ” “ ” 、 、 括起来的字符或字符串

10、。括起来的字符或字符串。例如,例如,“ABCD”ABCD”、No_4No_4、 北京北京 、“Im a student”Im a student”等。等。 注意:引号和括号必须是英文字符注意:引号和括号必须是英文字符 3.3. 逻辑型逻辑型(L L型)型) 只有逻辑只有逻辑“真真”值和逻辑值和逻辑“假假”值两个值,值两个值, 真真 : .T. : .T. 、.t. .t. 、.Y. .Y. 、.y. .y. 假假: .F. : .F. 、.f. .f. 、. N. . N. 、.n. .n. 4.4.货币型货币型(Y Y型)型) 货币型常数是以货币型常数是以“$”$”作为前缀的数值,作为前缀的

11、数值, 如如$986.35$986.35、 $1234.5678$1234.5678。 保留四位小数保留四位小数如:如:$231.12345$231.12345,实际在计算机里存放的是:,实际在计算机里存放的是:$231.1235$231.1235vfp的数据类型和存储类型5.5.日期型日期型(D D型)型) 日期常量是用日期常量是用 括起来的日期形式的常量。括起来的日期形式的常量。 如如 10/01/1992 ,10/01/92, 10-01-92 10/01/1992 ,10/01/92, 10-01-92 。 严格的日期格式严格的日期格式YMDYMD(VFP(VFP默认默认) )yyyy

12、-mm-ddyyyy-mm-dd或或yyyy/mm/dd yyyy/mm/dd 。 如如 2000-09-20,2000/10/01 2000-09-20,2000/10/01 。6.6.日期时间型日期时间型(T T型)型) 日期时间型常量也用日期时间型常量也用 括起来表示,括起来表示, 如如 10/01/92 8:4510/01/92 8:45严格的日期时间格式为:严格的日期时间格式为: yyyy-mm-dd hh:mm:ssa|p yyyy-mm-dd hh:mm:ssa|p 或或 yyyy/mm/dd hh:mm:ssa|p yyyy/mm/dd hh:mm:ssa|p 如如 2000-

13、09-20 8:452000-09-20 8:45vfp的数据类型和存储类型2.3.22.3.2 变变 量量 在命令操作和程序运行过程中其值允许变化的量称为变量。在命令操作和程序运行过程中其值允许变化的量称为变量。 一、一、内存变量内存变量 定义内存变量时应取名并赋初值,变量建立后存储于内存中,定义内存变量时应取名并赋初值,变量建立后存储于内存中,并可以改变其值,直到清除该变量。并可以改变其值,直到清除该变量。 vfp的数据类型和存储类型 内存变量的命名规则内存变量的命名规则: 变量名可以由字母、数字、下划线和汉字组成,但第一变量名可以由字母、数字、下划线和汉字组成,但第一个字符不可以是数字,

14、至多个字符不可以是数字,至多128128个字符,不可与系统保留字同个字符,不可与系统保留字同名。名。 内存变量的定义和赋值内存变量的定义和赋值 在内存变量赋值同时在内存变量赋值同时, ,也定义了内存变量及数据类型。也定义了内存变量及数据类型。 格式格式1 STORE 1 STORE TO TO 格式格式2 2 = = vfp的数据类型和存储类型例例: : NAME = NAME = 李华李华 STORE 5STORE 5* *4 TO A,B,C 4 TO A,B,C ? NAME? NAME?A ?A ? NAME? NAME? ? 同志同志 ? NAME=,NAME? NAME=,NAME

15、结果:结果:李华李华2020李华同志李华同志NAME=NAME=李华李华vfp的数据类型和存储类型二、二、数组变量数组变量数组:按一定顺序排列的一组内存变量。数组:按一定顺序排列的一组内存变量。 “先定义后使用先定义后使用如定义:如定义:DIMENSION|DECLARE a(2,3),b(4)DIMENSION|DECLARE a(2,3),b(4) 赋值:赋值:a=4, b(1)=“foxpro”a=4, b(1)=“foxpro” a(2,1)=3 a(2,1)=3等价等价a(4)=3a(4)=3 vfp的数据类型和存储类型三、三、字段变量字段变量表的各个字段都是字段变量表的各个字段都是

16、字段变量use use 学生表学生表? ?学号学号go 5go 5? ?姓名姓名内存变量和字段变量同名时:字段变量优先,若要显示内存变量,内存变量和字段变量同名时:字段变量优先,若要显示内存变量,用用?m.?m.编号或编号或?m-?m-编号编号 vfp的数据类型和存储类型四、四、记录记录记录是表中的一行字段的集合。记录是表中的一行字段的集合。五、五、对象对象对象是构成程序的基本单位和运行实体。对象是构成程序的基本单位和运行实体。3.33.3函函 数数函数是系统内部预先编制好的一组程序,分别实现某些特定的运算函数是系统内部预先编制好的一组程序,分别实现某些特定的运算或操作。或操作。 函数的一般调

17、用形式:函数的一般调用形式: ( (,) 2,) 其中函数名是系统规定的,参数可以是一个或多个,也可为空,其中函数名是系统规定的,参数可以是一个或多个,也可为空,即:函数名即:函数名()(),但圆括号不能省略。,但圆括号不能省略。 VFPVFP提供了提供了200200余种函数,常用函数余种函数,常用函数 P50P50表表2.72.7表表2.112.11。 按功能可划分为:数学函数、字符串函数、日期和时间函数、类型按功能可划分为:数学函数、字符串函数、日期和时间函数、类型转换函数、测试函数。转换函数、测试函数。 vfp的数据类型和存储类型1 1、数学函数、数学函数( (数值函数数值函数) ) (

18、1) (1)求绝对函数求绝对函数ABSABS格式:格式:ABS(ABS(数值表达式数值表达式) ) ?ABS(- 4) ?ABS(- 4) 结果为结果为 (2) (2)求整函数求整函数INTINT格式:格式:INT(INT(数值表达式数值表达式) )? INT( 4.8) ? INT( 4.8) 结果为结果为 (3) (3)四舍五入函数四舍五入函数ROUNDROUND格式:格式:ROUND(ROUND(数值表达式数值表达式, ,保留小数位保留小数位) )功能:按保留小数位指定的位数对数值表达式的数值功能:按保留小数位指定的位数对数值表达式的数值进行四舍五入。进行四舍五入。?ROUND?ROUN

19、D(3.14159,33.14159,3) 3.142 3.142?ROUND?ROUND(3.14159,03.14159,0) 3 3vfp的数据类型和存储类型(4)(4)指数函数指数函数EXPEXP、平方根函数、平方根函数SQRTSQRT、格式:格式:EXP| SQRT (EXP| SQRT (数值表达式数值表达式) )?EXP(2) 7.39?EXP(2) 7.39?SQRT (9) 3?SQRT (9) 3(5)(5)取模取模 ( (求余数求余数) )函数函数MODMOD格式:格式:MOD(MOD(数值表达式数值表达式1 1, , 数值表达式数值表达式2 2) )功能:取数值表达式功

20、能:取数值表达式1 1除以数值表达式除以数值表达式2 2的余数。的余数。?MOD(20,3) 2 ?MOD(20,3) 2 (6)(6)求最大值求最大值MAXMAX、最小值、最小值MINMIN格式:格式:MAX| MIN (MAX| MIN (表达式表达式1 1,表达式,表达式2 2) )功能:求表达式功能:求表达式1 1和表达式和表达式2 2中的大者、小者。中的大者、小者。 vfp的数据类型和存储类型2 2、字符串函数、字符串函数(1)(1)判子字符串位置判子字符串位置ATAT格式:格式:AT(AT(字符表达式字符表达式1 1, ,字符表达式字符表达式2 2 , ,数值表达式数值表达式) )

21、功能:求字符表达式功能:求字符表达式1 1在字符表达式在字符表达式2 2中第数值表达式中第数值表达式次出现的起始位置。次出现的起始位置。 数值表达式数值表达式 默认值为默认值为 1 1。说明:说明:若字符表达式若字符表达式2 2中不包含字符表达式中不包含字符表达式1 1,则函数值为零;,则函数值为零;大小写字母在检索中视为不同。大小写字母在检索中视为不同。?AT(OK,COMPUTER OKOK ,2) 12?AT(OK,COMPUTER OKOK ,2) 12?AT(?AT(数据数据,计算机数据管理系统计算机数据管理系统) 7) 7?AT(BOOK,COMPUTER) 0?AT(BOOK,C

22、OMPUTER) 0vfp的数据类型和存储类型 (2) (2)求子串函数求子串函数SUBSTRSUBSTR格式:格式:SUBSTRSUBSTR字符表达式,起始位置,长度字符表达式,起始位置,长度功能:对字符表达式从给定的起始位置开始截取指定功能:对字符表达式从给定的起始位置开始截取指定长度的字符,生成一个新的字符串;长度的字符,生成一个新的字符串;?SUBSTR(1141,7,6) 490217?SUBSTR(1141,7,6) 490217(3)(3)取左、右子串函数取左、右子串函数格式:格式:LEFT | RIGHT (LEFT | RIGHT (字符表达式字符表达式, ,数值表达式数值表

23、达式) )功能:功能:LEFT LEFT 从字符表达式左边截取由数值表达式的值从字符表达式左边截取由数值表达式的值指定的字符,生成一个新的字符串;指定的字符,生成一个新的字符串;RIGHT RIGHT 从字符表达式右边截取由数值表达式的值指定从字符表达式右边截取由数值表达式的值指定的字符,生成一个新的字符串;的字符,生成一个新的字符串;?LEFT(FOXPRO?LEFT(FOXPRO数据库管理系统数据库管理系统,6) FOXPRO,6) FOXPRO?RIGHT(FOXPRO?RIGHT(FOXPRO数据库管理系统数据库管理系统,14) ,14) 数据库管理系统数据库管理系统 vfp的数据类型

24、和存储类型(4) ALLTRIM(4) ALLTRIM删除首部和尾部空格删除首部和尾部空格格式:格式: ALLTRIM(ALLTRIM(字符表达式字符表达式) )功能:功能: ALLTRIMALLTRIM删除字符串首部和尾部的空格删除字符串首部和尾部的空格?ALLTRIM(“ man ”) man?ALLTRIM(“ man ”) man(5)(5)构造空格函数构造空格函数SPACESPACE格式:格式:SPACE(SPACE(数值表达式数值表达式)功能:产生由数值表达式的值决定的空格数。功能:产生由数值表达式的值决定的空格数。?“?“姓名姓名”+SPACE(3)+“+SPACE(3)+“李宁

25、李宁” ” 姓名姓名 李宁李宁(6) (6) 字符串长度函数字符串长度函数LENLEN格式:格式:LEN(LEN(字符表达式字符表达式) )功能:测定字符串的长度功能:测定字符串的长度( (字符个数字符个数) )。?LEN(FOXPRO?LEN(FOXPRO数据库管理系统数据库管理系统) 20) 20vfp的数据类型和存储类型(7) (7) 大小写字母转换函数大小写字母转换函数LOWER|UPPERLOWER|UPPER格式:格式: ( (字符表达式字符表达式) )功能:功能:LOWERLOWER把字符表达式中的大写字母转换为小写字母;把字符表达式中的大写字母转换为小写字母; UPPER UP

26、PER把字符表达式中的小写字母转换为大写字把字符表达式中的小写字母转换为大写字母。母。?LOWER(FoxPro) foxpro?LOWER(FoxPro) foxpro?UPPER(FoxPro) FOXPRO?UPPER(FoxPro) FOXPRO vfp的数据类型和存储类型3 3、日期和时间函数、日期和时间函数(1)(1)系统日期函数系统日期函数DATEDATE格式:格式:DATE()DATE() ?DATEDATE()() 99/11/15 99/11/15(2)(2)系统时间函数系统时间函数TIMETIME格式:格式:TIME()TIME() ?TIMETIME()() 08:50

27、:43 08:50:43(3)(3)年、月、日函数年、月、日函数YEAR|MONTH|DAYYEAR|MONTH|DAY格式:格式:YEAR|MONTH|DAY(YEAR|MONTH|DAY(日期表达式日期表达式) )功能:从日期表达式中求出年份、月份、日份的数值。功能:从日期表达式中求出年份、月份、日份的数值。 ? DATE() 99/11/15 ? DATE() 99/11/15 ? YEAR(DATE() 1999 ? YEAR(DATE() 1999 ? MONTH(DATE() 11 ? MONTH(DATE() 11 ? DAY(DATE() 15 ? DAY(DATE() 15

28、vfp的数据类型和存储类型4 4、类型转换函数、类型转换函数(1) (1) 字符转换为数值函数字符转换为数值函数VALVAL格式:格式:VAL(VAL(字符表达式字符表达式) )功能:将字符型数据转换为数值型数据。功能:将字符型数据转换为数值型数据。说明:说明: 若若 由数字字符和小数点组成由数字字符和小数点组成, ,则转换成相应的则转换成相应的数值数值, ,但只保留两位小数但只保留两位小数, ,其余小数四舍五入。其余小数四舍五入。 若若 由非数字字符打头由非数字字符打头, ,则转换为则转换为0.000.00。 若若 由数字字符打头由数字字符打头, ,且混有非数字字符时且混有非数字字符时, ,

29、则则转换到第一个非数字字符。转换到第一个非数字字符。?VAL(1234.5678) 1234.57VAL(1234.5678) 1234.57? VAL(FoxPro) 0.00? VAL(FoxPro) 0.00? VAL(1234FOX.5678) 1234.00? VAL(1234FOX.5678) 1234.00 vfp的数据类型和存储类型(2) (2) 数值转换为字符函数数值转换为字符函数STRSTR格式:格式:STR(STR(数值表达式,长度,小数位数值表达式,长度,小数位数数)功能功能: :把数值表达式的运算结果转换为指定长度的字符串。把数值表达式的运算结果转换为指定长度的字符串

30、。? STR(1234.5678,7,2) 1234.57? STR(1234.5678,7,2) 1234.57(3) (3) 字符转换为日期函数字符转换为日期函数CTODCTOD格式:格式:CTOD(CTOD(字符表达式字符表达式) )功能功能: :将符合将符合yy/mm/dd yy/mm/dd 、mm/dd/yymm/dd/yy日期格式的字符串转换为相日期格式的字符串转换为相应日期。应日期。 ? CTOD(99/11/15) 99/11/15 ? CTOD(99/11/15) 99/11/15(4) (4) 日期转换为字符函数日期转换为字符函数DTOCDTOC格式:格式:DTOC(DTO

31、C(日期表达式日期表达式) )功能:将功能:将 转换为相应的字符串。转换为相应的字符串。说明:按说明:按mm/dd/yymm/dd/yy格式转换;格式转换; ? DTOC(DATE() 99/11/15 ? DTOC(DATE() 99/11/15 vfp的数据类型和存储类型(5) ASCII(5) ASCII码值转换为字符函数码值转换为字符函数CHRCHR格式:格式:CHR(CHR(数值表达式数值表达式) )功能:将功能:将 所表示的所表示的ASCIIASCII码值转换为码值转换为相应的字符。相应的字符。? CHR(65),CHR(97),CHR(48) A a 0? CHR(65),CHR

32、(97),CHR(48) A a 0(6) (6) 字符转换成字符转换成ASCIIASCII码值函数码值函数ASCASC格式:格式:ASC(ASC(字符表达式字符表达式) )功能:返回功能:返回 最左边的一个字符的最左边的一个字符的ASCIIASCII码值。码值。 ? ASC(A),ASC(a),ASC(0) 65 97 ? ASC(A),ASC(a),ASC(0) 65 97 4848vfp的数据类型和存储类型5 5、测试函数、测试函数(1) (1) 记录号测试函数记录号测试函数 RECNORECNO格式:格式:RECNO(RECNO(数值型表达式数值型表达式) )功能:给出功能:给出 指定

33、的工作区中打开的数据库的当前指定的工作区中打开的数据库的当前记录号。记录号。(2) (2) 文件起始测试函数文件起始测试函数 BOFBOF格式:格式:BOF(BOF(数值型表达式数值型表达式) )功能:测试功能:测试 指定的工作区中库文件记录指针是否指定的工作区中库文件记录指针是否指向起始位置。是函数值为逻辑真(指向起始位置。是函数值为逻辑真(.T.T.),否则为假(),否则为假(.F.F.)。)。(3) (3) 文件结束测试函数文件结束测试函数 EOFEOF格式:格式:EOF(EOF(数值型表达式数值型表达式) )功能:测试功能:测试 指定工作区中库文件记录指针是否指指定工作区中库文件记录指

34、针是否指向结束位置。是函数值为逻辑真(向结束位置。是函数值为逻辑真(.T.T.),否则函数值为假),否则函数值为假(.F.F.)。)。 vfp的数据类型和存储类型(4) (4) 文件测试函数文件测试函数 FILEFILE格式:格式:FILE(FILE(文件名文件名) )功能:测试功能:测试 指定的磁盘文件是否存在,若指定的磁盘文件是否存在,若存在,函数值为逻辑真(存在,函数值为逻辑真(.T.T.), ,否则函数值为假否则函数值为假(.F.)(.F.)。(5) (5) 记录测试函数记录测试函数 RECOUNTRECOUNT格式:格式:RECOUNT(RECOUNT(数值型表达式数值型表达式) )

35、功能功能: :测试测试 指定的工作区中数据库的记录个指定的工作区中数据库的记录个数。数。 (6) (6) 数据类型测试函数数据类型测试函数 TYPETYPE TYPE(“ TYPE(“字符表达式字符表达式”) ) 返回表达式类型,返回表达式类型,如如 N N,C C,D D,L L等等?TYPE(date()?TYPE(date()?TYPE(“?TYPE(“字符表达式字符表达式”) ”) ?TYPE(.t.)?TYPE(.t.)vfp的数据类型和存储类型(7) (7) 检索测试函数检索测试函数 FOUNDFOUND与与LOCATE LOCATE ,SEEKSEEK,FINDFIND,CONT

36、INUECONTINUE等同用,查到返等同用,查到返回回.T.T.,否则,否则.F.F.(8) (8) 库文件名测试函数库文件名测试函数 DBF DBF 返回当前工作区打开的表名返回当前工作区打开的表名vfp的数据类型和存储类型3.4 3.4 表达式表达式 常量、变量、函数通过运算符连接起来构成表达式。常量、变量、函数通过运算符连接起来构成表达式。VFPVFP中的表达式有算术表达式、字符表达式、日期表达式、关系表中的表达式有算术表达式、字符表达式、日期表达式、关系表达式、逻辑表达式。达式、逻辑表达式。1.1.算术表达式:算术表达式:由常量、变量、函数和算术运算符构成。由常量、变量、函数和算术运

37、算符构成。运算符号:(运算符号:( ) 括号括号 * * *或或 乘方乘方, , 例:例:3 3* * *2 2 或或 32 32 * *、/ / 乘、除乘、除 % % 取模(余数),例:取模(余数),例:15%4 15%4 结果是结果是3 3 + +、- - 加、减(单目运算为加、减(单目运算为“+”+”、“-”-”号)号) 优先次序同数学相同优先次序同数学相同如一元二次方程的一个根如一元二次方程的一个根: : (-b+sqrt(b(-b+sqrt(b* * *2-42-4* *a a* *c)/(2c)/(2* *a)a)vfp的数据类型和存储类型2.2.字符表达式:字符表达式:由常量、变

38、量、函数和字符算术运算符构成。由常量、变量、函数和字符算术运算符构成。字符运算符有两个:完全链接字符运算符有两个:完全链接( +)( +)和去空链接和去空链接( -)( -)+ : : 将几个字符串连接成一个新字符串。将几个字符串连接成一个新字符串。 例:例:?ABCD + EFGH + 1234 ?ABCD + EFGH + 1234 结果为:结果为:”ABCDEFGH 1234”ABCDEFGH 1234” - : : 将第一个字符串尾部空格移到后面一个字符串末尾后,连将第一个字符串尾部空格移到后面一个字符串末尾后,连接成一个新字符串。接成一个新字符串。 例:例:? ? 莆田莆田 学院学院

39、 + + 会计系会计系 结果为结果为: “: “莆田学院会计系莆田学院会计系” ” ?莆田莆田 - -学院学院 - - 机电系机电系+通信专业通信专业 vfp的数据类型和存储类型3.3.日期表达式:日期及时间运算符有日期表达式:日期及时间运算符有“+”+”和和“-” -” 日期及日期时间型表达式的运算有三种情况:日期及日期时间型表达式的运算有三种情况:(1 1)两个日期(时间)型数据相减,表示两个日期相差天数。)两个日期(时间)型数据相减,表示两个日期相差天数。 例:例:?2000-10-01 - 2000-09-01 ?2000-10-01 - 2000-09-01 结果为结果为3030,表

40、示,表示两个日期相距两个日期相距3030天。天。(2 2)一个日期(时间)型数据加一个表示天数的数值型数据,结)一个日期(时间)型数据加一个表示天数的数值型数据,结果是一个向后推算的日期(时间)型数据。果是一个向后推算的日期(时间)型数据。 例:例:?2000-09-01 + 60 ?2000-09-01 + 60 结果为结果为2000-10-31 2000-10-31 ?2000-09-01 17:34+60 ?2000-09-01 17:34+60结果为结果为2000-09-01 17:352000-09-01 17:35(3 3)一个日期(时间)型数据减一个表示天数的数值型数据,结)一个

41、日期(时间)型数据减一个表示天数的数值型数据,结果是一个向前推算的日期(时间)型数据。果是一个向前推算的日期(时间)型数据。 例:例:?2000-09-01 30 ?2000-09-01 30 结果为结果为2000-08-022000-08-02vfp的数据类型和存储类型4.4.关系表达式:关系表达式对同一类型的数据进行比较运算,比较的关系表达式:关系表达式对同一类型的数据进行比较运算,比较的结果符合逻辑结果符合逻辑, , 其值为其值为.T.T.;否则为;否则为.F.F.。 关系运算符为:关系运算符为: = =、 、 = =、 或或# #、 = = =、 $ $等于等于 小于小于 大于大于 小

42、于等于小于等于 大于等于大于等于 不等于不等于 全等于全等于 子字符串比较子字符串比较 运算规则运算规则 数值型数据按数值的大小比较数值型数据按数值的大小比较 字符型数据按字符从左到右比较字符型数据按字符从左到右比较 日期型数据按年、月、日顺序比较日期型数据按年、月、日顺序比较 使用使用“=”=”比较字符串时,系统默认为非精确比较,即当比较字符串时,系统默认为非精确比较,即当“=”=”左左边的字符串与右边的字符串的前半部分或全部相当时,系统均认为相边的字符串与右边的字符串的前半部分或全部相当时,系统均认为相等,即等,即 .T. .T. 。如:如:? ABCDE=ABC .T. ? ABCDE=

43、ABC .T. 可以使用可以使用SET EXACT ON | OFFSET EXACT ON | OFF命令设置精确比较或非精确比较。命令设置精确比较或非精确比较。vfp的数据类型和存储类型例:例: ? 2+3=6 .F.? 2+3=6 .F.? C1C2 .T.? C1C2 .T. ? ABC= =ABCDE .F. ? ABC= =ABCDE .F.?CD$ABCDEF .T.?CD$ABCDEF .T.? BD$ABCDEF .F. ? BD$ABCDEF .F. SET EXACT OFF (非精确比较)(非精确比较) ? ABCDE=ABC .T. ? ABCDE=ABC .T. ?

44、 ABC= ABCDE .F.? ABC= ABCDE .F.SET EXACT ON (精确比较)(精确比较)? ABCDE=ABC .F.? ABCDE=ABC .F.? ABC=ABCDE .F.? ABC=ABCDE .F.vfp的数据类型和存储类型5.5.逻辑表达式:逻辑表达式:两个或两个以上的关系表达式,及逻辑型常量、变量、函数,之间两个或两个以上的关系表达式,及逻辑型常量、变量、函数,之间用逻辑运算符连接起来,构成逻辑表达式。用逻辑运算符连接起来,构成逻辑表达式。运算符运算符: .NOT. .AND. .OR. .NOT. .AND. .OR. 圆点圆点 可以省略。可以省略。运算

45、规则运算规则: 逻辑非(逻辑非(.NOT.NOT.): : 对对(.NOT.)(.NOT.)右边的右边的L L型数据求反型数据求反; ; 逻辑与(逻辑与(.AND.AND.):当):当.AND.AND.两边为真时,结果才为真(两边为真时,结果才为真(.T.T.);); 逻辑或(逻辑或(.OR .OR .):当):当.OR .OR .两边至少一个为真时,结果为两边至少一个为真时,结果为(.T.T.)。)。优先次序优先次序:逻辑非逻辑非逻辑与逻辑与逻辑或逻辑或运算结果运算结果: .T. .T. 或或 .F. .F. 6.6.运算的优先顺序:运算的优先顺序:课本课本P49 P49 表表3-83-8

46、算术运算算术运算关系运算关系运算逻辑运算逻辑运算 ()括号最优先()括号最优先 vfp的数据类型和存储类型 习题参考答案:B1、已知每年的圣诞节日期为12月25日,那么2002年圣诞节与元旦(1月1日)相差的天数是( )。A) 356 B) 358 C) 360 D) 362参考答案:C2、要从数值型数据123中取出数值23,如果限制函数嵌套,则最适合采用的函数是( )。A) int() B) round() C) mod() D) exp()参考答案:B3、substr(“123456789”,len(“fox”),len(“pro”)的计算结果是( )。A) 123 B) 345 C) 5

47、67 D) 789vfp的数据类型和存储类型参考答案:A4、在下列函数中,函数值为数值的是( )。A) at(fox,visual foxpro) B) ctod(01/01/96) bof() D) substr(dtoc(date( ),7) 参考答案:B5、若rsk.dbf有20条记录,执行下列命令序列后,显示结果为( )。use rskskip 2goto 6skip 2? recno( )A) 6 B) 4 C) 8 D) 2vfp的数据类型和存储类型参考答案:B6、表达式val(a2)*len(foxpro)的值是( )。A) a2*foxpro B) 0 C) a2foxpro

48、D) 12参考答案:D7、下列字符串的运算结果为.f.的表达式为( )。A) fort $ comfortable B) computer=comp C) former=former D) computer=comp参考答案:D8、顺序执行以下赋值命令后,下列表达式中,合法的表达式是( )。 x=12 y=2*3 z=left(foxpro,3)A) x+y B) y+z C) x-z+y D) x-x+z-z vfp的数据类型和存储类型参考答案:A9、已知变量a的值为.t.,变量b和c的值均为.f.,则下列表达式值为.f.的选项为( )。A) b and c or not a B) a or b and not cC) not c and a or b D) a and b or not c参考答案:C10、在下列表达式中,错误的表达式是( )。A) 2000-06-01-10 B) 2000-06-01-date()C) 2000-06-01+date() D) 2000-06-01+10

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!