第二章VFP的数据表达式一、数据类型1.字符型字符型(Character,C
- 格式:doc
- 大小:165.00 KB
- 文档页数:7
第二章 VFP的数据表达式一、数据类型1.字符型字符型(Character,C型)通常用于储存文本信息,由字母、汉字、空格、数字、符号和标点等字符组成,宽度不能超过254字节。
若超过254字节,则请改用备注型。
例如:“abc”,“计算机”,“123”,“ID18”等。
2.货币型货币型(Currency,Y型)这种类型是专为货币数据设计的数据类型,表示方法是在数字前加一个$符号。
最多只能保留到小数点后4位,超过四位则会自动四舍五入:少于四位则会自动补零。
占8个字节的空间。
例如:money=$980.45678。
3.数值型数值型(Numeric,N型)用于表示数量,由数字0~9、+或-,以及小数点组成。
数值型数据占8个字节,长度为1~20个字节。
VFP中文版采用十进制和十六进制两种格式。
例如:98.66,0xff(前面加0x表示十六进制)。
数值型数据可采用科学计数法,如“3E2”代表“3×102”,“10e-2”代表“10×10-2”。
4.整型整型(Integer,I型)用于存储不含小数部分的数值。
是一种较小的数据类型,整数型占有内存空间4个字节。
5.浮点型浮点型(Float,F型)等价于数值型类型。
VFP出于兼容性的考虑设置了这个数据类型。
6.日期型日期型(Date,D型)用于存储日期数据。
由年、月、日三部分组成,存储格式为“YYYYMMDD”。
表示范围为{^0001/01/01}到{^9999/12/31},即公元0001年1月1日到公元9999年12月31日。
其中“^”符号表示此日期格式严格遵循YMD(year,month,day)的格式,使用日期型数据时应用大括号{}括起来。
日期型数据存储长度为8个字节。
例如:mydate={^2006/10/12}表示日期是2006年10月12日,而不是2006年12月10日。
7.时间日期型时间日期型(Date Time,T型)用于记录日期时间的数据。
第2章VFP表达式及应用数据是程序加工处理的对象,并以某种特定的形式存在。
在VFP中,各个数据的类型可能不同,不同数据类型决定了数据不同的存储方式与运算方法。
表达式是运算符连接常数、变量和函数等构成的运算式。
表达式作为命令的重要组成部分,主要完成各种计算任务。
2.1 数据类型与常数常数是在命令或程序执行过程中保持不变的量,而变量则指其值可以变化的量。
2.1.1数值型数据数值型数据,即能参与算术运算的数据,由数字0~9、小数点与正负号组成,其数据类型用符号N表示。
数值型数据在内存中占8个字节,能表示1~20位数据,整数在-6899999999999998至6899999999999998之间无误差;能表示的小数位数为0~19,小数位数≤15位(不含符号位)无误差。
数值型常数是整数或实数,如:23、-153和123.48,也可以用科学计数法表示数值型数据,如:用2.34e+4表示2.34×104,即23400。
2.1.2字符型数据字符型数据是英文字母、汉字或数字等符号组成的一串字符,其数据类型用符号C 表示。
一个字符型数据最多可由16777184个字符组成,半角英文字符占一个字节,一个汉字或全角字符占两个字节。
字符型常数也称为字符串,是用定界符括起来的一串字符。
定界符可以是半角的单引号、双引号或方括号,必须成对使用。
如:’我是学生’、”I Study VFP”和[男]都是字符型常数。
定界符本身不作为字符型常数的内容,当某种定界符是字符串中的内容时,必须用另一种定界符作为标志,如:’老师说:”明天交作业”’和[“Windows”操作]。
字符串长度是指字符串中所含字符的个数(1个半角字符长度为1,1个汉字或全角字符长度为2)。
如:字符串常数”说:'What'”的长度为9。
2.1.3货币型数据货币型数据作为一种特殊的数值型数据,用来表示货币值。
其数据类型用符号Y表示。
货币型常数是在数值前加货币符号$,如:$12.34。
VF辅导:VFP数据类型记载信息的符号组合称为数据,数据用于描述实体的对象及其属性.数据类型是数据的基本属性,只有相同类型的数据才可以直接进行运算.在vfp中,共有13种字段类型和7种数据类型.13种字段类型是:字符型,数值型,浮点型,双精度型,整型,货币型,日期型,日期时间型,逻辑型,备注型,通用型,二进制字符型和二进制备注型.而7种数据类型是:字符型,数值型,货币型,日期型,日期时间型,逻辑型和通用型.字段为表文件所特有,而数据既可做表文件中的字段内容,也可以做内存变量或常量使用.1.字符型字段和字符型数据:字符型字段用于存放字符型数据.字符型数据是指一切可印刷的字符,包括英文字母,阿拉伯数字,各种符号,汉字及空格.上述"职工档案"表中的"编号"和"姓名"字段就属于字符型字段,而其中存储的编号和姓名就属于字符型数据.字符型字段的宽度为1~字节.2.数值型,浮点型,双精度型,整型字段与数值型数据:数值型字段按每位数1个字节存放数值型数据,而浮点型字段存放浮点型数据.这两者最大宽度为20位.整型字段存放整数,用该类型字段存放较大的整数可节省存储容量,因为它只占4个字节.双精度型字段用于存放双精度型数,常用于科学计算,可得15位精度,但只占8个字节.这些字段中存放在数据统称为数值型数据.3.货币型字段和货币型数据:货币型字段用于存放货币型数据,但只占8个字节.4.日期型字段和日期型数据:日期型字段用于存放日期型数据.常用格式为:"年.月.日"和"月/日/年".在"职工档案"表中,"出生日期"字段就是日期型字段,而其中存放的数据就是日期型数据.5.日期时间型字段和日期时间型数据:日期时间型字段存放日期时间型数据,格式为:年.月.日小时:分:秒Am或pm.6.逻辑型字段和逻辑型数据:逻辑型字段用于存放逻辑型数据.逻辑型数据只有两个值,即"真"和"假",常用于描述只有两种状态的数据.例如:在"职工档案"表中,"婚否"字段就是逻辑型字段,用"真"表示已婚,"假"值表示未婚.在输入逻辑型数据时,可用T,t,Y,y中的任一个代表"真",而用F,f,N,n中的任一个代表"假".7.备注型字段:备注型字段用于存放字符型信息,如文本、源代码等,使其得到了广泛应用.它常用于记录信息可有可无、可长可短的情况.例如,如果要在"职工档案"表中增加一个"简历"字段,定义成备注型最合适,因为有些人的简历可能长些,有些人的简历可能短些.此外,备注型字段还可用于提供运行时的帮助信息.记录在备注型字段中的信息,实际上并不存放在表文件中,而是存放在与表文件同名,但扩展名为.fpt的文件中.当创建表文件时,如果定义了备注型字段,则相应的备注文件会自动生成,会随表文件的打开而自动打开.8.通用型字段和通用型数据:通用型字段可用于存放照片、电子表格、声音、图表及字符型数据等.通用型数据使vfp成为全方位的数据库.通用型字段中的数据也存入.fpt文件中.。
第二章 VFP的数据表达式
一、数据类型
1.字符型
字符型(Character,C型)通常用于储存文本信息,由字母、汉字、空格、数字、符号和标点等字符组成,宽度不能超过254字节。
若超过254字节,则请改用备注型。
例如:“abc”,“计算机”,“123”,“ID18”等。
2.货币型
货币型(Currency,Y型)这种类型是专为货币数据设计的数据类型,表示方法是在数字前加一个$符号。
最多只能保留到小数点后4位,超过四位则会自动四舍五入:少于四位则会自动补零。
占8个字节的空间。
例如:money=$980.45678。
3.数值型
数值型(Numeric,N型)用于表示数量,由数字0~9、+或-,以及小数点组成。
数值型数据占8个字节,长度为1~20个字节。
VFP中文版采用十进制和十六进制两种格式。
例如:98.66,0xff(前面加0x表示十六进制)。
数值型数据可采用科学计数法,如“3E2”代表“3×102”,“10e-2”代表“10×10-2”。
4.整型
整型(Integer,I型)用于存储不含小数部分的数值。
是一种较小的数据类型,整数型占有内存空间4个字节。
5.浮点型
浮点型(Float,F型)等价于数值型类型。
VFP出于兼容性的考虑设置了这个数据类型。
6.日期型日期型(Date,D型)用于存储日期数据。
由年、月、日三部分组成,存储格式为“YYYYMMDD”。
表示范围为{^0001/01/01}到{^9999/12/31},即公元0001年1月1日到公元9999年12月31日。
其中“^”符号表示此日期格式严格遵循YMD(year,month,day)的格式,使用日期型数据时应用大括号{}括起来。
日期型数据存储长度为8个字节。
例如:mydate={^2006/10/12}表示日期是2006年10月12日,而不是2006年12月10日。
7.时间日期型
时间日期型(Date Time,T型)用于记录日期时间的数据。
由日期数据加具体时间构成,存储格式为“YYYYMMDDHHMMSS”。
其中时间部分的取值为:00:00:00a到11:59:59p之间。
例如:mydatetime={^2006/12/14 10:30:05p} 。
8.双精度型
双精度型(Double,B型)常用来记录高精度的数据。
9.逻辑型
逻辑型(Logical,L型)用于存储只有两个值的数据,即逻辑真T(t)或Y(y)和逻辑假F(f)或N(n)。
10.通用型
通用型(General,G型)是一种用于OLE(对象的链接与嵌入)存储对象(字处理文档、电子表格、图片、声音等)的数据类型。
这些OLE对象是用其他应用程序建立的,该类型的长度固定为4个字节。
11.备注型
备注型(Memo,M型)在字段名长度上和通用型一样,在表中占4个字节,实际的备注内容以后缀名.fpt的独立文件存储。
需要指出的是,因为备注型数据只用于表中,所以内存中不存在备注型的变量和数组元素。
二、常量
在程序运行过程中取值不能改变的量称为常量,
有以下6种数据类型:数值型常量、字符型常量、日期型常量、日期时间型常量、逻辑型常量、货币型常量。
三、变量
1、内存变量
内存变量是用户通过命令或程序在内存中开辟的一块存储区域,可用来存储数据。
定义内存变量时需为其取名并赋初值,这个变量才可以使用,否则,系统会提示:找不到变量。
(1).内存变量的命名规则
内存变量名是以字母(汉字或下划线)为开头;由字母、数字、下划线组成;至多128个字符;不可与系统保留字同名。
所谓系统的保留字是VFP语言使用的命令名、参数等,如USE、LIST就是系统保留字。
(2).内存变量的赋值命令
格式1:<内存变量>=<表达式>
格式2:STORE <表达式> TO <内存变量表>
功能:定义内存变量,计算表达式的值,赋值给内存变量。
说明:内存变量的类型由所提供的值的数据类型所决定。
STORE命令的<内存变量表>可包括多个内存变量,但须用逗号来分隔。
该命令可将同一值赋给多个变量,而“=”命令仅可为一个内存变量赋值。
例:xm='王洪'
store 0 to a,b
(3).输出内存变量
? <表达式>:在新的一行打印输出<表达式>。
?? <表达式>:在当前行打印输出<表达式>。
(4).内存变量的显示
DISPLAY | LIST MEMORY [LIKE <带通配符内存变量>]
功能:显示内存变量的当前信息,包括变量名、作用域、数据类型和变量存储值。
的作用:分屏显示内存变量;
的作用:一次显示内存变量。
(5).内存变量的清除
格式1:CLEAR MEMORY
格式2:RELEASE <内存变量名表>
功能:清除内存变量,释放内存空间。
2、字段变量
字段变量是在数据库中定义的变量,每一个字段名都是一个字段变量。
字段变量是永久变量,也是一种多值变量,它的值因记录而异。
内存变量与字段变量的区别:
当内存变量和字段变量同名时,默认为字段变量,如想指明为内存变量,须在内存变量名前加M.或M->(由减号和大于号组成),即M.<内存变量>或M-><内存变量>。
3、数组
数组是按一定顺序排列的一组内存变量,是具有相同名称而下标不同的一组有序内存变量,数组中的各个变量称为数组元素。
数组使用前需要先定义。
在VFP中,一个数组中的数据不必是同一种数据类型。
常用的有一维数组,二维数组。
数组的定义:
DIMENSION | DECLARE | PUBLIC <数组名1>(<下标1>[,<下标2>])[,<数组名2>(<下标1>[,<下标2>])]…功能:定义一维或二维数组,及其下标的上界。
系统规定下标的下界为1。
说明:用DECLARE或DIMENSION定义私有数组;用PUBLIC命定义全局数组。
4、系统内存变量
系统内存变量是下划线起头的内存变量,是系统内部提供的特有变量。
四、表达式
带两个操作数的运算符称为双目运算符,带一个操作数的称为单目运算符。
1、数值型表达式(算术表达式)
2、字符型表达式
3、日期型表达式
日期型运算符
日期时间型运算符
4、关系型表达式
关系型表达式是由两个同类型的表达式用关系运算符连接起来的式子。
其运算结果为逻辑值真(.T.)或假(.F.)。
运算符优先级:级别相同,运算顺序从左到右。
5、逻辑型表达式
逻辑型表达式由逻辑型常量、变量、函数、关系表达式和逻辑运算符构成。
其结果为逻辑值。
逻辑运算符有:逻辑非“.NOT.”(单目运算符)、逻辑与“.AND.”和逻辑或“.OR.”。
逻辑型运算符
逻辑型运算规则
5、运算符的优先级
算术运算符/字符串运算符/日期运算符→关系运算符→逻辑运算符。
五、函数
函数有函数名、参数、函数值三大要素:
第一,函数名起标识作用。
第二,参数是自变量,一般是表达式,写在括号里。
有的函数没有参数,称“哑参数”。
如DATE()。
第三,函数运算会返回一个函数值,称为函数值,函数值会因参数而异。
1、数值函数
2、字符函数
3、日期和时间函数
4、数据类型转换函数。