《VFP6.0数据与数据运算.ppt》由会员分享,可在线阅读,更多相关《VFP6.0数据与数据运算.ppt(19页珍藏版)》请在三一办公上搜索。
1、第3章 数据与数据运算,【目的要求】掌握数据库表中的数据类型掌握常量和变量的分类及特征掌握各运算符的意义及规则掌握日期格式与字符的比较规则掌握函数的功能及使用方法,3.1 常量与变量,在实际工作中所采集到的原始数据,通常要经过加工处理,变成对用户有用的信息。而数据处理的基本要求是对相同类型的数据进行选择归类。为了适应存储数据的需要,VF6提供了许多数据类型,常用的字段数据类型有如下的13种。,字符型(Character):由汉字、字母、数字、空格、符号等任意 ASCII码字符组成,字符型数据的长度为1-254,每个字符占1个字节,每个汉字占2个字节。货币型(Currency):用于储存货币值的
2、数据。货币型数据最多只能保留到小数点后4位,超过,则会四舍五入,不足四位,则自动在后面补0。表示范围:-922337203685477.5808 922337203685477.5809。数值型(Numeric):用于存储一个数量,由正负号、小数点、数字组成。Visual FoxPro 6.0对数值型支持十进制和十六进制两种方式,在表中占120个宽度。取值范围为-0.9999999999E+19-0.9999999999E+20,浮点型(Float):在功能上等价于数值型,在且中占120个宽度。日期型(Date):日期型数据包括表示日期的数字和区分它们的斜扛。如09/28/02。用于存放含有年
3、、月、日的日期数据。在表中占8个宽度。逻辑型(Logical):逻辑型数据仅包含有“真”或“假”两种情况,在表中占1个宽度。日期时间型(Date Timer):用于存放含有年、月、日、时、分、秒的日期和时间数据,在表中占8个宽度。双精度型(Bouble):用于存储精度要求更高的、位数固定的数值,其小数点的位置是由输入的数据值来决定的,在表中占8个宽度整型(Ineger):用于存储整数数据,取值范围为:2147438646-2147438646,在表中占4个宽度,所以整数字段类型比其他它段类型占据的存储空间小,而且不需作ASCII 码转换。,3.1 常量与变量,通用型(General):用于存储
4、OLE对象数据,在表中占4个宽度备注型(Memo):用于存储大量说明性文字。在表中占4个宽度二进制字符型(Character Binary):用于存储不需要系统代码维护的字符数据。其他特性同字符型数据。二进制备注型(Memo Binary):用于存储不需要系统代码维护的备注型数据。其他特性同备注型数据,练习:指出下列中各字段的类型、宽度、小数位,3.1 常量与变量,3.1.1 常量,常量是在命令操作或程序执行过程中,其值不变的量。VFP有6种常量,其特征如下表:,3.1 常量与变量,3.1.2 变量,变量是在命令或程序执行期间,其值可以改变的量。,1、变量的类型,练习:判断下列数据哪些是常量,
5、哪些是变量,是什么类型的常量。,146.85、“146.85”、“01/14/98”、奖金、“副教授”、F、F、“ABC”、“变量”、常量、$123.45、2002-4-28、黄冈职院、$123.45、3.12E+2、ABC、AB_C,3.1 常量与变量,赋值:格式1:store 表达式 to 内存变量表 格式2:内存变量名=表达式显示:显示所有内存变量:display/list memory like 通配符 to print to file(文件名)显示指定内存变量的值:?/?内存变量名清单保存:存储内存变量的文件称为内存文件,扩展名为.mem save to 内存文件名 all like
6、/all except 恢复:restore from 内存文件名 additive清除:清除所有内存变量:clear memory 清除部分内存变量:release 内存变量名清单 release all like/all except 例题:3.1-3.5,2、内存变量的基本操作(P31),3.1 常量与变量,1、数值运算符,例:求下列表达式的值,12+24/(6/2+23)*2/4-6*6%52例题3.6,3.2 运算符与表达式,2、字符运算符,例:求下列表达式的值,12+24/(6/2+23)*2/4-6*6%52例题3.7,3.2 运算符与表达式,3、日期、时间运算符,例:求下列表达
7、式的值,2008-8-8-200,3.2 运算符与表达式,例题3.8,4、关系运算符,比较方法:P35例题,3.2 运算符与表达式,5、逻辑运算符,逻辑运算符及其优先级为:.not.and.or.not.:与原值相反.and.:两个操作数都为真结果才为真.or.:两个操作数都为假时,结果才为假。,2+34 and 58 or not“1+2”=“12”,6、运算符优先级,先执行算术运算、字符串运算和日期时间运算,其次执行关系运算,最后执行逻辑运算,有括号的先算括号。,例:求下列表达式的值,3.2 运算符与表达式,7、表达式的输出命令?与?的区别(P38),3.2 运算符与表达式,3.3 常用函
8、数,1、数值函数,绝对值函数:abs(x)=|x|求平方根函数:sqrt(x)=圆周率函数:pi()取整函数:int(x)四舍五入函数:round(x,n)求余函数:mod(m,n)求最大、最小值函数:max(),min(),1、对X进行四舍五入,保留n位小数2、判断n是否整除m,例:函数的运用,2、字符函数,求字符串长度:len(串)产生空格:space(n)删除前导空格:ltrim(串)删除后导空格:trime(串)删除前后空格:alltrime(串)取左边子串:left(串,长度)取右边子串:right(串,长度)计算子串出现次数:occurs(串1,串2)求子串位置:at(串1,串2)
9、子串替换:strff(串1,超始位置,长度,串2)字符替换:chrtran(串1,串2,串3)字符串匹配:like(串1,串2),由“黄冈职业技术学院”中得到简称“黄冈职院”.,例:函数的运用,3.3 常用函数,3、日期和时间函数,求系统日期:date()求系统时间:time()求系统日期时间:datetime()求年:year(日期型数据)求月:month(日期型数据)求日:day(日期型数据)求时:hour(日期时间型数据)求分:minute(日期时间型数据)求秒:stc(日期时间型数据),计算现在2008年奥运会开幕式还有多少天,合多少年,多少周?,例:函数的运用,3.3 常用函数,4、
10、类型转换函数,用XXXX年XX月XX日的格式显示今天的日期和星期,例:函数的运用,3.3 常用函数,5、测试函数,测值域:between(表达式,下限,上限)测是否为空值(null):is null(表达式)测是否为空:empty(表达式)测数据类型:vartype(表达式)测表尾:eof(工作区号/表别名)测表首:bof(工作区号/表别名)测记录号:recno(工作区号/表别名)测记录数:reccount(工作区号/表别名)测删除标记:delete(表别名/工作区号),测试下列数据的类型:123,abc,”wee”,.t.,例:函数的运用,3.3 常用函数,归纳总结,1、VFP有五类运算符和五类函数:2、注意运算符的意义、结果和优先级3、注意函数的意义、运用方法。,