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