VFP的常用函数及常用命令

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

关联与多表查询


工作区:单个工作区只能打开一个文件,要打开多个文 件必须选择不同的工作区,VFP共提供了1---2551号工 作区。 工作区的选择:SELECT <工作区号> 1-10号工作区可用A-J来代替 SELECT 0表示选择最小的未用的工作区号 SELECT()函数可返回当前工作区号
VFP常用命令
一、文件复制 COPY FILE <文件名1> TO <文件名2> 用RUN或“!”可直接运行DOS命令 二、表的复制 COPY TO <文件名> [范围][条件][FIELDS 字段名 表] 三、表结构的复制 COPY STRUCTURE TO <文件名> [范围][条 件][字段名表] 注:以上两命令表应该先打开
查询与统计
排序与索引 查询 统计

排序
命令格式:SORT TO <新文件名> ON <字段名1> [/A|/C][/C][,<字段名2> [/A|/C][/C]…] [范 围][条件][FIELDS 字段名表] /A:升序 /D:降序 /C:不分字母大小写
索引
一、索引的概念 索引实际上是一种排序,但是它不改变数据表中数据 的物理顺序,而是另外建立一个记录号列表。它与通常 读的图书的索引目录相同,图书中的索引指明了章、节、 目的页码,而表的索引指明由某一字段的值的大小决定 的记录排列的顺序。索引文件中只含有关键字和记录号 两个字段,相对排序文件要小得多,当数据库更新时, 索引文件可以自动更新。 二、索引的种类 主索引、候选索引、普通索引、唯一索引 复合索引(结构复ON <索引关键字> TO <单索引文件名>|TAG <索引标识名> [OF <复合索引文件名>][条 件][COMPACT][ASCENDING][]DESCENDING][UN IQUE][CANDIDATE][ADDITIVE] TO子句:建立单索引文件,为与老版本兼容而设 TAG子句:建立复合索引文件,OF用于非结构复合索引 COMPACT:压缩文件,老版本不能用 ASCENDING/DESCENDING:升序/降序,默认升序 UNIQUE/CANDIDATE:唯一/候选索引 ADDITIVE:不关闭以前打开的索引
四、索引文件的使用 1、打开与关闭 SET INDEX TO [索引文件名表][ADDITIVE] 结构复合索引在打开数据库时自动打开 也可以在打开表时同时打开索引文件 USE <表名> INDEX <单索引文件名表> 2、主空索引的确定 SET ORDER TO [数据表达式|单索引文件名|TAG 索 引标识 SET ORDER TO [0]表示取消主控索引。




LEN(字符表达式):字符串长度; AT (字符表达式1,字符表达式2,[ 数值表达式]): 字符1在字符2中第N次出现的位置; ALLTRIM (字符表达式):删除前后空格; SPACE (数值表达式):返回N个空格; UPPER (字符表达式):小写字母转换成大写字母; LOWER (字符表达式):大写字母转换成小写字母; VAL (字符表达式):字符串转换成数值; STR (数值表达式):数值转换成字符串; CHR (数值表达式):从ASC码返回字符串; ASC (字符表达式):返回字符的ASC码;
八、记录的替换 REPLACE <字段名1> WITH <表达示1> [, <字段名2> WITH <表达示2>] [范围][条件] 九、记录浏览 LIST|DISPLAY [FIELDS <字段名表>] [范围] [FOR <条件 >] [WHILE <条件>] [OFF] [TO PRINT] 注:LIST的默认范围为ALL,而DISPLAY为当前记录 DISPLAY ALL与LIST功能基本相同,区别在于DISPLAY ALL会自动分屏显示。 十、打开数据库 USE <数据库名>:单独的USE表示关闭数据库。

顺序查询
命令格式: LOCATE <条件> [范围] 查找符合条件的第一条记录。 可用FOUND()函数返回是否找到 继续找用CONTINUE。
索引查询
命令格式: SEEK <表达式> • 查找前要先建立索引; • 查找符合条件的第一条记录; • 可用FOUND()函数返回是否找到; • 继续找用CONTINUE; • 模糊查询与精确查询,模糊查询只要查询的字符表达式 与索引关键字左子串相同即认为是找到了,精确查询要 完全相同,可用SET EXACT ON|OFF切换。
VFP的常用函数及常用命令

常用函数

常用命令
常用函数






ABS(数值表达式):绝对值; SQRT (数值表达式) :平方根; EXP (数值表达式) :e的n次方; INT (数值表达式):取整; MAX( 数值表达式1, 数值表达式2 ):最大值; MOD(数值表达式1, 数值表达式2 ):取模,即余数; ROUND (数值表达式1, 数值表达式2 ):四舍五入; RAND (数值表达式):随机数; SUBSTR (字符表达式, 数值表达式1,[ 数值表达式2] ) :从 中间取子串 LEFT (字符表达式, 数值表达式):从左取子串; RIGHT字符表达式, 数值表达式):从右取子串;
3、FOR子句 满足条件的记录 4、WHILE子句 不满足条件时停止 5、FIELDS子句 指定字段 6、OFF子字句 不显示记录号 7、TO PRINT 子句 输出到打印机
三、命令的书则 1、不分大小写; 2、各子句顺序可颠倒; 3、各关键字(包括命令动词和函数等)可 只写前四字母; 4、一行写不下,可用“;”隔开,换行后 再写(在程序中)
3、删除索引 删除索引文件:与删除普通文件相似(先关闭后删除) DELETE FILE 文件名 删除索引标识 DELETE TAG ALL|<索引标识1>[, <索引标识 2>]… 4、索引的更新 已打开的索引文件会自动更新 但如未确定主控索引,则要用REINDEX重新更新。
查询
顺序查询 索引查询 关联与多表查询
关联的建立


关联:两个工作区的记录指针联动,关联共涉及两个表, 一个称为父表、另一为子表。 建立关联的条件:子表必须按关键字建立索引。 种类:一多关系与多一关系,不处理多多关系。 命令格式:SET RELATION TO [<表达式1> INTO < 别名1>,…, <表达式N> INTO <别名N>] 单独的SET RELATION TO 表示解除关联。 SET SKIP TO <表别名1,…, <表别名N> 表示建立 一多关系关联。SET SKIP TO 表示取消一多关系关联。
VFP命令格式及规则
一、命令格式(以List为例): LIST [FIELDS <表达式表>] [范围] [FOR < 条件>] [WHILE <条件>] [OFF] [TO PRINT] 二、各子句功能 1、命令动词 2、范围 ALL:所有记录 NEXT(N):当前记录以下N个 RECORD(N):第N个记录 REST:当前记录到最后记录
四、记录指针的移动 1、GO <记录号>|<TOP>|<BOTTOM> 移动到指定记录、首记录、尾记录 2、SKIP [数值表达式] 缺省为1,正数往下,负数往上 五、记录的插入 INSERT [BLANK][BEFORE] BLANK:插入空记录;BEFORE:在前面, 默认为在当前记录的后面
六、追加记录:(在尾部加) 1、APPEND [BLANK] 2、APPEND FROM <文件名> [范围][条件][FIELDS 字段名表] 成批追加记录 七、记录的删除与恢复 1、DELETE [范围][条件]:逻辑删除 2、PACK:物理删除 3、RECALL [范围][条件]:记录恢复 4、ZAP:清空数据库
几个常用的统计命令


计数命令:COUNT [范围][条件][TO 内存变量] 求和命令:SUM [数值表达式] [范围][条件][TO 内存 变量表|数组] 求平均值:AVERAGE [数值表达式] [范围][条件][TO 内存变量表|数组]






CTOD (字符表达式):将字符表达式转换成日期; DTOC (日期表达式):将日期表达式转换成字符; TIME():返回当前时间; DATE():返回当前日期; EOF():记录指针是否指向首记录; BOF():记录指针是否指向记录尾; FOUND():是否找到 RECNO():当前记录号
相关文档
最新文档