指定可以访问表中的哪些字段。
语法
SET FIELDS ON | OFF | LOCAL | GLOBAL
— 或者 —
SET FIELDS TO [[FieldName1 [, FieldName2 ...]]
| ALL [LIKE Skeleton | EXCEPT Skeleton]]
参数
ON
指定只能访问出现在字段列表中的字段。
OFF
(默认值)指定可以访问当前表中的所有字段。
LOCAL
指定只能访问字段列表中当前工作区的字段。
GLOBAL
指定可以访问字段列表中的所有字段,包括在其他工作区中的字段。
SET FIELDS GLOBAL 允许在不发出 SET COMPATIBLE TO DB4 命令时,也可以访问其他工作区中的字段。
TO [FieldName1 [, FieldName2 ...]]
指定当前表中可访问的字段的名称。在下列情况下,必须包括字段名称的别名:
在字段名称的前面加上表的别名,可以在字段列表中包括其他工作区中打开的表的字段。但是,这些字段只有在发出了 SET FIELDS GLOBAL 或 SET COMPATIBLE DB4 命令后才能访问。
计算结果字段
字段列表可以包含创建计算结果字段的语句。计算结果字段包含由表达式创建的只读数据。这个表达式可以是任何形式,不过它必须是有效的 Visual FoxPro 表达式。在发出了 SET FIELDS GLOBAL 或 SET COMPATIBLE DB4 命令之后,才能访问计算结果字段。
用于创建计算结果字段的语句格式如下:
<calculated field name> = <expr>
下面的示例创建一个名为 LOCATION 的计算结果字段:
CLOSE DATABASES
USE customer
SET FIELDS TO LOCATION = ALLTRIM(city) + ', ' + state
CITY 和 STATE 都是选定表中的字段名称。
SET FIELDS TO 可以添加字段。带字段列表发出 SET FIELDS TO 命令,可以把指定的字段添加到当前可访问的字段中。
不带任何附加参数发出 SET FIELDS TO 命令隐含地执行了 SET FIELDS OFF 命令。
ALL
允许访问当前表中的所有字段。
ALL LIKE Skeleton | EXCEPT Skeleton
可以单独或组合使用 LIKE 和 EXCEPT 子句,有选择地访问字段。如果使用 LIKE Skeleton,可以访问与 Skeleton 相匹配的字段。如果使用 EXCEPT Skeleton,可以访问不与 Skeleton 相匹配的字段。
Skeleton 支持 * 和 ? 通配符。例如,要访问所有以字母 A
和字母 P 开头的字段,可发出如下命令:
SET FIELDS TO ALL LIKE A*,P*
LIKE 子句可以和 EXCEPT 子句联合起来使用:
SET FIELDS TO ALL LIKE A*,P* EXCEPT PARTNO*
说明
SET FIELDS TO 可以添加字段。发出带字段列表的 SET FIELDS TO 命令,可以使指定的字段也成为当前可访问的字段。
发出 SET FIELDS TO 命令隐含地执行了 SET FIELDS OFF 命令。发出既不包含字段列表也不包含 ALL 的 SET FIELDS TO 命令将从当前表中移去字段列表上的所有字段,使每个字段都不能被访问。
SET FIELDS 的作用域是当前数据工作期。