《数据与及数据运算》PPT课件.ppt

上传人:tia****nde 文档编号:14166924 上传时间:2020-07-08 格式:PPT 页数:53 大小:291KB
返回 下载 相关 举报
《数据与及数据运算》PPT课件.ppt_第1页
第1页 / 共53页
《数据与及数据运算》PPT课件.ppt_第2页
第2页 / 共53页
《数据与及数据运算》PPT课件.ppt_第3页
第3页 / 共53页
点击查看更多>>
资源描述
2020/7/8,1,第2章 数据及数据运算,2020/7/8,2,第一节 数据及其运算,在Visual FoxPro系统中,数据可用常量、变量、数组表示。数据还可以用字段、记录和对象表示,由它们存储、使用各种类型的数据。,2020/7/8,3,一、Visual FoxPro的数据类型 1字符型(character) 用字母C表示,用字母、数字、符号、汉字组成的字符串,常用于表示名称,其长度最长不超过254个字符。 2数值型(Numeric) 用字母N表示,用来表示数量并可以进行算术运算的数据类型。由阿拉伯数字、正负号、小数点组成。Visual FoxPro中,具有数值特征的数据类型还有整型、浮点型和双精度型,但这三种数据类型只用于字段变量。,2020/7/8,4,3日期型(Date) 用字母D表示,用来表示日期的数据类型。日期的默认 格式为: mm/dd/yy 其中MM表示月,DD表示日,YY表示年。日期型数据的长度固定为8位。 4日期时间型(Date Time) 用字母T表示,是用来表示日期和时间,默认格式为: mm/dd/yy hh:mm:ss 其中mm,dd,yy的意义与日期型相同,hh,mm,ss分别表示时、分、秒。长度也固定为8位。 5逻辑型(Logic) 用字母L表示,用来描述客观事物真假或是非判断的数据类型。只有两个取值:真(.t.或.T.)和假(.f或.F.),逻辑型数据长度固定为1位。,2020/7/8,5,6货币型(Currency) 用字母Y表示,为存储货币值而使用的一种数据类型,它默认保留4位小数,占据8字节的存储空间。 7备注型(Memo) 用字母M表示,用来存放较多字符的数据类型。只用于表中字段类型的定义。字段长度固定为4个字节。实际数据存放在与表文件同名的备注文件(.ftp)中,其长度依实际需要而定。 8通用型(General) 用字母G表示,是用来存储OLE对象的数据类型。可以是电子表格、文挡、图形、声音等,跟备注型数据一样,它只用于表中字段类型的定义,通用型数据字段长度固定为4位。,2020/7/8,6,二、常量 常量是在命令操作或程序执行过程中,其值不变的量。 常用的常量有以下类型:数值型常量、字符型常量、逻辑型常量、日期型常量、货币型常量。,2020/7/8,7,1字符型常量 字符型常量又称为字符串。Visual FoxPro要求将字符串中所有字符,用一对双引号“ ”或单引号 或方括号 作为定界符对括起来。 如:在命令窗口中键入以下命令 ?“abc” ,数据库文件、“123” 回车执行后在屏幕上显示结果以下: abc 数据库文件 “123”。,2020/7/8,8,2日期型常量 日期型常量是表示日期值的数据,其默认格式是: mm/dd/yyyy 如10/01/02和10/01/2002均表示2002年10月1日这一日期常量值。 严格的日期格式是: yyyy-mm-dd 符号表明该格式是严格的日期格式,并按照 YMD 的格式解释日期型和日期时间型数据,它是严格日期格式的标志,不可缺少。有效的日期型和日期时间型数据分隔符为:连字符“-”、正斜杠“/”、句点“.”和空格。如2002-10-01、2002/10/01 /,分别表示2002年10月1日。,2020/7/8,9,日期格式设置命令: (1)set mark to 日期分隔符 作用:输出日期时分隔符号( 减号、小数点、空格、分号) 例:set mark to - (3) | set century on /off 作用:设置年份的位数on 为位、off为位。 (2)set date to cy 功能:设置输出的年月日格式。 CY:各种常用日期格式短语,如下表:,返回本章,返回首页,2020/7/8,10,2020/7/8,11,例: ?date() Set mark to “-” ?date() Set date to ymd Set mark to “ ” ?date() Set century off ?date(),返回本章,返回首页,2020/7/8,12,设置不同的日期格式在命令窗口中键入如下命令: set century off set mark to “.” set date to mdy ?2001-08-06 回车执行后,屏幕显示: 08.06.01,2020/7/8,13,3逻辑型常量 逻辑型常量就是表示逻辑判断结果“真”或“假”的逻辑值。逻辑常量只有真和假两种,分别用(.t.或.y.)和(.f.或.n.)表示真和假。一般应在表示逻辑常量的字母左右加注圆点符“.”以示区别。 逻辑型常量在内存中占用一个字节。,2020/7/8,14,4数值型常量 也称常数,用来表示一个数量的大小,由数字0-9、小数点和正负符号组成。例如,12.3,-67,3.14等。也可以使用科学计数法形式表示,例如:6.789*105可表示为6.789E5。,2020/7/8,15,5.货币型常量: 数值前前置一个符号$,如$23.45,$123.5678等,存储时采用4位小数 ,多于四位则自动对多余的小数四舍五入。,2020/7/8,16,三、 变量 变量是在操作过程中可以改变其取值或数据类型的数据项。在Visual FoxPro系统中变量分为字段变量、内存变量2类。 确定一个变量,需要确定其三个要素:变量名、数据类型和变量值。,2020/7/8,17,变量的特点: 变量的类型取决于变量值的类型; 在使用前不必进行特殊的声明或定义; 变量的值和类型通过赋值来完成; 重新赋值将改变原来的值和类型; 例1.5:a=100 ?a 回车后拍屏幕显示:100 a=“你好!” ?a 回车后屏幕显示:你好!,2020/7/8,18,1命名规则 (1) 使用字母,下划线、汉字和数字命名。一般建议不采用汉字命名; 命名以字母或下划线开头;除自由表中字段名、索引的TAG标识名最多只能10个字符外,其他的命名可使用1128个字符; 避免使用 Visual FoxPro的保留字; 文件名的命名应遵循操作系统的约定 (2)当前字段变量与内存变量同名时字段变量优先,此时内存变量要以“M.变量名” 或“M变量名”表示。,2020/7/8,19,2内存变量的赋值 内存变量是在内存中定义的一种单个数据元素的临时性变量。 (1)内存变量的数据类型 内存变量的数据类型包括:数值型、字符型、逻辑型、日期型; (2)内存变量的建立 建立内存变量就是给内存变量赋值。内存变量赋值既可定义一个新的内存变量,也可改变已有内存变量的值或数据类型。 命令格式一: store to 命令功能:计算的值并赋值给各个内存变量。 命令格式二: = 命令功能:计算的值并赋值给指定内存变量。,2020/7/8,20,例: x=6+5 store 6+3 to x store 6+3 to x,y store 2 , 3 to x,y不正确,2020/7/8,21,3. 表达式的显示输出 可以用两个命令在屏幕上显示输出内存变量的值。 命令格式: ?| ? ?:先回车换行,再计算并输出表达式的值; ?:在屏幕上当前位置,计算并直接输出表达式的值;,2020/7/8,22,4内存变量的显示 格式一:list memory liketo printer/to file 格式二:display memory liketo printer/to file 如:a1=98 A2=.t. X1=2003-5-6 Abc=$456.78 B2=“中华人民共和国” 则命令list memory的显示结果为:,2020/7/8,23,5.内存变量的清除 格式1:release 内存变量表 功能:清除指定的内存变量。 格式2:release all like/except 通配符 功能:清除满足条件的内存变量。 格式3:clear memory 功能:清除当前所有的内存变量(同release all)。 格式4:clear all 功能:清除当前所有内存变量,同时关闭已打开的数 据库表、索引文件等一系列文件。,2020/7/8,24,6.字段变量 (1)概念:表中的各条记录在同一个字段名中有不同的取值,这个字段名称为字段变量,字段名下的取值,称为字段变量的取值。 例如:学生商品表中有“商品名称”字段,该字段下有牛奶、署片等食品的名称。 “食品名称”称为字段变量 具体食品(牛奶、署片 )称为字段变量的取值。,2020/7/8,25,(2)字段变量的数据类型(13种): 字符型、数据值型、浮点型、逻辑型、日期型、备注 型、通用型、货币型、日期时间型、双精度型、整型、字符型(二进制)、备注(二进制),2020/7/8,26,7、数组,数组:一组内存变量的集合(先定义后使用) 1、定义数组:dimention 数组名 (数值1,数值2) 例:dime a(4),b(2,3) 2、赋值:同内存变量。 3、特点:1)各数组元素类型可以不同。 2)下标计数从1开始。 3)数组各个元素的默认值为 .F. 4)b(1,3)=b(3),返回本章,返回首页,2020/7/8,27,数组实例,dimension a(2,3),? a(4) ? a(2,1) ? a(6) ? a(2,3),2020/7/8,28,dimension a(2,3),b(3) ?a(1,2),a(2,3) a(1,1)=“武汉” a(1,2)=“黄冈” a(2,1)=“荆门” b=“计算机协会” ?a(1), a(2), a(3), a(4), a(5), a(6) ? b(1),b(2),b(3),2020/7/8,29,表中数据与数组数据之间的交换: 将表的当前记录复制到数组 格式1:scatter fields memo to blank 格式2:scatter fields like 通配符 fields except memo to 数组名 blank 将数组数据复制到表的当前记录 格式1:gather from fields memo 格式2:gather from fields like/except memo,2020/7/8,30,第二节 Visual FoxPro的表达式,在Visual FoxPro系统中,表达式是由常量、变量、函数与运算符组成的有意义的运算式子。 运算符分为算术(数值)运算符、字符运算符、逻辑运算符和关系运算符五类,相应的,表达式也分为算术表达式、字符表达式、逻辑表达式和关系表达式五类。 常量、变量和函数可以作为表达式的特例。,2020/7/8,31,运算符两侧的数据对象必须具有相同数据类型,否则运算将会出错; 各类运算的优先顺序如下: 圆括号算术运算字符串运算关系运算逻辑运算,2020/7/8,32,1. 算术表达式 算术表达式又称数值表达式,其运算对象和运算结果均为数值型数据。数值运算符的功能及运算优先顺序,如表2-2所示。表中运算符按运算优先级别从高到低顺序排列。 表2-2 算术运算符,2020/7/8,33,例: 2*3+4 2*3+5 3+2(1+2) 15%4 15%-4,2020/7/8,34,2. 字符表达式 字符表达式是由字符运算符将字符型数据对象连接起来进行运算的式子。字符运算的对象是字符型数据对象,运算结果是字符常量或逻辑常量。表2-3为字符运算符 的功能。,2020/7/8,35,表2-3 字符运算符 两个连接运算的优先级别相同,但高于$的比较运算。,2020/7/8,36,例: a=”hello ” b=”everyone!” ?a+b,a-b 回车后屏幕显示为: hello everyone! Helloeveryone!,2020/7/8,37,3. 日期/日期时间表达式,2020/7/8,38,4. 关系表达式 由关系运算符连接两个同类数据对象进行关系比较的运算式称为关系表达式。关系表达式的值为逻辑值,关系表达式成立则其值为“真”,否则为“假”。 表2-4 关系运算符,2020/7/8,39,(1)单个字符 单个字符的比较是以字符ASCII码的大小作为字符的“大小”,也就是先后顺序。 (2)字符串 两个字符串进行比较的基本原则是从左到右逐个字符进行比较,但因系统相关设置状态不同,比较的结果与预期的不完全相同。,2020/7/8,40,(3)字符串比较 设置字符比较次序的命令是:set collate to “” a. machine(机内码)次序:字符按ascii码值比较(小写字母大写字母空格), 汉字按拼音顺序比较。 例如:“abc” “abcd”、“b” “b”、“c” “李” b. pinyin(拼音)次序:汉字按拼音顺序比较,字符按 大写字符小写字符空格进行比较。 例如:“a” “a”,2020/7/8,41,(4)字符串精确比较 a. = 只有两个字符串完全相同,运算结果才是逻辑“真”(.T.) 例如:“abcd”=“abcd”,2020/7/8,42,b. = 运算结果与set exact on/off设置有关 。 系统默认off状态。当处于off状态时,只要右边的字符串与左边的字符串的前面部分内容相匹配,其运算结果就是真值(.t.)。 当处于on状态时,只有两个字符串完全相同,运算才是逻辑“真”(.t.) 例:“abcde”=“abc”、 “ abc”=“ ” on时结果为 :.f. .f. off时结果为:.t . .t. (off,即左“包含”右),2020/7/8,43,5. 逻辑表达式 由逻辑运算将逻辑型数据对象连接而成的式子称为逻辑表达式。逻辑表达式的运算对象与运算结果均为逻辑型数据。表2-5为逻辑运算符的功能。逻辑运算符前后一般要加圆点“.”标记,以示区别。 表2-5 逻辑运算符,2020/7/8,44,逻辑运算符及其优先级为:.not.and.or. .not.:与原值相反 .and.:两个操作数都为真结果才为真 .or.:两个操作数都为假时,结果才为假。,2020/7/8,45,对于以逻辑型字段进行逻辑判断的情况,一般不用关系表达式而直接用逻辑表达式。 如“性别”是一个逻辑型字段,并约定“真”表示男性,“假”表示女性。 判断是否为男性: FOR 性别, 不用FOR 性别=.T. 判断是否为女性: FOR .NOT. 性别,不用FOR 性别=.F.。,2020/7/8,46,6运算符优先级 先执行算术运算,字符运算和日期运算,再执行关系运算,最后执行逻辑运算。当然可以用括号来改变其优先级。括号括起来的应优先运算。 例: 多种表达式运算示例 ? 93 AND 53 OR a$ab AND .NOT.f. 主屏幕显示: .t. ? (100%3=1) AND (15-4=0) OR 张=张三 主屏幕显示: .f.,2020/7/8,47,第三节 Visual FoxPro常用函数,Visual FoxPro系统中,按函数运算、处理对象和结果的数据类型,可分为数值型函数、字符型函数、逻辑型函数、日期函数、数据转换函数等。,2020/7/8,48,函数的分类: 函数分为:自定义函数和系统函数 表示方法:函数名(形参) 系统函数分类: (14类) 数值函数、字符函数、日期函数、类型转换函数、 测试函数、表和数据库函数、菜单函数、窗口函数、 SQL查询函数、位运算函数、对象特征函数、文件处 理函数、系统调用函数。,2020/7/8,49,一、数值函数,绝对值函数:abs(x) = |x| 求平方根函数:sqrt(x)= 圆周率函数:pi( ) 取整函数:int(x) 四舍五入函数:round(x, n) 求余函数:mod(m,n) 求最大、最小值函数:max( ), min( ) 取大整函数(求大于或等于表达式值的最小整数):Ceiling() 取小整函数(求小于或等于表达式值的最大整数):floor(),2020/7/8,50,求字符串长度:len(串) 产生空格:space(n) 删除前导空格:ltrim(串) 删除后导空格:trim(串) 删除前后空格:alltrim(串) 取左边子串:left(串,长度) 取右边子串:right(串,长度) 计算子串出现次数:occurs(串1,串2) 求子串位置:at(串1,串2) 字符串匹配:like(串1,串2) 宏替换函数:&.,由“黄冈职业技术学院”中得到简称“黄冈职院”.,例:函数的运用,二、字符函数,2020/7/8,51,求系统日期:date( ) 求系统时间:time( ) 求系统日期时间:datetime( ) 求年:year(日期型数据) 求月:month(日期型数据) 求日:day(日期型数据) 求时:hour(日期时间型数据) 求分:minute(日期时间型数据) 求秒:sec(日期时间型数据) 求字符型月份年份:cmonth,三、日期和时间函数,2020/7/8,52,重点掌握:ctod() dtoc() val() str() upper() lower(),四、类型转化函数,2020/7/8,53,测值域:between(表达式,下限,上限) 测是否为空值(null):is null(表达式) 测是否为空:empty(表达式) 测表尾:eof(工作区号/表别名) 测表首:bof(工作区号/表别名) 测记录号:recno(工作区号/表别名) 测记录数:reccount(工作区号/表别名) 测删除标记:delete(表别名/工作区号),测试下列数据的类型:123,abc,”wee”,.t.,例:函数的运用,五、测试函数,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


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

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


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