for( ) 函数

请参阅

返回一个已打开的单项索引文件或索引标识的索引筛选表达式。

语法

FOR([nIndexNumber [, nWorkArea | cTableAlias]])

参数
如果不包含任何可选参数,for( ) 函数将返回主控索引文件或主控索引标识的索引筛选表达式。如果主控索引文件或主控索引标识不发生作用(例如,已经发出 SET ORDER TO 命令,使表中记录按物理记录次序排列),for( ) 函数将返回空字符串。

nIndexNumber

指定返回筛选表达式的索引文件或索引标识。nIndexNumber 从 1 开始递增,直至等于已打开的单项索引文件、结构复合索引标识及独立复合索引标识的总数,在此过程中,for( ) 函数将按下列顺序返回筛选表达式:

  1. 返回单项索引文件(如果已打开)的筛选表达式,在 USE 或 SET INDEX 中包含的单项索引文件顺序决定了筛选表达式返回的顺序。
  2. 返回结构复合索引(如果存在)中每一标识的筛选表达式,标识的筛选表达式按照在结构索引中创建标识的顺序返回。
  3. 返回所有打开的独立复合索引中各个标识的筛选表达式,标识的筛选表达式将按照在独立的复合索引中创建标识的顺序返回。

如果创建索引或索引标识时没有使用 FOR 子句,或 nIndexNumber 大于打开的单项索引文件、结构复合索引标识和独立复合索引标识的总数,函数将返回空字符串。

nWorkArea

指定表所在的工作区,for( ) 函数返回该表的索引筛选表达式。
如果在指定工作区中没有打开的表,for( ) 函数返回空字符串。

cTableAlias

指定表的别名,for( ) 函数返回其索引筛选表达式。
如果指定的表别名不存在,Visual FoxPro 将产生错误信息。

返回值类型
字符型

说明
在 Visual FoxPro 中可以创建筛选索引。如果在 INDEX 命令中包含可选的 FOR lExpression 子句,索引文件将成为表的筛选器。只能显示和访问与筛选表达式 lExpression 匹配的记录,而且在索引文件中只对与筛选表达式匹配的记录创建索引关键字。
USE 和 SET INDEX 命令都支持多个索引文件的列表,为一个表打开多个索引文件。索引文件名的列表中可以包含单项索引文件名、结构复合索引文件名或独立复合索引文件名的任意组合。for( ) 函数与 SYS(2021) 函数等价,并且具有同 dBASE IV 的兼容性。