key( ) 函数

示例 请参阅

返回索引标识或索引文件的索引关键字表达式。

语法

KEY([CDXFileName,] nIndexNumber [, nWorkArea | cTableAlias])

参数

CDXFileName

指定复合索引文件的文件名。key( ) 函数将返回 .CDX 文件中索引标识的索引关键字表达式。所指定的复合索引文件可以是和表一起自动打开的结构复合索引文件,也可以是独立的复合索引文件。

nIndexNumber

指定要返回哪一个索引关键字表达式。
USE 和 SET INDEX 命令都支持一个索引文件列表,从中可以为一个表同时打开多个索引文件。索引文件列表中可以包含 .IDX 单项索引文件、结构复合索引文件或独立的复合索引文件等三种索引文件的任意组合。
数值表达式 nIdexNumber 指定从打开的索引文件中返回哪一个索引表达式。随着 nIndexNumber 从 1 递增到所打开的 .IDX 单项索引文件、结构复合索引文件和独立复合索引文件三者的总数,key( ) 函数将按下列顺序依次从打开的各索引文件中返回索引表达式:

  1. 首先返回 .IDX 单项索引文件(如果有此类文件打开)中的索引表达式。各个单项索引文件在 USE 或 SET INDEX 命令中的排列顺序决定索引表达式的返回顺序。
  2. 其次返回结构复合索引(如果有)中的每个标识的索引表达式。多个标识的索引表达式的返回顺序取决于各标识在结构复合索引中的创建顺序。
  3. 最后返回打开的独立复合索引中的每个标识的索引表达式。多个标识的索引表达式的返回顺序取决于标识在独立复合索引中创建的顺序。

若 nIndexNumber 大于打开的索引文件总数(包括 .IDX 单项索引文件、结构复合索引文件和独立的复合索引文件),则返回空字符串。

nWorkArea

指定表所在的工作区号,key( ) 函数将返回该表的索引关键字表达式。
如果指定的工作区中没有表打开,则 key( ) 函数返回空字符串。

cTableAlias

指定表别名,key( ) 函数将返回该表的索引关键字表达式。
若指定的表别名不存在,Visual FoxPro 将产生错误信息。
若省略 nWorkArea 和 cTableAlias 参数,将返回当前工作区中打开表的索引关键字表达式。

返回值类型
字符型

说明
用 INDEX 命令创建索引标识或索引文件时可指定其索引关键字表达式。当该索引标识或索引文件作为主控索引标识或主控索引文件打开时,其索引关键字表达式将决定表的显示或访问方式。
有关创建索引标识、索引文件以及索引关键字表达式的详细内容,请参阅INDEX