Show/Hide Toolbars

XSharp

Navigation: X# 文档 > X# 语言参考 > 命令和语句 > 数据库

COPY TO ARRAY 命令 (FoxPro)

Scroll Prev Top Next More
Note该命令在头文件中定义,将由 X# 预处理器预处理为函数调用。如果禁用标准头文件 (-nostddefs),该命令将不可用。如果告诉编译器使用不同的标准头文件(-stddef ),则此命令也可能不可用。

 

用途

将当前选定表中的数据复制到一个数组中。

语法

COPY TO ARRAY <ArrayName>  
  [FIELDS FieldList | FIELDS LIKE <Skeleton> | FIELDS EXCEPT <Skeleton>]
  [<Scope>] [WHILE <lCondition>] [FOR <lCondition>] [NOOPTIMIZE]

参数

<ArrayName>指定包含要复制到新记录中的数据的数组名称。新记录会被添加到表中,直到数组中的所有记录都被附加。        

 

FIELDS <idFieldList>        要处理的字段列表。默认为所有字段,备注字段除外,除非命令支持 MEMO 子句。
       只有两个文件中名称和类型相同的字段才会被附加。 如果相同名称的字段在数据类型上不匹配,则会出现运行时错误。

 

FIELDS LIKE <Skeleton>        可以使用通配符指定字段名称,例如 FIELDS LIKE *name

 

FIELDS EXCEPT <Skeleton>可以排除主键等字段: FIELDS EXCEPT Id
       <Skeleton> 支持使用通配符(* 和 ?)。 例如,要替换所有以字母 A 和 P 开头的字段,请使用 FIELDS LIKE A*,P*

 

请注意,您可以将 FIELDS LIKE 和 FIELDS EXCEPT 结合使用,但不能将字段列表与 LIKE 和 EXCEPT 子句结合使用。

 

<Scope>当前数据库文件中要处理的部分。 默认为所有可见记录。范围可以是以下一个或多个子句:
[NEXT <NEXT>]        可选择指定从源文件第一条记录开始处理的记录数。这将从源文件的第一条记录开始。
[RECORD <rec>]        可选的记录 ID 如果指定,处理将从源文件中的该数据记录开始。
[<rest:REST>]                选项 REST 可指定是否从当前记录到最后一条记录按顺序搜索。如果指定了条件,则选项 ALL 为默认值。
[ALL]                选项 ALL 指定导入源文件中的所有记录。这是默认设置。
WHILE <lCondition>范围内每条可见记录都必须满足的条件,从当前记录开始。 一旦 while 条件失败,进程就会终止。 如果没有指定 <Scope>,while 条件会将默认范围改为文件中的其他可见记录。

 

FOR <lCondition>处理范围内每条可见记录必须满足的条件。 如果某条记录不符合指定条件,则会被忽略,并处理下一条可见记录。 如果没有指定 <Scope> 或 WHILE 子句,则 for 条件会将默认范围改为所有可见记录。

 

NOOPTIMIZE该子句已被解析,但还不支持。

 

参见

APPEND FROM ARRAY, GATHER, SCATTER