VisualFoxPro数据与数据运算.ppt

上传人:sh****n 文档编号:6561606 上传时间:2020-02-29 格式:PPT 页数:60 大小:380.31KB
返回 下载 相关 举报
VisualFoxPro数据与数据运算.ppt_第1页
第1页 / 共60页
VisualFoxPro数据与数据运算.ppt_第2页
第2页 / 共60页
VisualFoxPro数据与数据运算.ppt_第3页
第3页 / 共60页
点击查看更多>>
资源描述
1 第2章 VisualFoxPro数据与数据运算 2 本章概要 VisualFoxpro的语言有哪些要素VFP支持的数据类型VFP常量定义VFP变量定义VFP表达式定义 表达式运算符及其优先级VFP函数类型与功能 3 2 1VisualFoxPro数据 2 1 1VisualFoxPro数据类型为了满足存储和处理数据的需要 VisualFoxPro提供了13种类型 它们是字符型 数值型 整型 浮点型 双精度型 货币型 逻辑性 日期型 日期时间型 备注型 通用型 字符型 二进制 和备注型 二进制 4 2 1 2常量 常量 Constant 是指在程序运行期间 其值不变的量 常量的写法和其类型有关 VisualFoxpro6 0常见的数据类型的常量有 数值型 货币型 字符型 日期型 日期时间型 逻辑型 5 1 数值型常量数值型常量也就是常数 用来表示数量的大小 数值型常量由数字0 9 小数点和正负号构成 在内存中占8个字节 取值范围是 0 9999999999E 19 0 9999999999E 20 例如 65 8 45 43等 6 2 字符型常量字符型常量也称字符串 其表示方法是用半角单引号 双引号 或方括号 把字符括起来 这里的单引号 双引号 或方括号 称为 定界符 其作用是确定字符串的起始和终止界限 它本身不作为字符串的一部分 定界符虽然不作为常量本身的内容 但它规定了常量的类型以及常量的起始和终止界限 例如 金苹果 7 3 逻辑型常量逻辑型数据只有逻辑真和逻辑假两个值 逻辑真的常量形式有 T t Y 和 y 逻辑假的常量表示形式有 F f N 和 n 前后两个黑点作为逻辑型常量的定界符是必不可少的 否则会被误认为变量名 逻辑型数据只占用1个字符 8 4 日期型常量日期型常量是用一对花括号 括起来包括日期的数据 花括号内包括年 月 日3部分内容 各部分内容之间用分隔符分隔 常用的日期分隔符有斜杠 连字号 句点 和空格 日期型常量格式传统的日期格式严格的日期格式 9 常用日期格式 10 5 日期时间型常量日期时间型常量包括日期和时间两部分 部分与日期型常量相似 也有传统和严格的格式 部分的格式为 hh mm ss a p 其中hh mm和ss分别代表时 分和秒 系统默认的格式为AM 日期时间型数据用8个字节存储 第一个4字节保存日期 其余的4字节保存时间 11 6 货币型常量货币型常量用来表示货币值 其书写格式与数值型常量类似 但在表示货币型常量时 需要在数字前加上货币符号 货币数据在存储和计算时 采用4位小数 占据8字节存储空间 货币型数据用字母Y表示 如果一个货币型常量多于4位小数 则系统会自动将多余的小数四舍五入 例如 常量 9 8756789存储为 9 8757 12 2 1 3变量 变量 Variable 是指在程序运行期间其数值会变化的量 变量的两个特性 变量的名 在程序运行期间是不变的 变量的值 在程序运行期间是可变的 通过变量名引用变量值 13 VisualFoxPro创建变量名时 必须遵循以下命名规则 只使用字母 汉字 下划线和数字 以字母 汉字 下划线开头 使用1到128个字符 字段名 自由表名和索引标识最多只能10字符长 避免使用VisualFoxPro保留字 VFP定义的 有特定含义 必须是见名知意 即看见变量名知道变量名的含义 例如要对年龄取变量名 使用age就比使用x好 14 1 内存变量根据变量的存在方式 分为内存变量和字段变量 字段变量 字段变量是数据库管理系统中的一个重要概念 字段变量就是指数据库表中已经定义的任意一个字段 伴随数据表打开而存在的变量 字段变量随数据表的关闭而消失 内存变量 不是字段变量就一定是内存变量 是一系列机算机内存单元 用于保存对数据库存进行某种分析处理或程序执行过程中的中间结果和最终结果 内存变量的类型在VisualFoxPro中可以为数值型 字符型 逻辑型和日期型 15 内存变量常用命令 1 内存变量的赋值内存变量赋值语句格式一如下 表达式例 age 20 age20 输出结果 内存变量赋值语句格式二如下 STORETO 例 store22toage1 age2 age1 age22222 输出结果 16 2 表达式值的显示格式 每次另起一新行输出结果 而 是在当前行输出结果 例 他说 太好了 输出的结果是 他说 太好了 例 好 太好了 输出结果是 好太好了 17 3 内存变量显示格式1 LISTMEMORY LIKE TOPRINTER TOFILE 格式2 DISPLAYMEMORY LIKE TOPRINTER TOFILE 18 4 清除内存变量格式1 CLEARMEMORY格式2 RELEASE格式3 RELEASEALL EXTENDED 格式4 RELEASEALL LIKE EXCEPT 19 5 内存变量的保存与恢复格式1 SAVETO内存变量文件名 ALLLIKE EXCEPT 格式2 RESTOREFROM内存变量文件名 ADDITIVE 20 2 系统变量系统变量是特有的变量 是系统内部提供的 为方便程序设计人员和用户 系统变量由VisualFoxPro自动定义和维护 往往以 下划线 开头 因此在给普通的内存变量命名时最好不要以 字符开头 以避免混淆 一般情况下 不要修改系统变量 21 3 字段变量由于表中的各条记录对同一个字段名可能取值不同 该字段变量的取值会随着当前记录的变化而变化 因此称为字段变量 它是数据库中一个非常重要的概念 但值得注意的是 若内存变量名与当前所打开的数据表的字段变量同名 引用时 系统优先字段变量 若要特指内存变量 应在内存变量名前加上前缀 M 或 M 22 2 1 4数组变量创建数组的格式 DIMENSION DECLARE 23 例如 数组的定义及赋值DIMENSIONa 2 b 2 2 定义两个数组a 100 a数组所有元素赋值为100b 1 1 a 1 引用数a的元素给b数组元素赋值STORE T TOb 1 1 给b数组一个元素重复赋逻辑值b 1 2 南京大学 给b数组一个元素赋字符值 南京大学 b 2 1 2006 11 16 给b数组一个元素赋日期值 24 创建数组的注意项 在一切可以使用简单内存变量的地方 均可以使用数组元素 在赋值和输入语句中使用数组名时 表示将同一个值同时赋给该数组的全部数组元素 在同一个运行环境下 数组名不能与简单变量名重复 在赋值语句中的表达式位置不能出现数组名 可以出现具体的数组元素名 可以用一维数组的形式访问二维数组 25 2 2表达式及其运算 26 1 数值表达式定义 数值表达式又叫做算术表达式 是最容易理解的一种表达式 数值型数据可以是数值型常量或者变量 算术运算优先级 2 2 1表达式 27 2 字符表达式定义 由字符串连接运算符将字符型常量 变量或者函数连接起来形成 其运算结果仍然是一个字符型数据 运算符 前后两个字符串首尾连接形成一个新的字符串 连接前后两个字符串 并将前字符串的尾部空格移到合并后的新字符串尾部 它们的优先级相同 28 3 日期时间表达式运算符 日期时间表达式中可以使用的运算符也有 和 日期时间表达式的格式 29 4 关系表达式 1 定义 通常称为简单逻辑表达式 它由关系运算符将两个运算对象连接起来形成 关系运算符 30 2 设置字符的排序次序人机对话方式方法 选择 工具 菜单栏下的 选项 打开 选项 对话框 单击 数据 选项卡 从右上方的 排序序列 下拉框中选择 Machine 机器 PinYin 拼音 或者 Stroke 笔画 命令方式设置 SETCOLLATETO 31 3 字符串精确比较与EXACT设置 SETEXACT对字符串比较的影响 32 5 逻辑表达式定义 由逻辑运算符将逻辑型数据连接而形成的 其运算符结果仍然是逻辑型数据 运算符 NOT 或 逻辑非 AND 逻辑与 和 OR 逻辑或 其优先级顺序依次为 NOT AND OR 33 逻辑运算规则 34 运算符小结 35 2 3函数 函数的一般形式为 函数名 参数1 参数2 36 2 3 1数值函数 1 绝对值和符号函数格式 ABS SIGN 功能 ABS 函数返回指定的数值表达式的绝对值 SIGN 函数返回指定数值表达式的符号 当表达式的结果为正 负和0时 函数值分别为1 1和0 37 2 求平方根函数格式 SQRT 功能 SQRT 函数返回数值表达式的平方根 3 圆周率函数格式 PI 功能 PI 函数返回数值常量 的近似值 38 4 取整数函数格式 INT CELING FLOOR 功能 INT 函数返回数值表达式的整数部分 CELING 函数返回大于或等于数值表达式的最小整数 FLOOR 函数返回小于或等于数值表达式的最大整数 39 5 四舍五入函数格式 ROUND 功能 ROUND 函数返回数据表达式在指定位置四舍五入后的结果 6 求余函数格式 MOD 功能 MOD 函数返回除以两个数相除后的余数 余数的正负号与除数相同 如果被除数与除数同号 那么函数值就为两数相除的余数 如果被除数与除数异号 则函数值为两数相除的余数再加上除数的值 40 7 求最大值和最小值函数格式 MAX MIN 功能 MAX 函数返回数值表达式中的最大值表达式 MIN 函数返回数值表达式中的最小值表达式 41 2 3 2字符函数 1 LEN 函数格式 LEN 功能 LEN 函数返回字符表达式值的长度 函数值为数值型 2 大小写转换函数格式 LOWER UPPER 功能 LOWER 函数将表达式中的大写字母转换成小写字母 其他字符不变 UPPER 函数将表达式中的小写字母转换成大写字母 其他字符不变 42 3 空格字符生成函数格式 SPACE 功能 SPACE 函数生成指定空格数的空字符串 4 删除前后空格函数格式 TRIM LTRIM ALLTRIM 功能 TRIM 返回指定字符表达式值去掉尾部空格后形成的字符串 LTRIM 函数删除串首空格字符 ALLTRIM 函数删除首尾空格字符 43 5 取子串函数格式 LEFT RIGHT SUBSTR 功能 LEFT 函数从字符表达式值的左端取一个指定长度的子串作为函数值 RIGHT 函数从字符表达式值的右端取一个指定长度的子串作为函数值 SUBSTR 函数从表达式值的起始位置取一个指定长度的子串作为函数值 44 6 计算子串出现次数函数格式 OCCURS 功能 OCCURS 函数返回第一个字符串在第二个字符串中出现的次数 7 求子串位置函数格式 AT ATC 功能 AT 函数返回值的首字符在值中的位置 ATC 与AT 功能相似 但在子串比较时不区分字母大小写 45 8 子串替换函数格式 STUFF 功能 STUFF 函数用串替换串中由和指明的一个子串 9 字符替换函数格式 CHRTRAN 功能 CHRTRAN 是当第一个字符串中的第一个或多个相同字符与第二个字符中的某个字符相匹配时 就用第三个字符串中的对应字符替换这些字符 46 10 字符串匹配函数格式 LIKE 功能 比较两个字符串对应位置上的字符 若所有对应字符都相匹配 函数返回逻辑真 否则返回逻辑假 47 11 宏替换函数格式 功能 替换出的内容 即去掉的定界符作为函数的返回值 说明 函数返回值可以是各种类型 即为去掉定界符的类型 若宏替换函数与其后的字符没有空格分界 则要用 作为函数结束标记 48 2 3 3日期和时间函数 1 获取系统日期和时间函数格式 DATE TIME DATETIME 功能 DATE 函数返回当前系统日期 函数值为日期型 TIME 函数以24小时制 hh mm ss格式返回当前系统时间 函数值为字符型 DATETIME 函数返回当前系统日期时间 函数值为日期时间型 49 2 获取年份 月份和天数函数格式 YEAR MONTH DAY 功能 YEAR 从指定的日期表达式或日期时间表达式中返回年份 MONTH 从指定的日期表达式或日期时间表达式中返回月份 DAY 从指定的日期或日期时间表达式中返回月份中的天数 50 3 获取时 分和秒函数格式 HOUR MINUTE SEC 功能 HOUR 函数从日期时间表达式中返回小时部分 24小时制 MINUTE 函数从日期时间表达式中返回分钟部分 SEC 函数从日期时间表达式中返回秒数部分 51 2 3 4数据类型转换函数 1 数值转换成字符串格式 STR 功能 STR 函数将按设定的和转换成字符型数据 函数返回值为字符型 2 字符串转换成数值格式 VAL 功能 VAL 将数值字符串转换为数值 52 3 字符串转换成日期或日期时间格式 CTOD CTOT 功能 CTOD 函数将 mm dd yy 格式的串转换成对应的日期值 返回的函数值为日期型 CTOT 将转换成日期时间型数据 4 日期或日期时间转换成字符串格式 DTOC 1 TTOC 日期时间表达式 1 功能 DTOC 函数将转换成字符串 函数返回值类型为字符型 TTOC 将日期时间型数据转换成字符串 53 5 字符转换为对应的ASCII码函数格式 ASC 功能 返回指定字符值中第一个字符ASCII码值 ASC ADCEF 结果为656 ASCII码转换为对应的字符函数格式 CHR 功能 返回所对应的ASCII码值的字符 CHR 99 结果为c 54 2 3 5测试函数 1 值域测试函数格式 BETWEEN 功能 BETWEEN 函数判断一个表达式的值是否在另外两个表达式的值之间 当值大于等于且小于等于时 函数值为逻辑真 T 否则函数值为逻辑假 F 如果或有一个是NULL值 则函数值也是NULL值 55 2 空值 NULL值 测试函数格式 ISNULL 功能 ISNULL 函数判断一个表达式的运算结果是否为 NULL 值 如果是 NULL 值 则返回逻辑真 T 否则逻辑值假 F 3 空 值测试函数格式 EMPTY 功能 EMPTY 函数根据表达式的运算结果是否为 空 值 返回逻辑真 T 或逻辑假 F 56 不同类型数据的 空 值规定 57 4 数据类型测试函数格式 VARTYPE 功能 VARTYPE 函数测试的类型 返回一个大写字母 函数值为字符型 例如 VARTYPE 2009 07 3002 08 25PM 结果为T VARTYPE NULL T 结果为X 58 VARTYPE 函数测试的数据类型对应表 59 5 条件测试函数格式 IIF 功能 IIF 函数测试的值 如果为逻辑真 T 函数返回的值 如果为逻辑假 F 函数返回的值 例如 X 等级考试 Y 计算机等级考试 IIF X Y 2008年9月 2009年4月 结果为2008年9月 60 再见
展开阅读全文
相关资源
相关搜索

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


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

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


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