




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目录目录2.12.1VFPVFP的数据类型的数据类型2.22.2VFPVFP的常量与变量的常量与变量2.32.3运算符与表达式运算符与表达式2.42.4VFPVFP的常用函数的常用函数2.52.5VFPVFP的命令结构和书写规则的命令结构和书写规则2.62.6VFPVFP的文件类型的文件类型2.12.1 VFPVFP的数据类型的数据类型 VFPVFP中的数据按其构造、基本特性、用途和运算中的数据按其构造、基本特性、用途和运算方法等分为不同的类型,数据类型决定了数据的存方法等分为不同的类型,数据类型决定了数据的存储方式和运算方式。常用的数据类型有如下储方式和运算方式。常用的数据类型有如下1111
2、种:种:1.1.字符型(字符型(CharacterCharacter,C C) 字符型数据包括中、英文字符、数字字符和其字符型数据包括中、英文字符、数字字符和其他可显示的他可显示的ASCIIASCII字符,其长度(即字符个数)范围字符,其长度(即字符个数)范围是是0 0254254个字符。个字符。2.1 VFPVFP的数据类型的数据类型 2.2.数值型(数值型(NumericNumeric,N N) 数值型数据用来表示数量,由阿拉伯数字、小数点数值型数据用来表示数量,由阿拉伯数字、小数点和正负号组成。数值型数据的长度为和正负号组成。数值型数据的长度为1 12020位,包含整位,包含整数、小数点
3、和小数位数。数、小数点和小数位数。 在在Visual FoxProVisual FoxPro中,具有数值特征的数据类型还中,具有数值特征的数据类型还有整型(有整型(IntegerInteger,I I)、浮点型()、浮点型(FloatFloat,F F)和双精度)和双精度型(型(DoubleDouble,B B),这),这3 3种数据类型只能用于字段变量。种数据类型只能用于字段变量。 3. 3. 货币型(货币型(CurrencyCurrency,Y Y) 货币型数据用来存储货币值,默认保留货币型数据用来存储货币值,默认保留4 4位小数,位小数,存储空间占据存储空间占据8 8个字节。个字节。 2
4、.1 VFPVFP的数据类型的数据类型 (续(续1 1) 4.4.日期型(日期型(DateDate,D D) 日期型数据用来表示日期,其存储格式为日期型数据用来表示日期,其存储格式为“YYYYMMDD”YYYYMMDD”,占,占8 8个字节。日期型数据的显示格式有多个字节。日期型数据的显示格式有多种,受种,受SET DATESET DATE、SET MARKSET MARK、SET CENTURYSET CENTURY等命令的影等命令的影响。响。5.5.日期时间型(日期时间型(Date TimeDate Time,T T) 日期时间型数据用来表示日期和时间,其存储格式日期时间型数据用来表示日期
5、和时间,其存储格式为为“YYYYMMDDHHMMSS”YYYYMMDDHHMMSS”,占,占8 8个字节。其日期部分格式受个字节。其日期部分格式受受受SET DATESET DATE、SET MARKSET MARK、SET CENTURYSET CENTURY等命令的影响,等命令的影响,时间部分格式受时间部分格式受SET HOURSSET HOURS、SET SECONDSSET SECONDS命令影响。命令影响。2.1 VFPVFP的数据类型的数据类型 (续(续2 2) 6. 6. 逻辑型(逻辑型(LogicLogic,L L) 逻辑型数据用来表示逻辑判断的结果,只有真(逻辑型数据用来表示
6、逻辑判断的结果,只有真(.t.t.或或.y.y.)和假()和假(.f.f.或或.n.n.)两个值,长度固定为)两个值,长度固定为1 1位。位。 7.7.备注型(备注型(MemoMemo,M M) 备注型数据用于存放数据块,其长度固定为备注型数据用于存放数据块,其长度固定为4 4个字节,个字节,用于存储指向备注文件中相应内容的记录指针;备注型用于存储指向备注文件中相应内容的记录指针;备注型字段本身的内容没有长度限制,该字段的数据存放在与字段本身的内容没有长度限制,该字段的数据存放在与表文件同名的备注文件(表文件同名的备注文件(.fpt.fpt)中。)中。2.1 VFPVFP的数据类型的数据类型
7、(续(续3 3) 8. 8. 通用型(通用型(GeneralGeneral,G G) 通用型数据用来存储通用型数据用来存储OLEOLE(对象链接与嵌入)对(对象链接与嵌入)对象,其长度固定为象,其长度固定为4 4个字节,通用型数据中的个字节,通用型数据中的OLEOLE对象对象可以是电子表格、文档、图形、声音等。备注型字段可以是电子表格、文档、图形、声音等。备注型字段本身的内容没有长度限制,该字段的数据存放在与表本身的内容没有长度限制,该字段的数据存放在与表文件同名的备注文件(文件同名的备注文件(.fpt.fpt)中。)中。 2.1 VFPVFP的数据类型的数据类型 (续(续4 4) 返回目录返
8、回目录2.2 2.2 VFPVFP的常量与变量的常量与变量2.2 2.2 VFPVFP的常量与变量的常量与变量2.2.1常量常量2.2.2变量变量2.2.1 常量常量 常量用来表示一个具体的、不变的数据量。不同常量用来表示一个具体的、不变的数据量。不同类型的常量用不同的书写形式区分。类型的常量用不同的书写形式区分。VFPVFP中常量包括中常量包括字符型、数值型、日期型、日期时间型、逻辑型、货字符型、数值型、日期型、日期时间型、逻辑型、货币型等币型等6 6种数据类型。种数据类型。2.2.1 常量常量 (续(续1 1) 字符常量字符常量 字符型常量也称字符串,它是由定界符括起来的字符型常量也称字符
9、串,它是由定界符括起来的一串字符。一串字符。VFPVFP中字符型数据的定界符包括半角的双引中字符型数据的定界符包括半角的双引号号( () )、单引号、单引号( () )和方括号和方括号( )( )三种。三种。如如FoxProFoxPro、FoxProFoxPro和和FoxProFoxPro都表示同一个字符都表示同一个字符串。这三种定界符的作用相同,使用时必须成对使用,串。这三种定界符的作用相同,使用时必须成对使用,不能交叉使用。如果某一种定界符是字符型常量中的不能交叉使用。如果某一种定界符是字符型常量中的普通字符,应选择另一种定界符,如普通字符,应选择另一种定界符,如 am a am a st
10、udentstudent,或,或I Iam a studentam a student。不包含任何字。不包含任何字符的字符串(符的字符串()称为空串。)称为空串。 2. 2. 数值型常量数值型常量 数值型常量由数值型常量由0 09 9共共1010个数字、小数点、正负号个数字、小数点、正负号组成。其表示形式可以是整数如组成。其表示形式可以是整数如123123、小数如、小数如123.35123.35、负数如负数如-123.45-123.45;还可以用科学计数法表示,如;还可以用科学计数法表示,如1.234E-51.234E-5表示表示1.2341.2341010-5-5。 3. 3. 日期型常量日
11、期型常量 日期型常量用来表示日期,年、月、日之间的分日期型常量用来表示日期,年、月、日之间的分隔符可以使用(隔符可以使用(/ /)、()、(. .)、()、(- -)和空格。日期型常)和空格。日期型常量的格式分为严格格式和传统格式两种。量的格式分为严格格式和传统格式两种。 2.2.1 常量常量 (续(续2 2)(1)(1)严格日期格式:严格日期格式:YYYY-MM-DDYYYY-MM-DD,该格式以字符(,该格式以字符( )开头,开头, 严格规定年月日顺序严格规定年月日顺序, ,表达一个确切的日期,表达一个确切的日期,它的表示形式不受它的表示形式不受SET DATE TOSET DATE TO
12、命令的影响,如命令的影响,如2003-2003-12-2312-23。(2) (2) 传统的日期格式:传统的日期格式:系统默认的传统日期格式是美国系统默认的传统日期格式是美国日期格式日期格式mm/dd/yymm/dd/yy,年份可以是,年份可以是4 4位或位或2 2位数字,如位数字,如12/23/0312/23/03、12/23/200312/23/2003等。等。 严格的日期格式可以在任何情况下使用,传统的日严格的日期格式可以在任何情况下使用,传统的日期格式只能在期格式只能在SET STRICTDATE TO 0SET STRICTDATE TO 0状态下使用。状态下使用。 2.2.1 常量
13、常量 (续(续3 3)(3) (3) 与日期型常量书写格式相关的函数与日期型常量书写格式相关的函数日期格式的检查函数日期格式的检查函数【语法格式【语法格式】SET STRICTDATE TO 0|1|2SET STRICTDATE TO 0|1|2【说明【说明】0 0:表示不进行严格检查,可使用各种格式。:表示不进行严格检查,可使用各种格式。1 1:表示进行严格检查,不能使用传统格式,是系统的默:表示进行严格检查,不能使用传统格式,是系统的默认设置。认设置。2 2:表示进行严格检查,但是对:表示进行严格检查,但是对CTOD()CTOD()、DTOC()DTOC()函数格式函数格式有效。有效。2
14、.2.1 常量常量 (续(续4 4)日期格式的分隔符设置命令日期格式的分隔符设置命令【语法格式【语法格式】SET MARK TO SET MARK TO 日期分隔符日期分隔符 【说明【说明】用于设置显示日期数据时使用的分隔符,默认分用于设置显示日期数据时使用的分隔符,默认分隔符为隔符为/ /。 “-” “.”-” “.”日期格式的日期顺序设置命令日期格式的日期顺序设置命令【语法格式【语法格式】SET DATE TO MDY | DMY | YMDSET DATE TO MDY | DMY | YMD【说明【说明】设置日期顺序格式。设置日期顺序格式。对于传统格式和对于传统格式和CTOD()CTO
15、D()函数,在输入日期时,要求输函数,在输入日期时,要求输入年月日的顺序与该命令的设置一致。入年月日的顺序与该命令的设置一致。2.2.1 常量常量 (续(续5 5)日期格式年份表示位数设置命令日期格式年份表示位数设置命令【语法格式【语法格式】SET CENTURY ON | OFFSET CENTURY ON | OFF【说明【说明】当选项为当选项为ONON时,年份显示时,年份显示4 4位数,否则显位数,否则显示示2 2位数。位数。例例. . 在命令窗口中执行如下命令:在命令窗口中执行如下命令:? 2003/10/23 ? 2003/10/23 * *显示显示10/23/0310/23/03,
16、年月日的显示顺序与,年月日的显示顺序与SET DATE SET DATE * *TO TO 设置有关设置有关2.2.1 常量常量 (续(续6 6)例例. . 在命令窗口中执行如下命令在命令窗口中执行如下命令: :SET STRICTDATE TO 0SET STRICTDATE TO 0? 10/23/03 & ? 10/23/03 & 显示显示10/23/0310/23/03用传统格式定义日期型数据时,需先执行用传统格式定义日期型数据时,需先执行SET STRICTDATE TO 0SET STRICTDATE TO 0且传统日期格式年月日的顺序需与且传统日期格式年月日的顺序
17、需与SET DATE MDY|YMD|DMY SET DATE MDY|YMD|DMY 相应,默认为相应,默认为MDYMDY。2.2.1 常量常量 (续(续7 7)例例. . 在命令窗口中执行如下命令:在命令窗口中执行如下命令:SET STRI TO 1SET STRI TO 1?CTOD(“12/23/03”) &?CTOD(“12/23/03”) &显示显示12/23/0312/23/03使用使用CTOD()CTOD()函数前需执行函数前需执行 SET STRI TO 0|1SET STRI TO 0|1 2.2.1 常量常量 (续(续8 8)例例. . 在命令窗口中执行如
18、下命令在命令窗口中执行如下命令SET STRI TO 0SET STRI TO 0SET DATE DMY SET DATE DMY * *设置日月年,要求传统格式和设置日月年,要求传统格式和CTOD()CTOD()函数与其一致。函数与其一致。* *且输出显示的格式也为日月年且输出显示的格式也为日月年? 23/10/03 &? 23/10/03 &显示显示23/10/0323/10/03? CTOD(“23/12/03”) ? CTOD(“23/12/03”) * *显示显示23/12/0323/12/03,CTOD()CTOD()函数的格式函数的格式 要求与设置一致要求与设置
19、一致2.2.1 常量常量 (续(续9 9)例例. . 在命令窗口中执行如下命令:在命令窗口中执行如下命令:SET MARK TO “” &SET MARK TO “” &设置显示日期分隔符为设置显示日期分隔符为SET DATE MDYSET DATE MDY? 2003/12/23 &? 2003/12/23 &显示显示122303122303。例例. . 在命令窗口中执行如下命令:在命令窗口中执行如下命令:SET CENTURY ONSET CENTURY ONSET DATE YMD &SET DATE YMD &设置日期显顺序为设置日期显顺
20、序为 年月日年月日 ?2003/12/23 &?2003/12/23 &显示显示2003/12/232003/12/23,且年份显示,且年份显示4 4位位2.2.1 常量常量 (续(续1010) Set strictdate to 0|1|2 Set mark to 日期分隔符 “/ - .” Set date to MDY YMD DMY USA American Set century on|off4.4.日期时间型常量日期时间型常量 日期时间型常量用来表示日期和时间。日期部分日期时间型常量用来表示日期和时间。日期部分与日期型常量类似,包括严格和传统两种格式。其严与日期型常
21、量类似,包括严格和传统两种格式。其严格格式为:格格式为:YYYY-MM-DD,HH:MM:SSA|PYYYY-MM-DD,HH:MM:SSA|P。 其中其中HHHH、MMMM、SSSS的默认值分别为的默认值分别为1212、0 0和和0 0。A A和和P P分别表示分别表示AMAM(上午)和(上午)和PMPM(下午),默认为(下午),默认为AMAM。如果。如果指定时间大于等于指定时间大于等于1212,则系统认为是下午的时间。,则系统认为是下午的时间。 2.2.1 常量常量 (续(续1111)SET STRI TO 0SET STRI TO 0SET CENTURY ONSET CENTURY O
22、NSET DATE YMDSET DATE YMD?2003/12/23,10:10 &?2003/12/23,10:10 &显示显示2003/12/23 10:10:00 AM2003/12/23 10:10:00 AM?2003/12/23,14:10 ?2003/12/23,14:10 * *显示显示2003/12/23 02:10:00PM2003/12/23 02:10:00PM,默认,默认1212时间制时间制?2003/12/23,2:10 PM &?2003/12/23,2:10 PM &显示显示2003/12/23 02:10:00PM2003/
23、12/23 02:10:00PM2.2.1 常量常量 (续(续1212)例例. . 在命令窗口中执行如下命令:在命令窗口中执行如下命令:SET HOURS TO 24 &SET HOURS TO 24 &将时间显示设置为将时间显示设置为2424小时制小时制?2003/12/23,2:10 PM &?2003/12/23,2:10 PM &显示显示2003/10/23 14:10:002003/10/23 14:10:005.5.逻辑型常量逻辑型常量 逻辑型常量用来表示逻辑值。逻辑常量只有真和假逻辑型常量用来表示逻辑值。逻辑常量只有真和假两种值,用两种值,用.T.
24、(.T.(或或.t.).t.)、.Y.(.Y.(或或.y.).y.)表示真,表示真,用用.F.(.F.(或或.f.).f.)、.N.(.N.(或或.n.).n.)表示假。但主窗口只显示表示假。但主窗口只显示.T.T.或或.F.F.。2.2.1 常量常量 (续(续1313)6.6.货币型常量货币型常量 货币常量用来表示货币。货币型常量以货币常量用来表示货币。货币型常量以$ $符号开头,最多只能保留符号开头,最多只能保留4 4位小数,若小数部位小数,若小数部分超过分超过4 4位,自动四舍五入。可以和数值型数位,自动四舍五入。可以和数值型数据进行运算。结果仍为货币型。据进行运算。结果仍为货币型。 2
25、.2.1 常量常量 (续(续1414)返回返回2.2.22.2.2变量变量 在命令操作或程序执行过程中,其值可以在命令操作或程序执行过程中,其值可以改变的量称为变量。改变的量称为变量。VFPVFP的变量主要有字段变量的变量主要有字段变量和内存变量两种。变量包含三个要素:变量名、和内存变量两种。变量包含三个要素:变量名、变量的数据类型和变量值。变量的数据类型和变量值。 无论哪种变量都必须有一个用来标识它的无论哪种变量都必须有一个用来标识它的名称,称为变量名。名称,称为变量名。1.1.字段变量字段变量 字段变量对应于数据表中的字段,数据表中的每一字段变量对应于数据表中的字段,数据表中的每一列称为字
26、段,以字段名标识。字段名的命名规则如下:列称为字段,以字段名标识。字段名的命名规则如下: 字段名以字母或汉字开头,由汉字、字母、数字和字段名以字母或汉字开头,由汉字、字母、数字和下划线组成,对于字母不区分大小写;在自由表中,字下划线组成,对于字母不区分大小写;在自由表中,字段名长度不超过段名长度不超过1010个字节;数据库表中的字段名长度不个字节;数据库表中的字段名长度不超过超过128128个字符。字段名应避免与个字符。字段名应避免与VFPVFP系统的保留字相同。系统的保留字相同。所谓保留字是指所谓保留字是指VFPVFP系统中的命令名、标准函数名等。系统中的命令名、标准函数名等。2.2.22.
27、2.2变量变量 (续(续1 1)字段变量存在于数据表中,随着数据表的打开生效;字段变量存在于数据表中,随着数据表的打开生效;随着数据表的关闭而释放。字段的值随记录指针的移动变随着数据表的关闭而释放。字段的值随记录指针的移动变化。化。2.2.内存变量内存变量 内存变量独立于数据表文件,存储于内存中。通常用内存变量独立于数据表文件,存储于内存中。通常用来保存执行命令或程序运行的中间结果,可以随时定义和来保存执行命令或程序运行的中间结果,可以随时定义和释放。内存变量的命名规则如下:释放。内存变量的命名规则如下: 内存变量名以字母、汉字、下划线开始,由字母、汉内存变量名以字母、汉字、下划线开始,由字母
28、、汉字、下划线和数字组成,字母不区分大小写;变量名不超字、下划线和数字组成,字母不区分大小写;变量名不超过过128128个字符。个字符。 2.2.22.2.2变量变量 (续(续2 2)当内存变量与当前打开的数据表中的字段变量当内存变量与当前打开的数据表中的字段变量同名时,字段变量被优先使用。当内存变量与字段同名时,字段变量被优先使用。当内存变量与字段变量同名时,若要引用内存变量,则需在内存变量变量同名时,若要引用内存变量,则需在内存变量名前加名前加M-M-或或M.M.。VFPVFP中的内存变量又可为系统内存中的内存变量又可为系统内存变量和用户定义的内存变量。变量和用户定义的内存变量。 用户定义
29、的内存变量的数据类型可以有用户定义的内存变量的数据类型可以有C C、N N、D D、T T、Y Y、L L等等6 6种。种。 2.2.22.2.2变量变量 (续(续3 3)2.2.22.2.2变量变量 (续(续4 4)(1) 内存变量的赋值内存变量的赋值【语法格式【语法格式1】=【功能【功能】 计算表达式的值,并将结果赋于内存变量。计算表达式的值,并将结果赋于内存变量。格式格式1只能给一个变量赋值。只能给一个变量赋值。【说明【说明】 ”=”: 赋值号,它的左边只能是内存变量名;赋值号,它的左边只能是内存变量名; 表达式表达式 :由常量、变量、函数和运算符组成。由常量、变量、函数和运算符组成。
30、内存变量的值及类型在赋值时定义,同一个内存变量内存变量的值及类型在赋值时定义,同一个内存变量可多次赋值,它的值和类型取决于最后一次所赋的值。可多次赋值,它的值和类型取决于最后一次所赋的值。 例在命令窗口中执行如下命令例在命令窗口中执行如下命令a=10 &将数值将数值10赋给内存变量赋给内存变量a,a的数据类型为的数据类型为 数值型,值为数值型,值为10? A &主窗口显示主窗口显示10A=10/2 &将表达式将表达式10/2的结果赋于内存变量的结果赋于内存变量a(不(不 区分大小写)区分大小写)?a &显示显示日期日期=2003/12/23 &将日期型数
31、据赋给内存变量,变量名是日期将日期型数据赋给内存变量,变量名是日期? 日期日期 &显示显示12/23/03T=.t. &将逻辑值将逻辑值(真真)赋给变量赋给变量T? t &显示显示.T.,由于不区分大小写,变量名为,由于不区分大小写,变量名为T,显显 示示.T.2.2.22.2.2变量变量 (续(续5 5)2.2.22.2.2变量变量 (续(续6 6)【语法格式【语法格式2】 STROE TO 【功能【功能】 计算表达式的值并将同一个结果赋给一个或多计算表达式的值并将同一个结果赋给一个或多个变量。个变量。【说明【说明】 该命令可以一次给多个变量赋予相同的值。当该命令可以
32、一次给多个变量赋予相同的值。当中有多个变量名时,变量之间用逗号隔开。中有多个变量名时,变量之间用逗号隔开。2.2.22.2.2变量变量 (续(续7 7)例在命令窗口中执行如下命令例在命令窗口中执行如下命令STROE “10” TO A1,变量变量1 *将字符数据将字符数据10同时赋于同时赋于a1、变量、变量1?a1,变量变量1 &显示显示 10,10?a1+变量变量1 &显示显示1010 (2)(2)表达式值的显示表达式值的显示【语法格式【语法格式】?|? ?|? 【说明【说明】?命令先输出一个换行,再输出指定内?命令先输出一个换行,再输出指定内存变量的值;?命令则不输出换行直
33、接输出指存变量的值;?命令则不输出换行直接输出指定内存变量的值定内存变量的值2.2.22.2.2变量变量 (续(续8 8)内存变量的显示List memory like 通配符to printer| to fileDisplay memory like 通配符to printer| to file通配符包括:* 和 ?例例在命令窗口中执行如下命令:在命令窗口中执行如下命令:a=.t.a=.t.b1=”t”b1=”t”? a,b1 ? a,b1 X=23+12X=23+12Y=“23”Y=“23”? X,Y+”12”? X,Y+”12” & &在前一个显示命令后接着显示在前一个显
34、示命令后接着显示35,231235,2312? 12/23/03? 12/23/03 & &另起一行,显示表达式另起一行,显示表达式( (除法除法) )的结果的结果0.170.17? “12/23/03”? “12/23/03” & &另起一行显示字符串另起一行显示字符串12/23/0312/23/032.2.22.2.2变量变量 (续(续9 9)2.2.22.2.2变量变量 (续(续1010)(3) (3) 保存内存变量保存内存变量【语法格式【语法格式】 SAVE TO SAVE TO | TO MEMO | TO MEMO ALL LIKE ALL LIKE
35、 ALL EXCEPT ALL EXCEPT 【功能【功能】将当前内存中的内存变量保存到指定的内存变将当前内存中的内存变量保存到指定的内存变量文件或备注字段中量文件或备注字段中. .【说明【说明】 :指存放内存变量及值的文件名,其指存放内存变量及值的文件名,其命名与一般的文件命名规则相同。默认扩展名为命名与一般的文件命名规则相同。默认扩展名为.mem.mem;TO MEMO TO MEMO : 表示将内存变量及值保存到数表示将内存变量及值保存到数据表的备注字段中;据表的备注字段中; : 是指可以包含通配符是指可以包含通配符”?”?”和和”* *”的内的内存变量名;存变量名;ALL LIKE A
36、LL LIKE : 保存所有满足指定保存所有满足指定 的那些内存变量;的那些内存变量;ALL EXCEPT ALL EXCEPT : 保存所有不满足指定保存所有不满足指定 的那些内存变量;的那些内存变量;2.2.22.2.2变量变量 (续(续1111)(4) 内存变量的恢复内存变量的恢复【语法格式【语法格式】 RESTORE FROM |FROM MEMO |ADDITIVE【功能【功能】 将保存在内存变量文件或备注字段中的内存将保存在内存变量文件或备注字段中的内存变量恢复到内存。其默认的内存变量文件的扩展名变量恢复到内存。其默认的内存变量文件的扩展名为为.mem。2.2.22.2.2变量变量
37、 (续(续1212)【说明【说明】FROM : 表示从指定的内存变量文件恢表示从指定的内存变量文件恢复内存变量到内存;复内存变量到内存;FROM MEMO :表示从指定的备注字段恢复表示从指定的备注字段恢复内存变量到内存;内存变量到内存;ADDITIVE:保留当前的内存变量,且将指定的内存变量保留当前的内存变量,且将指定的内存变量文件或备注字段中的内存变量恢复到内存。若恢复的内存文件或备注字段中的内存变量恢复到内存。若恢复的内存变量与当前内存中已存在内存变量同名,则用恢复的内存变量与当前内存中已存在内存变量同名,则用恢复的内存变量覆盖原有的内存变量。若省略该选项恢复前先将当前变量覆盖原有的内存
38、变量。若省略该选项恢复前先将当前内存中的内存变量全部清除。内存中的内存变量全部清除。2.2.22.2.2变量变量 (续(续1313)(5) (5) 内存变量的清除内存变量的清除【语法格式【语法格式1 1】 CLEAR ALLCLEAR ALL【语法格式【语法格式2 2】 CLEAR MEMORYCLEAR MEMORY【语法格式【语法格式3 3】 RELEASE RELEASE | ALL | ALL EXTENDED |ALL LIKE | EXCEPT EXTENDED |ALL LIKE | EXCEPT 2.2.22.2.2变量变量 (续(续1414)【功能【功能】 格式格式1 1:
39、清除当前内存中用户定义的全部内存变量,清除当前内存中用户定义的全部内存变量,且关闭所有打开的数据表以及与之相关的索引、格且关闭所有打开的数据表以及与之相关的索引、格式和备注文件等,自动选择式和备注文件等,自动选择1 1号工作区为当前工作号工作区为当前工作区。区。格式格式2 2: 清除当前内存中的全部内存变量,释放存清除当前内存中的全部内存变量,释放存储空间,但不关闭数据表文件等。储空间,但不关闭数据表文件等。格式格式3 3: 根据选项的规定清除全部或部分内存变量根据选项的规定清除全部或部分内存变量2.2.22.2.2变量变量 (续(续1515)2.2.22.2.2变量变量 (续(续1616)【
40、说明【说明】RELEASERELEASE : 删除删除 中所列的全部中所列的全部内存变量,各变量之间用逗号隔开。内存变量,各变量之间用逗号隔开。RELEASE ALLRELEASE ALL:则删除所有内存变量;如果在程序中用则删除所有内存变量;如果在程序中用RELEASE ALLRELEASE ALL,则删除当前程序定义的局部变量;若还用了,则删除当前程序定义的局部变量;若还用了EXTENDEDEXTENDED选项,则公用内存变量也被删除。选项,则公用内存变量也被删除。LIKE LIKE :则删除所有满足则删除所有满足 的那些的那些变量变量EXCEPT EXCEPT :则删除所有不满足则删除所
41、有不满足 的的那些变量。那些变量。返回返回返回目录返回目录2.3 2.3 运算符与表达式运算符与表达式 表达式是表达式是VFPVFP中重要的语法成份,在中重要的语法成份,在VFPVFP中,中,表达式是由常量、变量、函数、运算符和圆括号表达式是由常量、变量、函数、运算符和圆括号组成的表示数据之间运算关系的式子。组成的表示数据之间运算关系的式子。VFPVFP的表的表达式包括字符型表达式、数值型表达式、日期型达式包括字符型表达式、数值型表达式、日期型表达式、关系型表达式和逻辑型表达式等表达式、关系型表达式和逻辑型表达式等5 5种。种。 2.3 2.3 运算符与表达式运算符与表达式 2.3.1数值运算
42、符及数值表达式数值运算符及数值表达式2.3.2字符串运算符及字符表达式字符串运算符及字符表达式2.3.3日期型日期时间运算符及日期型日期型日期时间运算符及日期型 日期时间表达式日期时间表达式2.3.4关系型运算符及关系运表达式关系型运算符及关系运表达式2.3.5逻辑型运算符及逻辑表达式逻辑型运算符及逻辑表达式2.3.1 数值运算符及数值表达式数值运算符及数值表达式 1.1.数值表达式数值表达式 数值表达式是由数值型常量、数值型变量、数值型数值表达式是由数值型常量、数值型变量、数值型函数和算术运算符组成的式子。参与运算的数据必须是函数和算术运算符组成的式子。参与运算的数据必须是数值型。运算结果仍
43、为数值型。数值型。运算结果仍为数值型。2.2.数值运算符数值运算符 算术运算符包括乘方算术运算符包括乘方“ ” ”或或“* * *”、乘、乘“* *”、除除“/”/”、取模或求余数、取模或求余数“%”%”、加、加“”、减、减“”。运算顺序:运算顺序: 乘方乘方乘、除、取模乘、除、取模加、减加、减在算术运算中圆括号优先,同级运算从左至右。在算术运算中圆括号优先,同级运算从左至右。例在命令窗口中执行如下命令例在命令窗口中执行如下命令?(2?(2* *2+2)2/32+2)2/3121210/5 10/5 &显示显示2.002.00?(2?(2* *2+2)2/(3-12+10/5) 2+2
44、)2/(3-12+10/5) &显示显示5.145.14?(3?(3* *18+2+4)18+2+4)* * *2/10)-12+22/10)-12+2* *9/39/3 &显示显示354.00 354.00 3.3.表达式的书写规则表达式的书写规则(1)(1) 表达式中所有的字符必须写在同一水平线上;表达式中所有的字符必须写在同一水平线上;(2)(2) 根据运算符运算的优先顺序,合理地加括号,以保证根据运算符运算的优先顺序,合理地加括号,以保证运算顺序的正确性。运算顺序的正确性。2.3.1 数值运算符及数值表达式(续数值运算符及数值表达式(续1) 例例 在命令窗口中执行如下命
45、令:在命令窗口中执行如下命令:? $123.4567+$0.2345 ? $123.4567+$0.2345 &显示显示123.6912123.6912? $123.4567+10.2345 ? $123.4567+10.2345 &显示显示133.6912133.6912? 123.4567+$0.2345? 123.4567+$0.2345&显示显示123.6912123.6912? 123.4567-$10.23 ? 123.4567-$10.23 & &显示显示113.2267113.2267 4. 4. 货币表达式货币表达式 货币型数据前需加货
46、币型数据前需加$ $。货币型表达式是由货币型常量、。货币型表达式是由货币型常量、货币型变量和算术运算符组成的式子。货币型表达式的运货币型变量和算术运算符组成的式子。货币型表达式的运算对象和运算结果都是货币型。其运算符和运算规则与数算对象和运算结果都是货币型。其运算符和运算规则与数值型表达式相同。值型表达式相同。 2.3.1 数值运算符及数值表达式(续数值运算符及数值表达式(续2) 返回返回2.3.2 字符串运算符及字符表达式字符串运算符及字符表达式 1.1.字符型表达式字符型表达式 字符型表达式是由字符型常量、字符型变量、返回字符型表达式是由字符型常量、字符型变量、返回字符型数据的函数和字符运
47、算符组成的表达式。字符型数据的函数和字符运算符组成的表达式。 2.2.运算符运算符 字符运算符主要有两类:连接运算符字符运算符主要有两类:连接运算符( (、) )和包和包含运算符含运算符($)($),它们被分别用来进行连接运算和包含运算。,它们被分别用来进行连接运算和包含运算。 (1)(1)连接运算符连接运算符+ +和和- - 运算符运算符“”将两个字符串按它们在原字符串将两个字符串按它们在原字符串中的顺序首尾相接;运算符中的顺序首尾相接;运算符“”号将两个字符串号将两个字符串中除左边字符串尾部空格以外的字符首尾相接,然中除左边字符串尾部空格以外的字符首尾相接,然后将左边字符串中的尾部空格移至
48、结果字符串的尾后将左边字符串中的尾部空格移至结果字符串的尾部。连接运算的结果仍为字符型。部。连接运算的结果仍为字符型。2.3.2 字符串运算符及字符表达式字符串运算符及字符表达式 (续(续1 1)例在命令窗口中执行如下命令例在命令窗口中执行如下命令m1= 操作系统操作系统m2Windows ? m2+m1 &显示显示“Windows 操作系统操作系统”? m2-m1+2000 *显示显示“Windows 操作系统操作系统2000”, m2后面的空格移到后面的空格移到*了了m1后面后面2.3.2 字符串运算符及字符表达式字符串运算符及字符表达式 (续(续2 2)(2)包含运算包含运算【语
49、法格式】【语法格式】$【功能【功能】 比较两个字符表达式,如果字符型表达式比较两个字符表达式,如果字符型表达式1包包含在字符表达式含在字符表达式2中,即字符型表达式中,即字符型表达式1是字符型表达式是字符型表达式2的子字符串,则运算结果为真的子字符串,则运算结果为真(.T.),否则为假,否则为假(.F.)。【说明【说明】“$”运算符两边的数据类型必须都是字符型,运算符两边的数据类型必须都是字符型,运算结果是逻辑型。运算结果是逻辑型。2.3.2 字符串运算符及字符表达式字符串运算符及字符表达式 (续(续3 3)例在命令窗口执行如下命令例在命令窗口执行如下命令a1=a1=湖北大学湖北大学 a2=a
50、2=湖北湖北 ? a1$a2 ? a1$a2 &显示显示.F.F.? a2$a1 ? a2$a1 &显示显示.T.T. 2.3.2 字符串运算符及字符表达式字符串运算符及字符表达式 (续(续4 4)返回返回2.3.3 日期型日期时间运算符及日期型日期日期型日期时间运算符及日期型日期时间表达式时间表达式 1. 1. 日期型日期时间型表达式日期型日期时间型表达式 日期型和日期时间型表达式允许日期型、日期时日期型和日期时间型表达式允许日期型、日期时间型数据或数值型数据参与运算,运算结果为日期间型数据或数值型数据参与运算,运算结果为日期型、日期时间型或数值型。型、日期时间型或数值型。2
51、. 2. 日期型与日期时间型运算符日期型与日期时间型运算符 日期或日期时间的运算符有日期或日期时间的运算符有“”和和“”两两种。日期或日期时间型表达式主要包括如下几种形种。日期或日期时间型表达式主要包括如下几种形式:式:【语法格式【语法格式1 1】 + 【语法格式【语法格式2 2】 - 【语法格式【语法格式3 3】 - 2.3.3 日期型日期时间运算符及日期型日期时间日期型日期时间运算符及日期型日期时间表达式表达式 (续(续1)【说明【说明】格式格式1 1运算结果的数据类型是日期或日期时间型,意运算结果的数据类型是日期或日期时间型,意为若干天或若干秒后的日期或时间;为若干天或若干秒后的日期或时
52、间;格式格式2 2运算结果的数据类型是日期或日期时间型,意运算结果的数据类型是日期或日期时间型,意为若干天或若干秒前的日期或时间;为若干天或若干秒前的日期或时间;格式格式3 3运算结果的数据类型是数值型,意为两个指定运算结果的数据类型是数值型,意为两个指定的日期或时间之间的天数或秒数。的日期或时间之间的天数或秒数。 2.3.3 日期型日期时间运算符及日期型日期时间日期型日期时间运算符及日期型日期时间表达式表达式 (续(续2)例在命令窗口中执行如下命令例在命令窗口中执行如下命令? 2003/10/10? 2003/10/102003/10/1 2003/10/1 * *显示两个日期相隔的天数显示
53、两个日期相隔的天数9 9。? 2003/10/10? 2003/10/101010* *结果为新的日期,显示结果为新的日期,显示10/20/0310/20/03? 2003/12/12,10:10-2003/12/12,8:10 ? 2003/12/12,10:10-2003/12/12,8:10 * *显示显示72007200,两个时间相差,两个时间相差72007200秒。秒。? 2003/12/12,10:10+60? 2003/12/12,10:10+60 * *显示显示12/12/03 1012/12/03 10:1111:00 AM00 AM。? 2003/10/22-2003/10
54、/23 ? 2003/10/22-2003/10/23 * *显示显示 2.3.3 日期型日期时间运算符及日期型日期时间日期型日期时间运算符及日期型日期时间表达式表达式 (续(续3)返回返回2.3.4 关系型运算符及关系运表达式关系型运算符及关系运表达式 1. 1. 关系型表达式关系型表达式 关系表达式的一般形式:关系表达式的一般形式: 2关系运算符用来比较两个表达式,运算结关系运算符用来比较两个表达式,运算结果为逻辑值。果为逻辑值。 2.2.关系运算符关系运算符 关系运算符包括:关系运算符包括: ( (大于大于) )、=(=(大于或等于大于或等于) )、 ( (小于小于) )、=(=(小于或
55、等于小于或等于) )、或或 # #或或 !=(!=(不等于不等于) )、=(=(等于等于) )、 =(=(全等于全等于) )。它们具有相同的优先级。它们具有相同的优先级。 其中:运算符其中:运算符=和和$ $仅适用于字符型数据,其他仅适用于字符型数据,其他运算符适用于任何数据类型,但是参与运算的两个运算符适用于任何数据类型,但是参与运算的两个表达式必须具有相同的数据类型。表达式必须具有相同的数据类型。 进行比较运算时,数值型数据按数值大小进行进行比较运算时,数值型数据按数值大小进行比较;日期型数据按年月日顺序进行比较,越早的比较;日期型数据按年月日顺序进行比较,越早的日期或时间越小,越晚的日期
56、或时间越大;字符型日期或时间越小,越晚的日期或时间越大;字符型数据按字符的数据按字符的ASCIIASCII码或汉字机内码进行比较;逻辑码或汉字机内码进行比较;逻辑型数据比较时,型数据比较时,.T.T.比比.F.F.大。大。 2.3.4 关系型运算符及关系运表达式关系型运算符及关系运表达式 (续(续1)3. 3. 设置字符的排序序列设置字符的排序序列【语法格式【语法格式】SET COLLATE TO machine | pinyin | SET COLLATE TO machine | pinyin | stroke stroke machine (machine (机器机器) ) :字符按机内
57、码排序,字母按字符按机内码排序,字母按ASCIIASCII码排序,空格在最前面、大写字母在小写字母后面;码排序,空格在最前面、大写字母在小写字母后面;对于一级汉字机内码与对于一级汉字机内码与PinYinPinYin的顺序相同。的顺序相同。pinyin (pinyin (拼音拼音) ):按拼音排序。小写字母在大写字母前面。按拼音排序。小写字母在大写字母前面。stroke (stroke (笔画笔画) ):对于汉字按笔画数进行比较。对于汉字按笔画数进行比较。2.3.4 关系型运算符及关系运表达式关系型运算符及关系运表达式 (续(续2)4. 4. 字符串比较与字符串比较与EXACT EXACT 设置
58、设置 运算符对字符串进行精确比较,只有两个运算符对字符串进行精确比较,只有两个字符串完全相同时,运算结果为真,否则为假;而字符串完全相同时,运算结果为真,否则为假;而运算符对两个字符串比较时,运算结果与运算符对两个字符串比较时,运算结果与 SET SET EXACT ON | OFF EXACT ON | OFF 的设置有关:处于的设置有关:处于OFF OFF 状态时,如状态时,如果右边的字符串与左边字符串的前面部分内容相同果右边的字符串与左边字符串的前面部分内容相同时,结果为真;处于时,结果为真;处于ON ON 状态时,先在短字符串的后状态时,先在短字符串的后面加空格,使两个比较的字符串长度
59、相同,再进行面加空格,使两个比较的字符串长度相同,再进行比较,直到两个字符串全部比较完毕。默认设置是比较,直到两个字符串全部比较完毕。默认设置是OFF OFF 状态。状态。 2.3.4 关系型运算符及关系运表达式关系型运算符及关系运表达式 (续(续3)返回返回2.3.5 逻辑型运算符及逻辑表达式逻辑型运算符及逻辑表达式 1. 1. 逻辑型表达式逻辑型表达式 逻辑型表达式是由逻辑常量、逻辑变量、返回逻逻辑型表达式是由逻辑常量、逻辑变量、返回逻辑值的函数、关系表达式和逻辑运算符组成的式子。辑值的函数、关系表达式和逻辑运算符组成的式子。运算结果为逻辑值。运算结果为逻辑值。2. 2. 逻辑运算符逻辑运
60、算符 逻辑运算符有逻辑运算符有NOTNOT或或!(!(逻辑非逻辑非) )、AND(AND(逻辑与逻辑与) )、OR(OR(逻辑或逻辑或) )三种。运算顺序:三种。运算顺序: 逻辑非逻辑非逻辑与逻辑与逻辑或逻辑或 3. 3. 运算符的优先级运算符的优先级 当不同类型的运算符出现在同一个表达式中时,它们当不同类型的运算符出现在同一个表达式中时,它们的优先顺序如下:的优先顺序如下:(1)(1) 字符型表达式、数值型表达式、日期型表达式、日期字符型表达式、数值型表达式、日期型表达式、日期时间型表达式具有相同的优级,且它们的优先级最高。时间型表达式具有相同的优级,且它们的优先级最高。(2)(2) 关系型表达式的优先级低于关系型表达式的优先级低于(1)(1)中所述的各优先级,中所述的各优先级,但高于逻辑型表达式。但高于逻辑型表达式。(3)(3) 逻辑型表达式的优先级最低。逻辑型表达式的优先级最低。 2.3.5 逻辑型运算符及逻辑表达式(续逻辑型运算符及逻辑表达式(续1 1) 返回返回返回目录返回目录2.4 2.4 VFPVFP的常用函数的常用函数 函数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教师招聘之《小学教师招聘》模拟考试高能(a卷)附答案详解
- 2025年教师招聘之《小学教师招聘》通关提分题库【各地真题】附答案详解
- 农业专利交易平台创新创业项目商业计划书
- 2025呼伦贝尔农垦那吉屯农牧场招聘考试备考及答案详解(夺冠系列)
- 独特汽车轮胎平衡块创新创业项目商业计划书
- 可持续时尚供应链服务创新创业项目商业计划书
- 2025年教师招聘之《小学教师招聘》通关试题库完整答案详解
- 教师招聘之《小学教师招聘》能力提升试题打印(模拟题)附答案详解
- 教师招聘之《小学教师招聘》题库(得分题)打印及完整答案详解(夺冠系列)
- 教师招聘之《幼儿教师招聘》综合练习含答案详解(预热题)
- 平行平板的多光束干涉
- 启航新课堂七数北上-第二章2.5有理数减法
- FZ/T 52025-2012再生有色涤纶短纤维
- 米酒酿造工艺(课堂PPT)
- 价值的创造与价值实现课件
- 萃智创新方法理论考试题库(含答案)
- 生物材料检验-课件
- 小学生视力检测登记表
- 【课件】物流系统规划与设计
- 时空大数据课件
- 正常心电图-完整课件
评论
0/150
提交评论