版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第二章第二章 Visual FoxPro数据基础数据基础本章内容简介VisualFoxPro作为一种基于关系模型的程序设计言语,具有完好的语法规那么。本章主要引见VisualFoxPro根本的言语元素,包括变量内存变量和字段变量、常量、函数及表达式和表达式的运算规那么等。学习目的利用VisualFoxPro进展数据管理,除运用数据库外,还必需学会编写程序,要编写程序就要会写语句,要会写语句就要掌握组成语句的根本元素。学习切入点及方法本章是编写程序和写表达式的根底,涉及的内容多而琐碎。学习时,应充分利用交互工具“命令窗口,经过看书与操作结合的方式学习,不用死记硬背。很多函数的功能、命令及表达式,
2、可以经过在命令窗口操作来了解和加深记忆,从而灵敏运用。方案用学时课堂讲授68学时,上机68学时。第二章第二章 Visual FoxPro数据基础数据基础2.1常量、变量及其数据类型2.2常用函数2.3表达式与运算第二章第二章 Visual FoxPro数据基础数据基础 常量:是指程序运转过程中其值坚持不变的量(一个详细的、不 变的值。) 1数值型常量(Numeric) 数值型数据:由数字、小数点和正负号等组成,包括整数、 小数、负数、浮点数、科学计数法表示的数等。 数值型数据用来进展数学运算。 如:140、0.33、-213、147.179、2E-8 等。2.1 常量、变量及其数据类型2.1.
3、1 2.1.1 常量常量第二章第二章 Visual FoxPro数据基础数据基础 2 2字符型常量字符型常量(Character)(Character) 字符型数据也称为字符串。通常用来表示文本类型的信字符型数据也称为字符串。通常用来表示文本类型的信息,息, 它由中英文字符、汉字、数字、空格和各种公用符号组它由中英文字符、汉字、数字、空格和各种公用符号组成。成。 字符型常量:是指用双引号字符型常量:是指用双引号“、单引号、单引号或方或方括号括号等定界符等定界符 括起来的字符串。定界符必需配对运用。括起来的字符串。定界符必需配对运用。 如:如:“kunmingkunming、昆明市昆明市、 12
4、34 1234。 假设一种定界符已作为字符型常量的组成部假设一种定界符已作为字符型常量的组成部分,应中选择另一种分,应中选择另一种 定界符来标识字符串。例如字符串:定界符来标识字符串。例如字符串: 昆明又称为昆明又称为“春春城城 2.1 常量、变量及其数据类型2.1.1 2.1.1 常量常量第二章第二章 Visual FoxPro数据基础数据基础 3 3逻辑型数据逻辑型数据(Logic)(Logic) 逻辑型数据:表示逻辑判别结果的值。逻辑型数据:表示逻辑判别结果的值。 逻辑型数据只需两个值:逻辑型数据只需两个值: TrueTrue真真 FalseFalse假假 逻辑真可以表示为逻辑真可以表示
5、为 .T.T.、.t.t.、.Y.Y.或或.y.y. 逻辑假可以表示为逻辑假可以表示为 .F.F.、.f.f.、.N.N.或或.n.n. 留意:前后两个点号是必需的。留意:前后两个点号是必需的。 在“命令窗口输入?命令及表达式:?1534,477230&在主窗口中显示运算结果运算结果为:.F.T.2.1 常量、变量及其数据类型2.1.1 2.1.1 常量常量第二章第二章 Visual FoxPro数据基础数据基础4 4日期型日期型(Date) (Date) 日期型数据:表示日期的特殊数据。日期型常量必需用花括号日期型数据:表示日期的特殊数据。日期型常量必需用花括号括起来。括起来。 1
6、1严厉日期格式严厉日期格式 格式为:格式为:yyyy-mm-ddyyyy-mm-dd 如:如:2021-05-012021-05-01或或2021/05/012021/05/01,表示,表示20212021年年5 5月月1 1日。日。 这种格式的日期阐明该日期是严厉的,按照这种格式的日期阐明该日期是严厉的,按照YMDYMD的格式来解的格式来解释日期和释日期和 日期时间,不受系统设置的影响,可以在任何情况下运用。日期时间,不受系统设置的影响,可以在任何情况下运用。 日期型数据表示范围是:日期型数据表示范围是:0001-01-010001-01-01至至9999-12-319999-12-31 2
7、 2传统的日期格式传统的日期格式 系统默许的日期型数据为美国日期格式:系统默许的日期型数据为美国日期格式: “mm/dd/yymm/dd/yy月月/ /日日/ /年年 月和日各为月和日各为2 2位,而年可以是位,而年可以是2 2位,也可以是位,也可以是4 4位,系统默以位,系统默以为为2 2位。位。 详细年代运用详细年代运用2 2位还是位还是4 4位,由系统设置决议。位,由系统设置决议。2.1 常量、变量及其数据类型2.1.1 2.1.1 常量常量第二章第二章 Visual FoxPro数据基础数据基础3 3影响日期格式的设置命令和选项影响日期格式的设置命令和选项 在日期格式中,系统默许的分隔
8、符为:斜杠在日期格式中,系统默许的分隔符为:斜杠/ /。 SET MARK TO SET MARK TO 日期分隔符日期分隔符 :可将分隔符设置成连字符:可将分隔符设置成连字符- -或或 点号点号 . .等。没有参数的等。没有参数的SET MARK TOSET MARK TO命令复原系统默许的分隔符。命令复原系统默许的分隔符。 SET DATE TO SET DATE TO 日期格式日期格式 :可将日期格式设置成其他格式。:可将日期格式设置成其他格式。 如:如: SET DATE TO mdy SET DATE TO mdy命令将日期格式设置为月命令将日期格式设置为月/ /日日/ /年年mm/
9、dd/yy)mm/dd/yy)。 SET STRICTDATE TO 0|1|2 SET STRICTDATE TO 0|1|2:设置能否对日期格式进展检查。:设置能否对日期格式进展检查。 在不进展严厉日期检查时,日期型可以用传统日期格式在不进展严厉日期检查时,日期型可以用传统日期格式“年年 / /月月/ /日的方式来表示,定界符可以是花括号,年月日之间的日的方式来表示,定界符可以是花括号,年月日之间的 分隔符可以是斜杠分隔符可以是斜杠/ /、 连字符连字符- -和空格。和空格。 SET CENTURY ON/OFF SET CENTURY ON/OFF:设置年份运用:设置年份运用4 4位或位
10、或2 2位表示,默以为位表示,默以为2 2位。位。 2.1 常量、变量及其数据类型2.1.1 2.1.1 常量常量第二章第二章 Visual FoxPro数据基础数据基础日期格式的设置也可以选择日期格式的设置也可以选择“工具菜单中的工具菜单中的“选项命令来完成。选项命令来完成。在在“区域选项区域选项卡中卡中设置日期格式设置日期格式第二章第二章 Visual FoxPro数据基础数据基础5. 5. 日期时间型日期时间型DateTime)DateTime) 日期型常量包括日期和时间两部分:日期型常量包括日期和时间两部分: , 日期部分与日期型常量类似,也有严厉和传统两种格式。日期部分与日期型常量类
11、似,也有严厉和传统两种格式。 时间部分的格式为:时间部分的格式为:hh:mm:ssa|phh:mm:ssa|p。 其中其中hhhh、mmmm和和ssss分别代表时、分和秒,默许值分别分别代表时、分和秒,默许值分别为为1212、0 0和和0 0。AM AM 或或A A和和PMPM或或P P分别代表上午和下午,默许值为分别代表上午和下午,默许值为AMAM。假设指定的时假设指定的时 间大于间大于1212,那么自然为下午时间。,那么自然为下午时间。6. 6. 货币型货币型CurrencyCurrency 货币型常量:用于表示货币值,是带货币单位的数据。货币型常量:用于表示货币值,是带货币单位的数据。
12、其书写格式与数值型常量类似,但要在前面加上货其书写格式与数值型常量类似,但要在前面加上货币符号币符号$ $。如:。如: $123.45$123.45。在存储和计算时,采用。在存储和计算时,采用4 4位小数,假设一个货位小数,假设一个货币常量多于币常量多于4 4位位 小数,那么系统将在小数点后小数,那么系统将在小数点后4 4位进展四舍五入。位进展四舍五入。2.1 常量、变量及其数据类型2.1.1 2.1.1 常量常量第二章第二章 Visual FoxPro数据基础数据基础 变量:在程序运转过程中,其值可以发生变化的量称为变量。变量:在程序运转过程中,其值可以发生变化的量称为变量。 Visual
13、FoxProVisual FoxPro中有两类变量中有两类变量: : 每个变量都有一个名字,可以经过变量名访问变量。每个变量都有一个名字,可以经过变量名访问变量。 给变量命名时,变量名必需遵守以下原那么:给变量命名时,变量名必需遵守以下原那么: 1 1、必需以字母或汉字开头。、必需以字母或汉字开头。 2 2、变量名中只能含有字母、变量名中只能含有字母( (汉字汉字) )、数字和下划线。、数字和下划线。 3 3、变量名不能是保管字,如对象名、系统预先定义的函数名等。、变量名不能是保管字,如对象名、系统预先定义的函数名等。构成数据库表文件的字段变量构成数据库表文件的字段变量内存变量内存变量2.1
14、常量、变量及其数据类型2.1.2 2.1.2 字段变量和内存变量字段变量和内存变量第二章第二章 Visual FoxPro数据基础数据基础 2.1.2.1 2.1.2.1 字段变量字段变量 字段变量:表中定义好的任一数据列,经过字段名作为变量名来标识字段变量。字段变量:表中定义好的任一数据列,经过字段名作为变量名来标识字段变量。学号姓名性别出生日期专业入学成绩三好生20090102019刘鹏男1991-10-7传媒学610.F.20090102019杨莹女1991-11-20传媒学598.T.20090201901何小方男1990-3-13管理学567.F.20090203001周红女1991
15、-2-11管理学655.F.20090201903李艳女1991-1-21管理学587.T.20090102369张丽女1991-12-11传媒学639.F.20090301087马波男1991-12-29历史590.F. 假设表中有假设表中有20条记录,每一个字段名就有条记录,每一个字段名就有20个可取值。在数据库表中有一个可取值。在数据库表中有一个记录指针,它指向的记录定义为当前记录,字段变量的现值就是当前记录中个记录指针,它指向的记录定义为当前记录,字段变量的现值就是当前记录中对应字段的值。记录指针可以挪动,因此字段的取值随着指针的挪动而改动,对应字段的值。记录指针可以挪动,因此字段的取
16、值随着指针的挪动而改动,所以字段或者字段名是变量。所以字段或者字段名是变量。2.1 常量、变量及其数据类型2.1.2 2.1.2 字段变量和内存变量字段变量和内存变量第二章第二章 Visual FoxPro数据基础数据基础数据类型阐明字符型字母、数字型文本货币型货币单位数值型整数或小数浮动型整数或小数日期型年、月、日日期时间型年、月、日、时、分、秒双精度型双精度数值整型正、负整数和零逻辑型真或假备注型不定长的字母、数字文本通用型OLE对象链接与嵌入字符型二进制字母数字型文本备注型二进制不定长的字母数字型文本字段变量的数据类型及其阐明字段变量的数据类型及其阐明第二章第二章 Visual FoxP
17、ro数据基础数据基础 2.1.2.2 2.1.2.2 内存变量内存变量 内存变量:内存中的一块存储区域,变量值就是存放在这个内存变量:内存中的一块存储区域,变量值就是存放在这个存存 储区域里的数据,变量的类型取决于变量值的类型。储区域里的数据,变量的类型取决于变量值的类型。 对内存变量赋值可以改动其内容和类型。对内存变量赋值可以改动其内容和类型。 例如,当把一个数值常量赋值给一个变量时,这个常量就例如,当把一个数值常量赋值给一个变量时,这个常量就被存入被存入 到变量中,它将取代变量的原值而成为该变量新的取值。到变量中,它将取代变量的原值而成为该变量新的取值。 特点:是独立于数据库文件而存在的变
18、量,用来存储数据特点:是独立于数据库文件而存在的变量,用来存储数据处置过程处置过程 中所需求的常数、中间结果和最终结果。还可以作为中所需求的常数、中间结果和最终结果。还可以作为控制变控制变 量,用来控制运用程序的运转。量,用来控制运用程序的运转。 内存变量内存变量6 6种类型:字符型种类型:字符型C C、数值型、数值型N N、逻辑型、逻辑型L L、 日期型日期型D D、日期时间型、日期时间型T T和货币型和货币型 Y Y。 内存变量由赋值语句定义,它的数据类型由赋值数据的类型内存变量由赋值语句定义,它的数据类型由赋值数据的类型决议。决议。2.1 常量、变量及其数据类型2.1.2 2.1.2 字
19、段变量和内存变量字段变量和内存变量第二章第二章 Visual FoxPro数据基础数据基础字段变量和内存变量的区别字段变量和内存变量的区别字段变量字段变量内存变量内存变量数据库表文件的组成部分独立于数据库文件而存在随表文件的定义而建立需求时随时定义有 C、N、D、L、M、G 等类型有 C、N、D、L、Y、T 等类型多值变量单值变量关机后保管在数据库表文件中关机后不保管,但可存入内存变量文件 假设在表中存在一个与内存变量同名的字段变量,那么字段变量优先。假设在表中存在一个与内存变量同名的字段变量,那么字段变量优先。 假设要访问内存变量,那么须在变量名前加上前缀假设要访问内存变量,那么须在变量名前
20、加上前缀M.M.或者或者M-M-,否那,否那么系么系 统将访问同名的字段变量。统将访问同名的字段变量。 第二章第二章 Visual FoxPro数据基础数据基础2.1.2.2 2.1.2.2 内存变量内存变量 1 1、内存变量赋值命令、内存变量赋值命令 给内存变量赋值命令有给内存变量赋值命令有 “= =、STORESTORE等。等。 运用运用“= =给变量赋值时,一次只能给一个变量赋值,给变量赋值时,一次只能给一个变量赋值,而而STORESTORE 命令可以同时给多个变量赋一样的值,各内存变量命令可以同时给多个变量赋一样的值,各内存变量名之间用逗号分开。名之间用逗号分开。 2 2、表达式值的显
21、示命令、表达式值的显示命令 ? ?和和? ?命令可以在命令可以在Visual FoxProVisual FoxPro的主窗口中显示表达式的的主窗口中显示表达式的值。值。 ? ? 命令与命令与? ?命令的作用一样,它们的区别是命令的作用一样,它们的区别是: : ? ?命令从光标当前行的下一行开场显示,即换行输命令从光标当前行的下一行开场显示,即换行输出;出;? ?命命 令在当前光标位置开场显示,即同行输出,令在当前光标位置开场显示,即同行输出,? ? 命令紧接命令紧接上一个上一个 显示位置输出表达式的值。当显示位置输出表达式的值。当? ?命令后面没有任何表达式命令后面没有任何表达式时,输时,输
22、出一个空行。出一个空行。? ? 命令与命令与? ?命令的各个输出项之间用逗号命令的各个输出项之间用逗号, ,分隔。分隔。2.1 常量、变量及其数据类型2.1.2 2.1.2 字段变量和内存变量字段变量和内存变量第二章第二章 Visual FoxPro数据基础数据基础 3 3、内存变量显示命令、内存变量显示命令 格式:格式:LIST MEMORY LIKELIST MEMORY LIKETO PRINT|TO FILETO PRINT|TO FILE 或:或:DISPLAY MEMORY LIKEDISPLAY MEMORY LIKETO PRINT|TO FILETO PRINT|TO FIL
23、E 4 4、内存变量的去除、内存变量的去除 格式:格式:CLEAR MEMORY CLEAR MEMORY 或:或:RELEASE RELEASE 或:或:RELEASE ALL LIKERELEASE ALL LIKE|EXCEPT|EXCEPT 第一种格式去除一切内存变量,其他格式去除指定的内存变量。第一种格式去除一切内存变量,其他格式去除指定的内存变量。RELEASE ALL LIKE X* 表示只去除变量名以表示只去除变量名以X开头的一切内存变量。开头的一切内存变量。RELEASE ALL EXCEPT X* 表示去除除了以表示去除除了以X开头的变量以外的一切内存变开头的变量以外的一切
24、内存变量,保管以量,保管以X开头的一切内存变量。开头的一切内存变量。2.1 常量、变量及其数据类型2.1.2 2.1.2 字段变量和内存变量字段变量和内存变量第二章第二章 Visual FoxPro数据基础数据基础 2.1.2.3 2.1.2.3 数组数组 数组:是一批数据的有序集合,数组中的每一个数据称为一个数组:是一批数据的有序集合,数组中的每一个数据称为一个数组元素。每一个数组元素相当于一个内存变量与数组相比,内数组元素。每一个数组元素相当于一个内存变量与数组相比,内存变量又称为简单变量。与简单内存变量不同,数组必需先定义存变量又称为简单变量。与简单内存变量不同,数组必需先定义后运用。后
25、运用。 1 1、数组的定义、数组的定义 格式:格式:DECLARE DECLARE (,),),(,)2) 或:或:DIMENSION DIMENSION (,),),(,)2) 两种格式功能一样。定义时将规定数组是一维或二维数组,两种格式功能一样。定义时将规定数组是一维或二维数组,数组名和大小。大小数组名和大小。大小 由下标值的上、下限决议,下限规定为由下标值的上、下限决议,下限规定为1 1。每个数组最多可以。每个数组最多可以包含包含36003600个元素。个元素。 数组创建后,在赋值前,系统自动给每个数组元素赋值为逻辑数组创建后,在赋值前,系统自动给每个数组元素赋值为逻辑假假.F.F.。
26、整个数组的数据类型为整个数组的数据类型为A AArrayArray,运用时可以给各个元素,运用时可以给各个元素分别赋值,一个分别赋值,一个 数组中各元素的数据类型可以不同,数组元素可以是恣意类数组中各元素的数据类型可以不同,数组元素可以是恣意类型的数据,其数据类型的数据,其数据类 型由对该变量的赋值决议。型由对该变量的赋值决议。 2.1 常量、变量及其数据类型2.1.2 2.1.2 字段变量和内存变量字段变量和内存变量第二章第二章 Visual FoxPro数据基础数据基础2 2、数组的运用、数组的运用 数组定义后,数组中每个元素就可以像内存变量一样数组定义后,数组中每个元素就可以像内存变量一
27、样运用。数组运用。数组 元素赋值与内存变量赋值一样,可用元素赋值与内存变量赋值一样,可用 STORE STORE 命令赋初值。命令赋初值。 格式格式: STORE : STORE TO TO = 功能功能: : 给数组中每个数组元素赋以一样的值。给数组中每个数组元素赋以一样的值。 在运用数组时应留意:在运用数组时应留意:1 1在同一运转环境,数组名不能与简单变量名一样。在同一运转环境,数组名不能与简单变量名一样。2 2可以用一维数组的方式访问二维数组。例如,可以用一维数组的方式访问二维数组。例如,dimension y(2,3)dimension y(2,3)定定义的数组中的元素义的数组中的元
28、素y(1,1),y(1,2),y(1,3),y(2,1),y(2,2),y(2,3)y(1,1),y(1,2),y(1,3),y(2,1),y(2,2),y(2,3)用一维用一维数组方式可以依次表示为:数组方式可以依次表示为:y(1)y(1)、y(2)y(2)、y(3)y(3)、y(4)y(4)、y(5)y(5)、y(6)y(6)。其中其中y(4)y(4)与与y(2,1)y(2,1)是同一变量。是同一变量。2.1 常量、变量及其数据类型2.1.2 2.1.2 字段变量和内存变量字段变量和内存变量第二章第二章 Visual FoxPro数据基础数据基础 2.1.2.4 2.1.2.4 用字段变量
29、给数组赋值用字段变量给数组赋值 格式格式: SCATTER FIELDS : SCATTER FIELDS TO TO 功能功能: : 将当前表文件的当前记录各字段值赋给数组各元素。将当前表文件的当前记录各字段值赋给数组各元素。 假设无假设无 FIELDS FIELDS 选项,那么按记录中字段的选项,那么按记录中字段的先后顺序传先后顺序传 送一切字段送一切字段( (备注字段和通用字段除外备注字段和通用字段除外) ),否那么按,否那么按 指定字段顺指定字段顺 序传送。字段的类型决议了数组变量的类型。序传送。字段的类型决议了数组变量的类型。 假设数组元素个数多于传送字段数,那么剩余的数组元假设数组
30、元素个数多于传送字段数,那么剩余的数组元素值不变,否素值不变,否 那么系统将自动添加数组元素个数。那么系统将自动添加数组元素个数。 例如:翻开例如:翻开“根本信息表文件,当前记录为第一条记录,根本信息表文件,当前记录为第一条记录,将它复制到将它复制到 数组数组RSRS中。中。2.1 常量、变量及其数据类型2.1.2 2.1.2 字段变量和内存变量字段变量和内存变量第二章第二章 Visual FoxPro数据基础数据基础 2.1.2.5 2.1.2.5 用数组数据交换当前记录的字段值用数组数据交换当前记录的字段值 格式格式: GATHER FROM : GATHER FROM FIELDS FI
31、ELDS 功能功能: : 用数组元素的值顺序交换当前表文件的当前记录用数组元素的值顺序交换当前表文件的当前记录各字段的值。各字段的值。 假设无假设无 FIELDS FIELDS 选项,那么按数组元素的选项,那么按数组元素的顺序从左到右地填顺序从左到右地填 入当前记录的每一个字段中入当前记录的每一个字段中( (备注字段和通用字段除外备注字段和通用字段除外) ),否那么按否那么按 指定字段填入。指定字段填入。 假设数组元素个数少于字段数,那么当前记录中其他假设数组元素个数少于字段数,那么当前记录中其他的字段值不受影响;的字段值不受影响; 反之剩余的数组元素不交换。反之剩余的数组元素不交换。 例如,
32、翻开表文件,定义数组,用数组中的值填入表例如,翻开表文件,定义数组,用数组中的值填入表中。中。2.1 常量、变量及其数据类型2.1.2 2.1.2 字段变量和内存变量字段变量和内存变量第二章第二章 Visual FoxPro数据基础数据基础 函数:是用来实现一种数据运算或转换的一段程序。每个函数都函数:是用来实现一种数据运算或转换的一段程序。每个函数都有特有特 定的运算功能或转换功能。定的运算功能或转换功能。 函数按功能分为:数值运算函数、字符处置函数、日期函数、函数按功能分为:数值运算函数、字符处置函数、日期函数、数据类数据类 型转换函数、测试函数等。型转换函数、测试函数等。 与数学函数一样
33、,自变量称为参数,对于合法的参与数学函数一样,自变量称为参数,对于合法的参 数,函数必有一个运算结果,称为函数值或前往值。数,函数必有一个运算结果,称为函数值或前往值。 函数的普通方式是:函数的普通方式是:(参数表参数表) 在运用函数时应留意以下几个问题:在运用函数时应留意以下几个问题: (1) 一切函数名必需跟随有圆括号,无论函数能否需求参数一切函数名必需跟随有圆括号,无论函数能否需求参数(宏宏代换函代换函 数数& 除外除外)。 (2) 每个函数必然有一个前往值,前往值有确定的数据类型。函每个函数必然有一个前往值,前往值有确定的数据类型。函数可作数可作 为表达式为表达式 的组成部分,
34、在组成表达式时,需特别留意类型的组成部分,在组成表达式时,需特别留意类型的匹配。的匹配。 (3) 传送给函数的参数也有一定的数据类型,必需按要求的数据传送给函数的参数也有一定的数据类型,必需按要求的数据类型传类型传 送参数值。送参数值。 2.2 2.2 常用函数常用函数第二章第二章 Visual FoxPro数据基础数据基础 数值函数:通常是指函数的前往值为数值的一类函数。数值函数:通常是指函数的前往值为数值的一类函数。 1. 取绝对值函数取绝对值函数 ABS( ) 格式格式: ABS() 功能功能: 求出求出的绝对值。的绝对值。 例:例:? ABS(-56), ABS(70-80) 56 1
35、0 2. 符号函数符号函数 SIGN( ) 格式:格式:SIGN() 功能:前往数值表达式的符号,当数值表达式的运算结功能:前往数值表达式的符号,当数值表达式的运算结 果为正、负和零时,函数值分别为果为正、负和零时,函数值分别为1、-1和和0。 例:例:STORE 77 TO X ? SIGN(60-X),SIGN(90-X) -1 12.2 2.2 常用函数常用函数2.2.1 2.2.1 数值函数数值函数第二章第二章 Visual FoxPro数据基础数据基础3. 3. 取整函数取整函数 INT( )INT( ) 格式:格式: INT(INT() 功能:前往功能:前往 值的整数部分。值的整数
36、部分。 例:例:? INT(40.5),INT(-40.5)? INT(40.5),INT(-40.5) 40 -40 40 -404. 4. 最大值函数最大值函数 MAX( )MAX( ) 格式:格式:MAX(MAX(,)2) 功能:求两个功能:求两个 的最大值。两个的最大值。两个 中的较近日期。中的较近日期。 例:例:? MAX(778.8,190.5),MAX(-35,-67)? MAX(778.8,190.5),MAX(-35,-67) 778.8 -35.00 778.8 -35.005. 5. 最小值函数最小值函数 MIN( )MIN( ) 格式格式: MIN(: MIN(,)2)
37、 功能功能: : 求两个求两个 中最小值。两个中最小值。两个 中的较远日期。中的较远日期。 2.2 2.2 常用函数常用函数2.2.1 2.2.1 数值函数数值函数第二章第二章 Visual FoxPro数据基础数据基础6. 6. 求平方根函数求平方根函数SQRT( )SQRT( ) 格式:格式:SQRT(SQRT() 功能:前往指定表达式的平方根。自变量表达式的功能:前往指定表达式的平方根。自变量表达式的值不能为负。值不能为负。 例:例:? SQRT(67),SQRT(9),SQRT(7-5)? SQRT(67),SQRT(9),SQRT(7-5) 8.19 3.00 1.41 8.19 3
38、.00 1.417. 7. 四舍五入函数四舍五入函数 ROUND( )ROUND( ) 格式:格式:ROUND(ROUND(,)2) 功能:前往指定表达式在指定位置四舍五入后的结果。功能:前往指定表达式在指定位置四舍五入后的结果。 2指明四舍五入的位置。假设指明四舍五入的位置。假设 2大于或大于或 等于等于0 0,表示要保管的小数位数;假设,表示要保管的小数位数;假设 2小于小于0 0,表示的是,表示的是 对整数部分进展四舍五入。对整数部分进展四舍五入。 例:例: ? ROUND(56.785,2),ROUND(1.455,0),ROUND(56,-? ROUND(56.785,2),ROUN
39、D(1.455,0),ROUND(56,-1),ROUND(-3.141,2)1),ROUND(-3.141,2) 56.79 1 60 -3.14 56.79 1 60 -3.142.2 2.2 常用函数常用函数2.2.1 2.2.1 数值函数数值函数第二章第二章 Visual FoxPro数据基础数据基础8. 8. 求余数函数求余数函数 MOD( )MOD( ) 格式:格式:MOD(MOD(,)2) 功能:前往两个数值相除后的余数值。功能:前往两个数值相除后的余数值。 1是被除数,是被除数, 2是除是除数。数。 假设被除数与除数同号,那么函数值即为两数相除的假设被除数与除数同号,那么函数值
40、即为两数相除的余数;余数; 假设被除数与除数异号,那么函数值为两数相除的余假设被除数与除数异号,那么函数值为两数相除的余数再加上除数数再加上除数 的值。的值。 例:例:? MOD(10,3),MOD(-10,3),MOD(10,-3),MOD(-10,-3)? MOD(10,3),MOD(-10,3),MOD(10,-3),MOD(-10,-3) 1 2 -2 -1 1 2 -2 -1 ? MOD(15,4), MOD(-15,-4), MOD(-15,4), MOD(15,-4) ? MOD(15,4), MOD(-15,-4), MOD(-15,4), MOD(15,-4) 3 -3 1
41、-1 3 -3 1 -12.2 2.2 常用函数常用函数2.2.1 2.2.1 数值函数数值函数第二章第二章 Visual FoxPro数据基础数据基础字符函数:通常是指自变量即参数是字符型的函数。字符函数:通常是指自变量即参数是字符型的函数。 1. 求子串函数求子串函数 SUBSTR( ) 格式:格式:SUBSTR(,) 功能:在功能:在的字符串中,从的字符串中,从开场取出开场取出 所指定的字符。假设省略第三个自变量所指定的字符。假设省略第三个自变量, 那么从指定位置不断取到最后一个字符。那么从指定位置不断取到最后一个字符。 例:例:? SUBSTR(yunnan university,8,
42、10) university ? SUBSTR(我们是学生我们是学生,7) 学生学生 2. 从左端取子串函数从左端取子串函数LEFT( ) 格式:格式:LEFT(,) 功能:从指定表达式的左端取出由功能:从指定表达式的左端取出由给出的指定长度给出的指定长度的子串。的子串。 例:例:? LEFT(至公天下至公天下,4) 至公至公 2.2 2.2 常用函数常用函数2.2.2 2.2.2 字符函数字符函数第二章第二章 Visual FoxPro数据基础数据基础3 3从右端取子串函数从右端取子串函数RIGHT( )RIGHT( ) 格式:格式:RIGHT(RIGHT(,) 功能:从指定表达式的右端取出
43、由功能:从指定表达式的右端取出由 给出的给出的指定长度的子串。指定长度的子串。 例:例:? RIGHT(? RIGHT(会泽百家会泽百家,4),4) 百家百家4 4小写转大写函数小写转大写函数 UPPER( )UPPER( )和大写转小写函数和大写转小写函数 LOWER( )LOWER( ) 格式:格式:UPPER(UPPER() LOWER( LOWER() 功能:功能:UPPERUPPER函数将字符表达式中一切小写字母函数将字符表达式中一切小写字母转换成大写字母。转换成大写字母。 LOWER LOWER 函数将字符表达式中一切大写字函数将字符表达式中一切大写字母转换成小写字母。母转换成小写
44、字母。 例:例:? UPPER(computer)? UPPER(computer) COMPUTER COMPUTER ? LOWER(OPERATION SYSTEM) ? LOWER(OPERATION SYSTEM) operation system operation system2.2 2.2 常用函数常用函数2.2.2 2.2.2 字符函数字符函数第二章第二章 Visual FoxPro数据基础数据基础5. 5. 求字符串长度函数求字符串长度函数LEN( )LEN( ) 格式:格式:LEN(LEN() 功能:前往指定字符表达式值的长度,即所包含的字符功能:前往指定字符表达式值的长
45、度,即所包含的字符个数。函数值个数。函数值 为数值型。为数值型。 例:例: ? LEN(Unix ? LEN(Unix 操作系统操作系统) ) 13 136 6删除字符串前后空格的函数删除字符串前后空格的函数 格式:格式:TRIM(TRIM() LTRIM( LTRIM() ALLTRIM( ALLTRIM() 功能:功能:TRIM()TRIM()前往指定字符表达式去掉尾部空格后得前往指定字符表达式去掉尾部空格后得到的字符串。到的字符串。 LTRIM()LTRIM()前往指定字符表达式去掉前面空格后得前往指定字符表达式去掉前面空格后得到的字符串。到的字符串。 ALLTRIM()ALLTRIM(
46、)前往指定字符表达式去掉前面和尾部前往指定字符表达式去掉前面和尾部空格后得到的字符串。空格后得到的字符串。 例:例:? TRIM( Visual FoxPro )? TRIM( Visual FoxPro ) Visual FoxPro Visual FoxPro 2.2 2.2 常用函数常用函数2.2.2 2.2.2 字符函数字符函数第二章第二章 Visual FoxPro数据基础数据基础7 7求子串出现位置函数求子串出现位置函数AT( )AT( ) 格式:格式:AT(AT(,) 功能:假设功能:假设 1是是 2的子串,的子串,那么前往那么前往 1的首字符在的首字符在 2中的位置,中的位置,
47、假设不是子假设不是子 串,那么前往串,那么前往0 0。函数的前往值为数值型。函数的前往值为数值型。 另有一个另有一个ATC()ATC()函数,与函数,与AT()AT()功能类似,但在子串比较功能类似,但在子串比较时不区分大小写。时不区分大小写。 阐明在阐明在 2中搜索中搜索 1第几次出现,默许值为第几次出现,默许值为1 1。例:例:? AT(Fox,Visual FoxPro),AT(Fox,Visual FoxPro,1),? AT(Fox,Visual FoxPro),AT(Fox,Visual FoxPro,1), AT(Fox,Visual FoxPro,2) AT(Fox,Visua
48、l FoxPro,2) 8 8 0 8 8 0 2.2 2.2 常用函数常用函数2.2.2 2.2.2 字符函数字符函数第二章第二章 Visual FoxPro数据基础数据基础8. 8. 字符串匹配函数字符串匹配函数LIKELIKE 格式:格式:LIKE(LIKE(,)2) 功能:比较两个字符串对应位置上的字符,假设功能:比较两个字符串对应位置上的字符,假设一切对应字符一切对应字符 都相匹配,函数前往逻辑真都相匹配,函数前往逻辑真(.T.)(.T.),否那么前,否那么前往逻辑假往逻辑假 (.F.)(.F.)。 1中可以包含通配符中可以包含通配符* *和?。和?。* *可以与任何可以与任何 数目
49、的字符相匹配,?可以与任何单个字符匹配。数目的字符相匹配,?可以与任何单个字符匹配。 例:例:x=we arex=we are y=happy y=happy ? ? LIKE(weLIKE(we* *,x),LIKE(w?,x),LIKE(y,x),LIKE(h,x),LIKE(w?,x),LIKE(y,x),LIKE(h* *,y),y) .T. .F. .F. .T. .T. .F. .F. .T.2.2 2.2 常用函数常用函数2.2.2 2.2.2 字符函数字符函数第二章第二章 Visual FoxPro数据基础数据基础 日期和时间函数:是指自变量通常是日期型或日期时间型数据。日期和
50、时间函数:是指自变量通常是日期型或日期时间型数据。 1. 时间函数时间函数 TIME( ) 格式:格式: TIME( ) 功能功能: 以以“时时:分分:秒秒(hh:mm:ss)格式前往当前系统时间,函数值格式前往当前系统时间,函数值为字符型。为字符型。 例例: 假设当时的系统时间是上午假设当时的系统时间是上午11时时25分分17秒,那么有秒,那么有: ? TIME() 11:23:17 假设提供恣意数值作为自变量,那么前往的时间精度为百分假设提供恣意数值作为自变量,那么前往的时间精度为百分之一秒。之一秒。 ?TIME(4) 11:23:17.33 2.2 2.2 常用函数常用函数2.2.3 2
51、.2.3 日期和时间函数日期和时间函数第二章第二章 Visual FoxPro数据基础数据基础2. 2. 日期函数日期函数 DATE( )DATE( ) 格式格式: DATE( ): DATE( ) 功能功能: : 前往当前系统日期,前往值为日期型。假设不经前往当前系统日期,前往值为日期型。假设不经过过 SET DATE SET DATE 命令特别设置,系统日期的格式为:月命令特别设置,系统日期的格式为:月/ /日日/ /年年 (MM/DD/YY)(MM/DD/YY)。 例例: : 假设今天的系统日期是假设今天的系统日期是 20192019年年2 2月月1111日,那么有日,那么有: : ?
52、DATE() ? DATE() 02/11/04 02/11/04 3. 3. 日期时间函数日期时间函数 DATETIME( )DATETIME( ) 格式格式: DATETIME( ): DATETIME( ) 功能功能: : 前往当前系统日期时间,前往值为日期时间型。前往当前系统日期时间,前往值为日期时间型。 例例: : 假设今天的系统日期是假设今天的系统日期是 20192019年年2 2月月1111日,上午日,上午1111时时2525分分1717秒,那么有秒,那么有: : ? DATETIME() ? DATETIME() 02/11/04 11:25:17 AM 02/11/04 11
53、:25:17 AM2.2 2.2 常用函数常用函数2.2.3 2.2.3 日期和时间函数日期和时间函数第二章第二章 Visual FoxPro数据基础数据基础取年份、月份和日期函数取年份、月份和日期函数YEAR( )YEAR( )、MONTH( )MONTH( )和和DAY( )DAY( ) 格式:格式:YEAR(YEAR(|) MONTH( MONTH(|) DAY( DAY(|) 功能:功能:YEAR()YEAR()从指定的日期表达式或日期时间表从指定的日期表达式或日期时间表达式中前往年份。达式中前往年份。 MONTH()MONTH()从指定的日期表达式或日期时间从指定的日期表达式或日期时
54、间表达式中前往月份。表达式中前往月份。 DAY()DAY()从指定的日期表达式或日期时间表达从指定的日期表达式或日期时间表达式中前往月份的日期。式中前往月份的日期。 例:例: STORE 2021-12-25 TO DSTORE 2021-12-25 TO D ?YEAR(D),MONTH(D),DAY(D) ?YEAR(D),MONTH(D),DAY(D) 2021 12 25 2021 12 25 假设当前系统日期是假设当前系统日期是20212021年年1 1月月1 1日,那么:日,那么: ?YEAR(DATE(),MONTH(DATE(),DAY(DAT?YEAR(DATE(),MONT
55、H(DATE(),DAY(DATE()E() 2021 1 1 2021 1 1前往值均为数值型。前往值均为数值型。2.2 2.2 常用函数常用函数2.2.3 2.2.3 日期和时间函数日期和时间函数第二章第二章 Visual FoxPro数据基础数据基础1. 1. 字符型转换成日期型函数字符型转换成日期型函数 CTOD( ) CTOD( ) 格式:格式: CTOD(CTOD() 功能:将功能:将 中的日期格式的字符串转换为日中的日期格式的字符串转换为日期型数据。期型数据。 例:例:? CTOD(01/11/09) &? CTOD(01/11/09) &将字符串将字符串01/1
56、1/0901/11/09转换成日期并显示。转换成日期并显示。 01/11/0901/11/092. 2. 日期型转换成字符型函数日期型转换成字符型函数 DTOC( )DTOC( ) 格式:格式:DTOC(DTOC( ,) 功能:将功能:将 中的日期型值转为字符型。中的日期型值转为字符型。 假设无选项假设无选项时,那么字符串的格式为:月时,那么字符串的格式为:月/ /日日/ /年;年;假设指定选项为假设指定选项为时,时, 那么字符串的格式为:那么字符串的格式为:yyyymmddyyyymmdd。其中的。其中的11可以是可以是恣意数值。恣意数值。 例:假假设今天是例:假假设今天是20192019年
57、年2 2月月1111日,日, ? ? 今天的日期是:今天的日期是:+DTOC(DATE()+DTOC(DATE() 今天的日期是:今天的日期是:02/11/1002/11/10 ? ? 今天的日期是:今天的日期是:+DTOC(DATE(),1)+DTOC(DATE(),1) 今天的日期是:今天的日期是:20190211 20190211 2.2 2.2 常用函数常用函数2.2.4 2.2.4 数据类型转换函数数据类型转换函数第二章第二章 Visual FoxPro数据基础数据基础3. 3. 数值型转换成字符型函数数值型转换成字符型函数 STR( ) STR( ) 格式:格式:STR(STR(,
58、) 功能:将功能:将 的值转为字符型数据。的值转为字符型数据。 前往字符串长度理想值前往字符串长度理想值L=L= 的整数部分的整数部分+1+1小数点。小数点。 值决议转换后的字符串长度,包括小数点、值决议转换后的字符串长度,包括小数点、负号。负号。 值决议转换后小数点右边小数位数。值决议转换后小数点右边小数位数。 假设假设 值大于值大于L L,那么字符加前导空格以满足规,那么字符加前导空格以满足规定的定的 要求;假设要求;假设 值小于值小于L L但大于等于但大于等于 值的整数位数,值的整数位数,那么优先满足整数那么优先满足整数 部分而自动调整小数位数;假设部分而自动调整小数位数;假设 值小于值
59、小于 值的整数位数,值的整数位数, 那么前往一串那么前往一串“* *。 例:例:? STR(123.45,6,2), STR(3.141592,4,4), STR(76543.212,3,2)? STR(123.45,6,2), STR(3.141592,4,4), STR(76543.212,3,2) 123.45 3.14 123.45 3.14 * * * *2.2 2.2 常用函数常用函数2.2.4 2.2.4 数据类型转换函数数据类型转换函数第二章第二章 Visual FoxPro数据基础数据基础4. 4. 字符型转换成数值型函数字符型转换成数值型函数 VAL( )VAL( ) 格式
60、格式: VAL(: VAL() 功能功能: : 将由数字符号包括数字、正负号、小数点将由数字符号包括数字、正负号、小数点组成的组成的 字符串转为数值型数据。字符串转为数值型数据。 中必需是有效的数值表达式中必需是有效的数值表达式可以是数值的可以是数值的 科学计数法表示,例如:科学计数法表示,例如:1.44E21.44E2。假设字符串。假设字符串内出现非数字字符,内出现非数字字符, 假设首字符不是数字符号,那么前往数值零,否假设首字符不是数字符号,那么前往数值零,否那么转换前面部分。那么转换前面部分。例:例:? VAL(123.45),VAL(123.87hello123), ? VAL(123.45),VAL(123.87hello123), VAL(happy99.78)VAL(happy99.78) 123.45 123.87 0.00 123.45 123.87 0.005. 5. 宏代换函数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 云南财经大学《物理化学Ⅳ》2023-2024学年第一学期期末试卷
- 2024年企业员工劳动合同解除与经济补偿补充协议6篇
- 2025年度高校图书馆馆藏图书采购合同2篇
- 2025年度电子商务平台定制软件开发合同模板3篇
- 2025年度二零二五年度农机租赁与农业废弃物资源化利用及环境治理合同
- 2025年度二零二五年度农业科技创新试验土地流转租赁协议3篇
- 2025年度二零二五年度农田农业废弃物资源化利用劳务服务合同样本
- 2025年度电力设施维护承包合同
- 2025年度安全生产应急物资储备合同模板3篇
- 2025年度变压器维修项目进度管理与验收合同
- 我和我的祖国拼音版
- 护理穴位贴敷课件
- 手工钨极氩弧焊焊接工艺指导书
- 分级护理细化标准[资料]
- 北师大七年级上数学易错题(共8页)
- 板式换热器计算
- 最新大学毛概期末考试重点总结
- 事故隐患排查治理统计分析制度
- 供应商供方履约评价表(参考模板)
- 杂物电梯维护保养施工方案(共37页)
- 徒步行军pt课件
评论
0/150
提交评论