FOXPRO语言基础.ppt_第1页
FOXPRO语言基础.ppt_第2页
FOXPRO语言基础.ppt_第3页
FOXPRO语言基础.ppt_第4页
FOXPRO语言基础.ppt_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2章VisualFoxpro语言基础 辽东学院 信息技术学院崔晓斐 信息技术学院崔晓斐制作 本章基本内容 2 1VisualFoxPro6 0的数据类型2 2常量和变量2 3运算符与表达式2 4常用函数 信息技术学院崔晓斐制作 2 1VisualFoxPro6 0的数据类型 2 1 1字符型2 1 2数值型2 1 3浮点型2 1 4双精度型2 1 5整型2 1 6货币型 2 1 7日期型2 1 8日期时间型2 1 9逻辑型2 1 10备注型2 1 11通用型 信息技术学院崔晓斐制作 2 1 1字符型 Character 字符型的变量或字段用来存放类似名称 地址等文本信息 在字符型数据中可以包含任何键盘上输入的可见字符以及汉字和标点符号 字符型数据宽度为1 254个字节 2 1 2数值型 Numeric 数值型的变量或字段用来存放一个数量的大小 数值型数据由数字0 9 小数点和正负号构成 数值型数据在内存中用8个字节表示 在表中用1到20个字节表示 该类型数据表示范围 0 9999999999E 19到 0 9999999999E 20 信息技术学院崔晓斐制作 2 1 3浮点型 Float 该数据类型在功能上完全等价于数值型 之所以出现两个相同功能的数据类型 主要是出于兼容性的考虑 浮点型数据在内存中用8个字节表示 在表中用1到20个字节表示 其表示的数值范围为 0 9999999999E 19到 0 9999999999E 20 2 1 4双精度型 Double 双精度型字段用于存放双精度型数据 常用于科学计算 存储精度比数值型高 可得15位精度 它占用8个字节 该类型数据不能用内存变量存储 信息技术学院崔晓斐制作 2 1 5整型 Integer 整型字段用于存放整数 其优点在于比其他数值型数据占据的存储空间要小 它只用4个字节 该类型数据可以用内存变量存储 2 1 6货币型 Money 货币型字段用于存放货币型数据 货币型只保留4位小数 超过4位 将进行四舍五入到4位 其只占用8个字节 该类型数据可以用内存变量存储 信息技术学院崔晓斐制作 2 1 7日期型 Date 日期型字段用作存放日期型数据 常用日期型格式为 年 月 日 和 年 月 日 日期型字段的宽度是固定的 占用8个字节 其中年 月 日各占两个字节 该类型数据可以用内存变量存储 2 1 8日期时间型 DateTime 日期时间型字段是用来存放日期时间型数据 其格式为年 月 日时 分 秒AM或PM 它占用8个字节 该类型数据可以用内存变量存储 例 89 12 110 20 30am 信息技术学院崔晓斐制作 2 1 9逻辑型 Logic 逻辑型字段用来存放逻辑型数据 逻辑型数据只有两个值 即 真 和 假 可用T t Y y任一个字符表示 真 用F f N n中任一个字符表示 假 其占用的宽度是固定的 为1个字节 2 1 10备注型 Memo 备注型字段可以存放多种信息 可以是字符文本 源程序代码等数据 其长度为4个字节 用于记录在备注项中的信息 实际上该信息并不存放在表文件中 而是存放在与表文件同名 而扩展名为 FPT 的备注文件中 信息技术学院崔晓斐制作 2 1 11通用型 General 通用型字段可以存放图片 电子表格 声音等数据 其长度为4个字节 有了这种类型字段就使得VisualFoxPro6 0成为可以保存电子表格 文档 图片等信息的全方位数据库 与备注型字段一样 通用字段数据也存入与表文件同名而扩展名为 FPT的文件中 该类型数据不能用内存变量存储 信息技术学院崔晓斐制作 2 2常量和变量 2 2 1常量2 2 2变量2 2 3数组2 2 4内存变量的操作 信息技术学院崔晓斐制作 2 2 1常量 VisualFoxpro中常量的特征是在所有的操作过程中其值不变 常量类型有数值型 浮点型 字符型 逻辑型 日期型 日期时间型6种 可以使用 命令直接显示常量的值 1 数值型常量 数值型常量 N 可以进行算术运算的常数 可以是整数或实数 是由数字 0 9 小数点和正负号组成的 示例 25 3 也可以使用科学记数法形式书写 示例 用1 6E 2表示1 6 10 2 最大精度是16位有效数字 信息技术学院崔晓斐制作 2 字符型常量 C 字符型常量 C 是用定界符括起来的由字符 空格或数字所组成的字串 定界符可以是单引号 双引号或方括号 成对出现 当某一种定界符本身是字符型常量的组成部分时 就应选用另一种定界符 示例 ade 568 book 3 逻辑型常量 L 逻辑型常量 L 只有两个值 真 与 假 用 T t Y y 表示 真 用 F f N n 表示 假 信息技术学院崔晓斐制作 4 日期型常量 D 日期型常量 D 定界符必须用一对大括号 括起来 日期型常量输入格式为 yyyy mm dd 日期型常量输出格式为 mm dd yy注 mm代表月 dd代表日 yy代表年 通过以下Set命令可以改变日期常数的输出格式 1 设置日期型常数的输出格式分隔符命令 SetMarkTo 日期分隔符 2 设置日期型常数的指定输出格式命令 SetDateToAmerican Mdy Ymd long short 练习 04 02 06 05 02 06 T 322 6 322 6 n 信息技术学院崔晓斐制作 5 日期时间型常量 T 日期时间型常量 T 必须用一对大括号括起来 例 2008 03 0410 20 10am 6 货币型常量 Y 货币型常量 Y 在数字前加上一个 符号 例 20 信息技术学院崔晓斐制作 2 2 2变量 变量 其值是变化的变量名 是由字母 汉字 数字和下划线组成的 但必须以字母 汉字开头 其长度可以在1 254个字符之间 自由表中字段名长度为1 10之间 VisualFoxPro6 0定义了2种类型变量 字段变量 就是二维表中的列 每列为一个字段变量 有字段名和字段值内存变量 内存中的变量 一般由用户定义简单变量 下标变量 数组系统内存变量 由系统规定 学号 姓名 性别 出生日期 简历 a m n x y a 1 b 2 3 x 5 信息技术学院崔晓斐制作 1 字段变量 字段变量是数据库表文件结构中的数据项 VisualFoxPro6 0定义了13种类型字段变量 字段变量是在建立表时定义的 它是一个多值变量 对于不同的记录 字段变量的值是不同的 2 内存变量 简单变量 VisualFoxPro6 0定义了6种类型内存变量 分别是字符型 数值型 逻辑型 日期型 日期时间型 货币型 系统规定 如果内存变量与打开的当前表文件的字段同名时 则字段名优先 若此时要调用同名的内存变量 则必须在变量前加上M 或M 作为前缀 用以强调这一变量是内存变量 例 字段变量 姓名内存变量 姓名 姓名 显示字段变量值 M 姓名 内存变量值 信息技术学院崔晓斐制作 2 2 3数组 下标变量 数组是一组按一定顺序排列的内存变量 数组中的各个变量称为数组元素 每个数组可以通过数组名和下标来访问 数组必须先定义后使用 1 数组的定义 格式 DIMENSION DECLARE 功能 定义一个一维或二维数组 同时定义该数组的下标的上限 例 dimensiona 7 b 3 4 定义一个一维数组和一个二维数组 一维数组有7个元素 二维数组有12个元素 一维数组 4536274890230 二维数组b 3 4 b 1 1 b 1 2 b 1 3 b 1 4 b 2 1 b 2 2 b 2 3 b 2 4 b 3 1 b 3 2 b 3 3 b 3 4 一维数组a 7 a 1 a 2 a 3 a 4 a 5 a 6 a 7 二维数组 204130153678101645467894 a 1 b 2 1 信息技术学院崔晓斐制作 说明 1 定义数组时必须指定数组名 数组的维数 数组的大小 2 系统规定数组的下标的下限是1 2 数组中各个元素在数组中的位置由下标表示 a 1 a 2 3 数组定义后 数组中各个元素的的初始值是 F 4 数组中各个元素的取值类型可以互不相同 5 用赋值命令可以对数组元素赋值 也可以对数组中的所有元素赋同一值 6 在可以使用简单内存变量的地方 均可使用数组元素 7 在同一运行环境中 数组名不能与简单内存变量同名 Dimea 5 b 3 4 a 8 a a 1 2a 2 9a 3 4 信息技术学院崔晓斐制作 2 2 4内存变量的操作 1 内存变量赋值命令 1 STORETO 命令功能 计算的值 并将的值赋给内存变量表中的每一个变量 中可以是一个变量 也可以是多个变量 若是多个变量 各变量间用逗号隔开 2 命令功能 计算的值 并将的值赋给内存变量 2 显示表达式的值命令格式 命令功能 依次计算中表达式的值 并将表达式表的值在屏幕上输出 号后不加表达式时 输出一个空行 信息技术学院崔晓斐制作 3 内存变量的显示命令格式 LIST DISPLAYMEMORY LIKE 命令功能 显示当前已定义的内存变量名 作用范围 类型和值 LIKE子句表示显示于通配符相匹配的内存变量 代表多个字符 代表一个字符 信息技术学院崔晓斐制作 4 内存变量的保存与恢复 在命令窗口定义的内存变量如果需要的话 可以保存的扩展名为 mem的文件中 再次使用时可以从文件中恢复 保存内存变量的命令格式 SAVETO恢复内存变量的命令格式 RESTOREFROM 5 内存变量的清除 命令格式 RELEASE ALL LIKE EXCEPT 命令功能 从内存清除指定的内存变量 例 Releaseallreleasea b 信息技术学院崔晓斐制作 练习 A 中国合肥 给变量A赋值 A 显示变量A的值B 2006 02 21 给变量B赋值 B 显示变量B的值M VisualFoxPro 给变量M赋值N 数据库 给变量N赋值STORE10TOX Y Z 给变量X Y Z赋值 M N 显示变量M N的值 X Y Z 显示变量X Y Z的值DISPLAYMEMORY 显示所有内存变量的值 信息技术学院崔晓斐制作 M 安徽省会 A 中国合肥 给变量A赋值SAVETOabc 将所有内存变量保存到abc MEM文件中CLEARALL 清除所有内存变量 M A 观察结果RESTOREFROMabc 将abc MEM文件中的内存变量恢复到内存中 M A 显示所有内存变量的值 信息技术学院崔晓斐制作 2 3运算符与表达式 表达式是VisualFoxPro6 0命令的重要组成部分 它是由运算符将常量 变量 函数等运算对象连接起来的式子 表达式的运算顺序 按运算符优先级别从高到低的顺序进行计算 同级别的运算按从左向右的顺序计算 表达式的类型 根据表达式运算符的不同 表达式可分为 数值表达式 字符表达式 日期表达式 关系表达式和逻辑表达式 各类运算的优先顺序如下 圆括号 算术和日期运算 字符串运算 关系运算 逻辑运算 信息技术学院崔晓斐制作 2 3 1算术运算符与数值表达式 1 算术运算符算术运算符有 求模 括号等 运算符的优先级从高到低排序为 括号 负号运算符 或 乘幂 乘 除 求模 加 减 2 数值型表达式数值表达式是数值型变量 常数 函数等由算术运算符连接起来的有用意义的式子 示例 5 7 70 5 2 7 8 2 信息技术学院崔晓斐制作 2 3 2字符串运算符与字符表达式 1 字符串运算符 将两个字符串首尾相连组成一个新的字符串 将前一个字符串尾部空格移到后一个字符串尾部 然后两字符串再相连组成一个新的字符串 检查第一个字符串是否被包含在第二个字符串中 若是 则结果为 T 否则为 F 2 字符型表达式字符型表达式是使用字符串运算符将字符型项目连接起来的算式 运算结果也为字符型 字符型表达式 A B C 字符串运算符 A ABC C XYZ ABC T F 信息技术学院崔晓斐制作 A 北京 B 是个美丽的城市 A B A BA 北京是个美丽的城市 B 美丽 C 特别美丽 B A C A A B 北京是个美丽的城市 北京是个美丽的城市 T F F 信息技术学院崔晓斐制作 2 3 3日期时间运算符与日期表达式 1 日期时间运算符日期时间运算符有 日期时间型数据 数值型数据 新的日期时间型数据 日期时间型数据 数值型数据 新的日期时间型数据日期时间型数据 日期时间型数据 数值型数据 表示天数 信息技术学院崔晓斐制作 2 日期型表达式 日期型表达式是使用算术运算符将日期型数据 数值数据连接起来的算式 形式有如下两种 表达式一 或 计算结果得到另一个日期 为日期型数据 表达式二 计算结果得到两日期之间相差的天数 为数值型数据 信息技术学院崔晓斐制作 2 3 4关系运算符与关系表达式 1 关系运算符关系运算符有 大于 大于或等于 或 或 不等于 它们的优先级别相同 2 关系表达式 关系表达式是用关系运算符将表达式连接起来的式子 关系表达式的运算结果是逻辑值 当关系成立 结果则为真 否则为假 信息技术学院崔晓斐制作 信息技术学院崔晓斐制作 2 3 5逻辑运算符与逻辑表达式 1 逻辑运算符NOT 非 当NOT后所跟表达式为真 执行NOT后为假 AND 与 只有当AND两边表达式都为真 结果才为真 否则为假 OR 或 OR两边表达式中只要有一个表达式的值为真 则为真 只有两个表达式都为假 逻辑表达式的结果才为假 优先级别 从高到低顺序为 NOT AND OR 书写 逻辑运算符NOT AND OR的前后可以加 也可以省略 信息技术学院崔晓斐制作 2 逻辑表达式 逻辑型表达式是由逻辑运算符将关系表达式连接起来的式子 逻辑表达式类型 AND 或者 OR NOT 各种类型运算符的优先级从高到低为 算术运算符 字符 日期运算符 关系运算符 逻辑运算符 信息技术学院崔晓斐制作 2 4常用函数 2 4 1数值运算函数2 4 2字符处理函数2 4 3日期 时间处理函数2 4 4转换函数2 4 5逻辑函数2 4 6其他函数 信息技术学院崔晓斐制作 2 4 1数值运算函数 1 绝对值函数格式 ABS 功能 返回指定数值表达式的绝对值 2 取整函数格式 INT 功能 取数值表达式的整数部分 小数舍掉 3 符号函数格式 SIGN 功能 判断的符号 该数值为正 零 负数时分别返回1 0 1 信息技术学院崔晓斐制作 4 自然指数函数格式 EXP 功能 求以自然数e为底 以数值表达式的值为指数的指数值 5 对数函数 自然对数格式 LOG 功能 求的自然对数即以e为底的对数 常用对数格式 LOG10 功能 求的以10为底的对数值 信息技术学院崔晓斐制作 6 平方根函数格式 SQRT 功能 求的算术平方根 7 四舍五入函数格式 ROUND 功能 对的值进行四舍五入 保留的小数位数由来确定 设为N 当N 0时 则保留N位小数 其N 1位小数四舍五入 当N的整数部分从小数点向左的第N位四舍五入 当N 0时 四舍五入取整 例 536 66 信息技术学院崔晓斐制作 8 最大值函数格式 MAX 功能 求两个的值之较大者 或两个中的最近日期 9 最小值函数格式 MIN 功能 求两个的值之较小者 或两个中的较远日期 信息技术学院崔晓斐制作 10 求余函数 或求模函数 格式 MOD 功能 求除以的余数 其正负号与相同 11 正弦函数格式 SIN 数值表达式 功能 mod 5 3 mod 5 3 mod 5 3 mod 5 3 信息技术学院崔晓斐制作 12 随机函数格式 RAND 数值表达式 功能 产生一个0 1 不等于1 之间的随机数 13 求 函数格式 PI 功能 返回圆周率 数值型 说明 默认的小数点位数Setdecimalsto其中 为小数位数 默认为2位 信息技术学院崔晓斐制作 2 4 2字符处理函数 1 字符串长度函数格式 LEN 功能 测量值的长度 长度即字符个数 的值为空串时 则函数值为0 函数值为N型 LEN 奥运会 2 空格函数格式 SPACE 功能 产生值所指定的空格数 中国 SPACE 5 辽宁 信息技术学院崔晓斐制作 3 删除空格函数格式 TRIM RTRIM ALLTRIM LTRIM 功能 删除字符串空格 第一个函数功能是删除字符串表达式值的尾部空格 第二个函数的功能是删除字符串表达式值前后空格 第三个函数的功能是删除字符表达式值前面的空格 函数值为C型 信息技术学院崔晓斐制作 4 取子串函数格式 SUBSTR 功能 在中从起截取若干个字符 若省略或的值大于从起始位置到结束的所有字符个数 则取从起始位置起到字符串结束的所有字符作为函数值 SUBSTR 中国辽宁丹东 5 4 信息技术学院崔晓斐制作 5 左取字符 右取字符函数格式 LEFT RIGHT 功能 左函数为取值左边的若干个字符作为函数值 右函数为取值右边的若干个字符作为函数值 LEFT 中国辽宁丹东 4 RIGHT 中国辽宁丹东 4 信息技术学院崔晓斐制作 6 宏代换函数格式 功能 是宏代换函数 用于代换指定的内容 若有可选项 则 代换后的值与后面的的值串连起来 与后面的之间必须插入一个圆点 这个点叫宏代换终界符 a x X 128 a ax128 信息技术学院崔晓斐制作 7 大小写转换函数LOWER 和UPPER 格式 LOWER UPPER 功能 LOWER 将字符表达式串中字母全部变成小写字母 UPPER 将字符表达式串中字母全部变成大写字母 其它字符不变 信息技术学院崔晓斐制作 2 4 3日期 时间处理函数 1 系统日期函数格式 DATE 功能 给出系统当前日期 函数值为D型数据 2 系统时间函数格式 TIME 功能 给出系统当前时间 函数值为C型数据 3 系统日期时间函数格式 DATETIME 功能 给出系统当前日期 时间 函数值为T型数据 信息技术学院崔晓斐制作 4 年函数格式 YEAR 功能 给出日期型表达式的年份 用四位数字表示 函数值为N型 5 月函数格式 MONTH 功能 给出日期型表达式的月份 函数值为N型 6 日函数格式 DAY 功能 给出日期型表达式的日数 函数值为N型 信息技术学院崔晓斐制作 2 4 4转换函数 1 数值转字符函数格式 STR 功能 将的值转换为字符串 由来决定转换后的字符串总长度包括小数位和小数点 由来决定转换后的小数部分字符个数 函数值为C型 若小于值的整数位数 则函数值为由 组成的字符串 若省略 则认为小数位为0 若省略的同时省略 则整数位数默认为10 信息技术学院崔晓斐制作 2 字符转数值函数格式 VAL 功能 将所决定的字符串值转换为数值 函数值为N型 转换从字符串最左边字符开始 如果第一个字符为非数字字符 则函数值为0 若为数字字符 则一直到非数字字符为止 3 字符转ASCII码函数格式 ASC 功能 返回的值最左边一个字符的ASCII码 函数值为N型 信息技术学院崔晓斐制作 4 ASCII码转字符格式 CHR 功能 将的值作为ASCII码转换为相应的字符 函数值为C型 5 字符型转换为日期型函数格式 CTOD 功能 将的值转换为相应的日期 函数值为D型 6 日期型转换为字符型函数格式 DTOC 1 功能 将的值转换为字符型数据 函数值为C型 信息技术学院崔晓斐制作 7 字符型转换为日期时间型函数格式 CTOT 功能 将的值转换为日期时间型 函数值为T型 8 日期时间型转换为字符型函数格式 TTOC 功能 将的值转换为字符型 函数值为C型 信息技术学院崔晓斐制作 2 4 5逻辑函数 1 测试表文件尾函数格式 EOF 功能 测试指定工作区中表文件的记录指针是否指向文件尾 若是 函数值为 T 否则 函数值为 F 的值作为被测工作区号 若省略 则表示测试当前工作区中的表文件指针 信息技术学院崔晓斐制作 2 测试表文件首函数格式 BOF 功能 测试指定工作区中表文件的记录指针是否指向文件首 若是 函数值为 T 否则 函数值为 F 的值作为被测工作区号 若省略 则表示测试当前工作区中的表文件指针 信息技术学院崔晓斐制作 3 测试查找记录是否成功函数格式 FOUND 功能 测试指定的表文件检索操作是否成功 如果成功 则函数值为 T 否则为 F 工作区号由的值指定 若省略 则表示当前工作区 常用的查找操作命令有 FIND SEEK LOCATE 信息技术学院崔晓斐制作 4 条件测试函数格式 IIF 功能 测试指定的条件是否成立 条件成立函数的返回值为 值1 条件不成立函数的返回值为 值2 iif 5 2 10 20 信息技术学院崔晓斐制作 2 4 6其他函数 1 测试表文件当前记录号函数格式 RECNO 功能 测试指定工作区表文件记录指针的位置 工作区号由的值指定 若省略 则表示当前工作区 若指定工作区无表文件打开 则函数值为0 recno 信息技术学院崔晓斐制作 2 测试表文件记录数函数格式 RECCOUNT 功能 测试指定工作区中表文件的记录数 工作区号由的值指定 若省略 则表示当前工作区 若指定工作区无表文件打开或表文件是只有结构而无记录的空表 则函数值为0 信息技术学院崔晓斐制作 3 测试字段数函数格式 FCOUNT 功能 测试指定的工作区中表文件的字段数 工作区号由的值指定 若省略 则表示当前工作区 若指定的工作区无表文件打开

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论