VISUALFOXPRO数据与数据运算课件.ppt
《VISUALFOXPRO数据与数据运算课件.ppt》由会员分享,可在线阅读,更多相关《VISUALFOXPRO数据与数据运算课件.ppt(49页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、VisualFoxPro数据与数据运算(第四章)n n数据类型数据类型n n数组数组n n常量和变量常量和变量n n表达式与运算符表达式与运算符n n函数函数数数据据记记录录客客观观事事物物属属性性的的值值,通通常常分分为为不不同同的的数数据据类类型型,数数据据类类型型是是数数据据的的基基本本属属性性.VisualFoxProVisualFoxPro中中提提供供了了多多种种数数据据类类型型的的数数据据,数数据据类类型型一一旦旦被被定定义义,就就确确定定了了他他的的存存储储方方式式和和使使用用方方式式.VisualFoxProVisualFoxPro提提供供了了以以下下几几种种数据类型数据类型:
2、4.1数据类型类型类型说明说明数值型浮点型双精度型整型货币型字符型日期型日期时间型逻辑型备注型通用型常量是指在程序运行过程中始终保持不变的数据。4.2常量和变量n n变量变量n n常量常量变量是在程序运行的不同时刻,其值会发生改变的量常量包括备注型和通用型以外的所有数据类型,主要有:1.数值型常量由数字、小数点、正负号组成,数据最大精度为16位有效数据;数据最大长度为20位,其中小数点占1位。2.字符型常量字符型常量是用定界符界定的一串字符。常用的定界符有单引号、双引号“”、和方括号等。如果定界符成为常量的组成部分,则应使用另外的定界符。字符型常量最大长度为254位。4.2.1常量3.日期型与
3、日期时间型常量日期型与日期时间型常量是用括起来的一个包括日期和时间的数据,其有效性取决于格式的设置。空的时间值可用/:表示。4.逻辑型常量逻辑型常量只有真假两个值。用.T.或.t.、.Y.或.y.表示逻辑值为真,用.F.或.f.、.N.或.n.表示逻辑值为假。字母两边的英文句点不能省略。5.货币型常量货币型常量用于表示货币值。使用时应加上货币符号。在VisualFoxPro中,常用的变量类型有:内存变量、字段变量、数组变量和系统变量。内存变量是独立于数据库以外,存储在内存中的临时变量。它通常用于存放程序运行过程中所需要的原始数据、中间结果以及最终结果。内存变量的数据类型由它所保存的数据的类型决
4、定。当用户退出VisualFoxPro时,内存变量将自动消失。需要注意的是:当内存变量与字段同名时,若要使用内存变量,那么要在引用的内存变量名称之前添加“M.”。4.2.2变量字段变量是用户在定义表结构时所定义的字段名,它是一种多值变量。数组变量是一种特殊的内存变量。它是指一组有序的数据的集合,数组中的各元素称为数组元素。系统变量是VisualFoxPro建立并维护的内存变量。这些变量的名称由系统定义,并且以下划线“_”开头。变量的类型与常量类型相同。每一个变量的具体类型取决于其被赋予的值,因此在不同时刻,一个变量可以存放不同类型的数据。这里我们将主要讨论内存变量。1.使用STORE命令为内存
5、变量赋值命令格式:STOREeExpressionTOVarNameList|ArrayNameList命令功能:该命令用于为内存变量或数组变量赋值。命令说明:(1)eExpression参数是一个表达式。该表达式可以由常量、变量、函数和运算符组成。该命令将表达式的值赋予内存变量或数组变量。(2)VarNameList参数是内存变量列表。内存变量列表中的内存变量应用逗号分隔。该命令可以同时为多个内存变量赋值。(3)ArrayNameList参数是数组变量列表。数组变量列表中的数组变量应用逗号分隔。(4)该命令可以同时为多个内存变量或数组变量赋值。【例】store3*4toa1,a22.直接为内
6、存变量赋值使用“=”可以直接为内存变量赋值。【例】b1=3将b1赋值3;b2=b1+2将b1加2后的值赋给b2,此时b2等于5;b2=b2+3将b2加3后的值再赋给b2,此时b2等于8。说明:一个变量的值可以不断变化,最终结果是它最后一次的赋值。3.显示内存变量可以使用DISPLAYMEMORY命令或LISTMEMORY命令来查看已定义的变量。命令格式:DISPLAYMEMORY或LISTMEMORY命令功能:该命令用于显示已定义的变量。4.释放内存变量为了节省存储空间,变量使用完以后应及时释放,可以使用以下命令之一来释放存储空间:lRELEASEALL命令命令格式:RELEASEALL命令功
7、能:该命令用于释放全部变量。lRELEASE命令命令格式:RELEASE命令功能:该命令用于释放指定的内存变量。命令说明:MemVarList参数是内存变量列表。lRELEASE ALL LIKE LIKE Skeleton|EXCEPTSkeleton命令命令格式:RELEASEALLLIKESkeleton|EXCEPTSkeleton命令功能:该命令用于释放与指定模式相匹配的变量。命令说明(1)LIKESkeleton子句用于指定要释放与指定的模式相匹配的所有变量。Skeleton参数是含有通配符的模式。通配符“*”可以匹配一个字符串;通配符“?”可以匹配一个字符。(2)EXCEPTSk
8、eleton子句用于指定要释放除与指定的模式相匹配之外的所有变量。Skeleton参数是含有通配符的模式。lCLEARMEMORY命令命令格式:CLEARMEMORY命令功能:该命令用于释放全部变量。【例】RELEASEa1,a2释放变量a1,a2RELEASEALLLIKEa*释放以字母a开头的变量数组是按一定顺序排列的一组内存变量的集合,数组中的变量称为数组元素。数组必须先定义后使用。命令格式DIMENSIONArrayName1(nRows1,nColumns1),ArrayName2(nRows2,nColumns2).或DECLAREArrayName1(nRows1,nColumn
9、s1),ArrayName2(nRows2,nColumns2).命令功能:该命令用于定义一维或二维数组。3数组命令说明:(1)DIMENSION命令和DECLARE命令可以一次定义多个数组。(2)只设置nRows参数时,定义一维数组;同时设置nRows和nColumns参数时,定义二维数组。(3)系统规定nRows和nColumns参数的下界为1。(4)数组元素可以包含各种类型的数据,第一次定义时被赋值为.F.。【例】DIMENSIONA(3),B(2,3)表达式是指用运算符将常量、变量、字段或函数连接起来的有意义的式子。其类型由表达式最终计算结果的数据类型决定,主要有:数值型、字符型、日期
10、型、关系型、逻辑型。运算符包括:算术运算符、字符运算符、关系运算符、逻辑运算符。不同表达式使用的运算符不同,但运算符两边的数据类型必须相同,否则将导致因数据类型不匹配而出错。4-3表达式与运算符n n数值表达式数值表达式n n日期表达式日期表达式n n字符表达式字符表达式n n关系表达式关系表达式n n逻辑表达式逻辑表达式数值表达式是由算术运算符将常量、变量、字段或函数连接起来的式子,其结果仍为数值型数据。算术运算符有:+、-、*、/、*或、优先级为:*()、*、/、+、-同一优先级的按从左到右计算。【例】?(3*4+SQRT(25)/5)*4结果为524.3.1数值表达式字符表达式是由字符运
11、算符将常量、变量、字段或函数连接起来的式子,其结果仍为字符型数据。在字符运算符两边的数据必须是字符型数据。字符运算符有“+”和“-”两种。(1)直接连接(+)即用“+”将两个或多个字符串首尾连接形成一个新的字符串。(2)去空连接(-)即用“-”将两个或多个字符串相连接。如果前一个字符串尾部有空格,则将此空格移到后一个字符串的尾部。【例】?“ABC”+“DEF”=“ABCDEF”?“ABC”-“DEF”=“ABCDEF”4.3.2字符表达式日期表达式是由、运算符将日期连接起来的表达式,其结果仍为日期型数据。【例】?04/03/99+20结果为04/23/99?04/03/99-20结果为03/1
12、4/99?04/03/99-03/14/99结果为20(两日期相距的天数)需要注意的是:两个日期值相加是无意义的。4.3.3日期表达式关系表达式是由关系运算符将数值表达式、字符表达式、日期表达式连接起来的表达式,结果为逻辑真和逻辑假,分别用.T.和.F.表示。关系运算符有:、=、=、(!=、#)、=、=、$说明:(1)=与=不完全相同。前者称为普通比较,后者称为精确比较。当环境设定为SETEXACTON时,二者并无区别;当环境设定为SETEXACTOFF时,结果是不同的。比较时,使用右字符串去比较左字符串。当右字符串比较完,则比较结束。如果此时的比较结果相同,则=比较的值为.T.,而不管左字符
13、串是否结束;相反,=则要求左右必须完全一致,结果才为.T.。【例】?“abcde”=“abc”当设置了SETEXACTOFF时,上述关系表达式结果为.T.当设置了SETEXACTON时,上述关系表达式结果为.F.4.3.4关系表达式(2)比较大小时,日期早的日期型数据小于日期晚的日期型数据;字符型数据从左到右依次按其ASCII码值比较。(3)字符串包含运算符“$”用于比较左字符串是否存在于右字符串中。如果存在,则为.T.,反之为.F.。【例】?“王”$“王红”结果为.T.逻辑表达式是由逻辑运算符将关系表达式连接起来的表达式,结果为逻辑真和逻辑假。逻辑运算符有:.NOT.、.AND.和.OR.。
14、优先级别依此是:.NOT.、.AND.、.OR.。运算规则为:使用.NOT.运算的表达式为假,则逻辑表达式的值为真。使用.AND.连接的两个表达式的值同时为真,逻辑表达式的值为真;使用.OR.连接的两个表达式的值,只要有一个为真,则逻辑表达式的值为真。4.3.5逻辑表达式【例】83.and.8“c”.or.“a”“c”.not.5=28结果为.T.?性别=“女”.OR.年龄28结果为.T.4.3.5逻辑表达式VisualFoxPro提供了大量的函数,按返回值的类型或功能主要分为以下几类。4-4函数n n数值型函数n n日期函数n n字符型函数n n转换函数n n测试函数(1)绝对值函数)绝对值
15、函数格式:格式:ABS()功能:求数值表达式的绝对值。功能:求数值表达式的绝对值。【例例】?ABS(-12.34)结果为结果为12.34(2)最大值函数)最大值函数格式格式:MAX(,)功能:计算数值表达式的值,取较大者。功能:计算数值表达式的值,取较大者。【例例】?MAX(5*4,60/2)结果为结果为302.4.1数值型函数(3)最小值函数)最小值函数格式:格式:MIN(,)功能:计算数值表达式的值,取较小者。功能:计算数值表达式的值,取较小者。(4)平方根函数)平方根函数格式:格式:SQRT()功能:计算数值表达式的平方根。功能:计算数值表达式的平方根。【例例】?SQRT(25*4)结果
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VISUALFOXPRO 数据 运算 课件
限制150内