1 / 66

第 3 章 VFP 简介

第 3 章 VFP 简介. 一、 VFP 的界面组成 二、 VFP 的操作方式 1、命令操作方式 2、菜单操作方式 3、工具操作方式 4、程序操作方式. 交互. 命令操作方式 — 指在交互窗口键入命令即可操纵数据库。 如:删除一条记录,键入 DELETE 优点:能直接使用系统的各种命令和函数 菜单操作方式 — 系统将若干命令做成菜单,用户可通过菜单选择 来操纵数据库。 工具操作方式

sitara
Download Presentation

第 3 章 VFP 简介

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第3章 VFP 简介

  2. 一、VFP 的界面组成 二、VFP的操作方式 1、命令操作方式 2、菜单操作方式 3、工具操作方式 4、程序操作方式 交互

  3. 命令操作方式 —指在交互窗口键入命令即可操纵数据库。 如:删除一条记录,键入DELETE 优点:能直接使用系统的各种命令和函数 菜单操作方式 —系统将若干命令做成菜单,用户可通过菜单选择 来操纵数据库。 工具操作方式 —VFP中提供了许多工具,如:表设计器、数据库 设计器 程序操作方式 —将命令序列编写成程序,通过运行程序来操作 数据库。

  4. VFP的命令格式、特点: (p19) 命令格式: 命令动词 [<子句>] 其中: 命令动词—特定的英语单词或符号,表明要完成的动作。 大小写均可,多于4个字母时,可只键入前4个。 (如:DISPLAY——DISP或disp) <子句>—用英语单词标识,用来对所要执行的命令进行 某些限制性说明,如操作对象、范围、条件等。

  5. [……] 方括号中的内容为可选项。 <……> 尖括号中的内容由用户提供。 | 其中可选择一项

  6. 典型格式: 命令动词 [<范围>] [FIELDS<字段名表>] [FOR WHILE<条件>] 其中: ①<范围>子句:指出命令对库表文件记录的作用范围 ALL—对所有记录进行操作 NEXT <n> —对从当前记录开始的n个记录进行操作 RECORD<n>—仅对第n条记录进行操作 REST—对从当前记录开始到最后一条记录进行操作

  7. ② FIELDS<字段名表>: 表示只处理表文件中指定的几个字段。 如:USE STUDENT LIST FIELDS 学号,姓名,档案

  8. ③FOR<条件>: 限定该命令仅对满足条件的记录进行操作, 与范围子句一起使用表示仅在一定范围内 对满足条件的记录进行操作。 如: USE STUDENT LIST FOR age>20

  9. ④WHILE<条件>: 从当前记录开始, 在指定范围内,对记录逐条进行比较,<条件>成立,继续执行命令,一旦<条件>不成立,立即停止执行。(记录指针指在第一个<条件>为.F.的记录上,不论其后有无符合条件的记录) 如:USE STUDENT LIST WHILE age>20

  10. 第4章 VFP 基础知识

  11. 一、VFP的数据类型 字符型(Character):存储文本信息 数值型(Numeric):存储整数或小数,精度:16位 浮点型(Float):等价于数值型(出于兼容性考虑) 日期型(Date):如09/22/2007 日期时间型(Date Time):09/22/200717:12PM 双精度型(Double):其精度>>数值型、浮点型,主 要用于存储科学计算中的天文数字

  12. 货币型(Currency):存储货币类数值,该类型至 货币型(Currency):存储货币类数值,该类型至 多只能保留小数点后4位 整型(Integer):不包括小数、效率更高。其范围 为:-2147483647~+2147483647。 逻辑型(Logic):为布尔值——真(.T. ,.Y.) 或 假 (.F. ,.N.) 备注型(Memo):用于保存大量文字信息,长度 不限,但在字段定义时默认为4位。 通用型(General):保存OLE对象,如:图象、声音 等,字段定义时默认为4位。

  13. 二、常量与变量 1、常量 ① 数值型 ② 货币型 ③ 字符型 ④ 日期型 ⑤ 日期时间型 ⑥ 逻辑型

  14. 以下是各类型常量需注意的问题: ① 数值型 数值型可以用科学记数法表示, 如:5.678E12 ② 货币型 采用4位小数

  15. ③ 字符型 字符常量也称为字符串; 可用“ ” 、‘ ’或 [ ] 引用,三者等价 (“ ” 、‘ ’、[ ]称为定界符)

  16. 传统的日期格式 ④ 日期型 严格的日期格式 a.传统的日期格式(受日期格式设置命令的影响) mm/dd/yy 或 mm/dd/yyyy 如:03/15/90 b.严格的日期格式(可在任何情况下使用) {^yyyy-mm-dd} 如: {^1990-03-15}

  17. 日期格式设置命令: (1)是否显示世纪值(即年份用4位显示) SET CENTURY ON|OFF (2)指定显示日期值时使用的分隔符 SET MARK TO [<日期分隔符>] 如: SET MARK TO “—” (3)设置日期显示格式 SET DATE [TO] AMERICAN | ANSI | BRITISH | FRENCH |ITALIAN |GERMEN |JAPAN |USA |MDY | DMY |YMD

  18. 常用日期格式

  19. (4)是否检查日期格式 SET STRICTDATE TO [ 0 |1 | 2 ] 0 —不进行严格的日期格式检查 1 —进行严格的日期格式检查(默认) 2 —进行严格的日期格式检查,并且对 CTOD()和CTOT()的格式也有效。

  20. ⑤ 日期时间型 格式: {<日期>,<时间>} ⑥ 逻辑型 逻辑真: . T. . t . 或 . Y. . y . 逻辑假: . F. . f . 或 . N. . n .

  21. 字段变量 内存变量 2、变量 字段变量——存在于库表文件中,为多值变量。 内存变量——存在于内存中,是在程序或命令 状态时用于存放数据的临时工作单元。 它独立于表文件,为单值变量。

  22. (1)字段变量 同一字段取值不同,不唯一,故为多值变量

  23. (2)内存变量 ① 简单内存变量 建立内存变量的方法: a.变量名=值 (例:A=100) b.STORE 值 TO 变量名 (例:STORE 100 TO A) 注:STORE和=均可用于赋值,但是用STORE可以给多个内存变量赋值,如STORE 100 TO A,B,C

  24. 那么内存变量到底是什么数据类型,是否需要 事先定义呢? N=100 (N为数值型) N=“ABC” (N为字符型)

  25. 注: a.内存变量无须预先定义,区分类型,其类型 由赋予变量的值的类型决定。 b.字段变量与内存变量同名,字段变量优先。 要引用内存变量,则在其前加M-> 。 如:在STU.DBF中有一记录“姓名”字段值为“王青” 又在命令窗口建立了一个“姓名”内存变量: 姓名=李涛 ?姓名 ?M->姓名 c.内存、字段变量由字符、数字或下划线组成, 以字符或下划线开头,字段长度: 自由表中<=10,数据库表中<=128

  26. ② 数组 一系列数据值的有序集合。 数组定义及赋值: a.定义:DIMENSION/DECLARE <数组名1> [,<数组名2>,……] DIMENSION A(5),B(2,3)

  27. b、赋值 A(3)=25 A=30 B(2,1)=5 B(5)= .T.

  28. 3、其它与变量、表达式有关的常用命令 (1)表达式的显示:?| ?? (2)内存变量的显示 LIST MEMORY [LIKE<通配符>] DISPLAY MEMORY [LIKE<通配符>] (3)内存变量的清除 clear memory ——所有 release <内存变量> ——所有或部分

  29. 三、表达式 —— 由常、变量和函数通过特定的运算符 连接起来的式子 表达式的五种类型: 数值表达式 字符表达式 日期时间表达式 关系表达式 逻辑表达式

  30. 1、数值表达式<expN> 算术运算符 优先级 高 ( ) ** 、^ * 、/ % 低+ 、- ——幂运算(如3**3=3^3=27) ——取模(如26%8=2,类似于求余)

  31. 2、字符表达式 <expC> 字符运算符: +—— 字串简单连接 -——两串相并,去掉前一字串尾端的空格, 加至最后 $——字串比较,<expc1>$<expc2>,若<expc1> 包含于<expc2>,则表达式值为.T.(真), 否则为 .F.(假) 。

  32. 例1: 比较 ‘ABC└┘’+ ‘DEF└┘’和 ‘ABC└┘’–‘DEF└┘’ 例2: mem1=”Visual” mem2=”Foxpro” mem3=mem1+mem2 ?mem1$mem3 .T.

  33. 课堂思考: 请写出’ABC└┘’+’DEF└┘’+’G’及’ABC└┘’-’DEF└┘’+’G’ 的值

  34. 3、日期时间表达式 +、 - 例:{^2002-09-21}+100 {^2002-09-21}- {^2002-05-13} (两日期相差天数)

  35. 4、关系表达式 格式:<表达式1> <关系运算符> <表达式2> 操作数类型须一致,结果为逻辑值。 关系运算符: < 、<= 、> 、>= 、<> 、= 、== 、$ 注意:精确比较(==)与模糊比较(=)

  36. 5、逻辑表达式 优先级 高 !,NOT AND 低OR 例如:a=.t. ?not a

  37. 不同类型运算符的优先级: 优先级 高数值、字符、日期时间表达式 关系表达式 低 逻辑表达式

  38. 四、常用函数 标准函数:近300个 用户自定义函数 函数

  39. 函数的格式: 函数名 ( 参数 ) 表明做了什么运算 运算对象

  40. 五类常用函数: 数值函数 字符处理函数 日期类函数 数据类型转换函数 测试函数

  41. 1、数值函数 几个常用数值函数: (1)求绝对值 ABS 如: ?ABS(-5) y=ABS(5-3) (2)求符号 SIGN 如: ? SIGN (-8) 5 y=2 -1

  42. 3 (3)求平方根 SQRT 如: ? SQRT (9) (4)求圆周率 PI 如: ? PI () (5)求整数 INT 如: ? INT (3.14) ? INT (-3.14) 3.14 3 -3

  43. (6)四舍五入 ROUND 如: ? ROUND (2.345, 2) ? ROUND (234.345, -1) (7)求余 MOD 如: ? MOD (10, 3) ? MOD (10, -3) 2.35 230 1 -2

  44. (7)求最大、最小值 如: ? MAX (2, 12) ? MIN (10, -3) 12 -3

  45. 2、字符处理函数 几个常用字符处理函数: (1)求字串长度 LEN 如: X=‘abc’ ?LEN (X) (2)生成空格字符串 SPACE 如: Y= SPACE (4) 3 Y=“ ” (Y为4个字符 的空格串)

  46. (3)大小写转换 UPPER 小写 大写 LOWER ? UPPER(‘ IBM pc/xt ’) ? LOWER(INTERNET) IBM PC/XT internet

  47. Y=‘ test’ (4)删除空格  ① TRIM——去右端空格 如: Y= TRIM (‘ test ’) 去左端空格和去两端空格函数? (5)取子串 ① LEFT——求左方子串 如: NS= LEFT(‘DATABASE’,4) ?NS 求右方子串和任意子串函数? LTRIM、ALLTRIM DATA RIGHT、SUBSTR

  48. (6)求子串出现次数 OCCURS 如: S= ’abcaabcd‘ ? OCCURS(’a‘,S ) (7)求子串位置 AT 如: ?AT(“TER”,“COMPUTER” ) 3 6

  49. 3、日期类函数 几个常用字符处理函数: (1)求系统日期和时间 ① DATE()——求当前日期 ② TIME()——求当前时间 ③ DATETIME ()——求当前日期时间 如: ?DATE() 注:()中不需带参数

  50. (2)求年、月、日 ① YEAR()——求日期的年份 ② MONTH()——求日期的月份 ③ DAY ()——求日期的日子 如: ?YEAR ( DATE()) 2009

More Related