C O P Y T O 命 令

C O P Y T O 命 令 - 图1用当前选定表的内容创建新文件

语 法

COPY TO FileName

[DATABASE DatabaseName [NAME LongTableNam e]] [FIELDS FieldList

| FIELDS LIKE Skeleton

| FIELDS EXCEPT Skeleton ]

[ Scope ] [FOR lExpression1 ] [ W H ILE lExpression2 ] [[ W ITH] CDX] | [[WITH] PRODUCTION] [NOOPTIMIZE]

[[TYPE] [FOXPLUS | FOX2X | DIF | MOD

| SDF | SYLK | W K1 | WKS | WR1 | W R K | CVS | | XLS | XL5

| DELIMITED [WITH Delimiter | W ITH BLANK | WITH TAB

| W ITH CHARACTER Delimite r]]] [AS nCodePage ]

参 数 描 述

FileName

C O P Y T O 命 令 - 图2C O P Y T O 命 令 - 图3C O P Y T O 命 令 - 图4C O P Y T O 命 令 - 图5指 定 COPY TO 要 创 建 的 新 文 件 名 若 文 件 名 中 不 包 含 扩 展 名 则 指 定 扩 展 名为 文 件 类 型 的 默 认 扩 展 名 若 不 指 定 文 件 类 型 则 COPY TO 创 建 一 个 新 的

C O P Y T O 命 令 - 图6C O P Y T O 命 令 - 图7V isual FoxPro 表 并 且 用 默 认 扩 展 名 .DBF 指 定 表 文 件 名

DATABASE DatabaseName

C O P Y T O 命 令 - 图8指 定 要 添 加 新 表 的 数 据 库

N A M E LongTableName

C O P Y T O 命 令 - 图9C O P Y T O 命 令 - 图10指 定 新 表 的 长 名 称 长 名 称 最 多 可 以 包 含 到 128 个 字 符 并 且 可 以 在 数 据 库 中使 用 短 文 件 名 的 地 方 使 用 它

FIELDS FieldList

C O P Y T O 命 令 - 图11C O P Y T O 命 令 - 图12C O P Y T O 命 令 - 图13C O P Y T O 命 令 - 图14C O P Y T O 命 令 - 图15C O P Y T O 命 令 - 图16指 定 要 复 制 到 新 文 件 的 字 段 若 省 略 FIELDS FieldLsit 则 将 所 有 字 段 复 制 到新 文 件 若 要 创 建 的 文 件 不 是 表 则 即 使 备 注 字 段 名 包 含 在 字 段 列 表 中 也 不把 备 注 字 段 复 制 到 新 文 件

FIELDS LIKE Skeleton

C O P Y T O 命 令 - 图17C O P Y T O 命 令 - 图18指 定 与 所 给 字 段 梗 概 相 匹 配 的 原 始 表 中 的 字 段 使 用 COPY TO 创 建 的 新 文 件中 包 含 Skeleton

FIELDS EXCEPT Skeleton

C O P Y T O 命 令 - 图19指 定 在 COPY TO 创 建 的 新 文 件 中 包 含 除 了 与 字 段 梗 概 Skeleton 匹 配 的 所 有 字段

C O P Y T O 命 令 - 图20C O P Y T O 命 令 - 图21C O P Y T O 命 令 - 图22C O P Y T O 命 令 - 图23字 段 梗 概 Skeleton 支 持 通 配 符 例 如 要 想 在 新 文 件 中 包 含 以 字 母 A 和 P 开头 的 所 有 字 段 可 以 使 用 下 列 代 码

COPY TO mytable FIELDS LIKE A*,P*

C O P Y T O 命 令 - 图24LIKE 子 句 可 以 和 EXCEPT 子 句 组 合 使 用

COPY TO mytable FIELDS LIKE A*,P* EXCEPT PARTNO*

Scope

C O P Y T O 命 令 - 图25C O P Y T O 命 令 - 图26C O P Y T O 命 令 - 图27C O P Y T O 命 令 - 图28C O P Y T O 命 令 - 图29C O P Y T O 命 令 - 图30C O P Y T O 命 令 - 图31指 定 要 复 制 到 新 文 件 的 记 录 范 围 只 有 在 范 围 内 的 记 录 才 被 复 制 Scope 子 句为 ALL NEXT nRecord RECORD nRecordNumber 和 REST 有 关 信 息

C O P Y T O 命 令 - 图32请 参 阅 帮 助 中 的 Scope Clauses FOR lExpression1

C O P Y T O 命 令 - 图33C O P Y T O 命 令 - 图34C O P Y T O 命 令 - 图35指 定 只 复 制 逻 辑 条 件 lExpression1 为 真 (.T.) 的 记 录 到 文 件 中 包 含 FOR

C O P Y T O 命 令 - 图36C O P Y T O 命 令 - 图37lExpression1 可 按 条 件 复 制 记 录 筛 选 出 不 想 要 的 记 录

C O P Y T O 命 令 - 图38C O P Y T O 命 令 - 图39C O P Y T O 命 令 - 图40C O P Y T O 命 令 - 图41lExpression1 是 可 优 化 表 达 式 则 Rushmore 优 化 有 FOR lExpression1 子 句的 COPY TO 命 令 为 获 得 最 佳 效 果 可 在 FOR lExpression1 子 句 中 使 用 可 优化 表 达 式

C O P Y T O 命 令 - 图42有 关 优 化 表 达 式 的 内 容 请 参 阅 稍 后 部 分 的 SET OPTIMIZE 命 令 和

C O P Y T O 命 令 - 图43C O P Y T O 命 令 - 图44C O P Y T O 命 令 - 图45C O P Y T O 命 令 - 图46C O P Y T O 命 令 - 图47C O P Y T O 命 令 - 图48C O P Y T O 命 令 - 图49M icrosoft Visual FoxPro 6.0 中 文 版 程 序 员 指 南 第 十 五 章 优 化 应 用 程 序的 掌 握 Rushmore 技 术

W H ILE lExpression2

C O P Y T O 命 令 - 图50C O P Y T O 命 令 - 图51C O P Y T O 命 令 - 图52C O P Y T O 命 令 - 图53指 定 一 个 条 件 只 有 当 逻 辑 表 达 式 lExpression2 为 真 (.T.) 时 才 复 制 记 录

[ W ITH] CDX | [WITH] PRODUCTION

C O P Y T O 命 令 - 图54C O P Y T O 命 令 - 图55创建一个与已有表的结构索引文件相同的新表结构索引文件 原始结构索引文件的标识和索引表达式被复制到新结构索引文件 CDX 等 同 于 PRODUCTION

C O P Y T O 命 令 - 图56子 句

C O P Y T O 命 令 - 图57C O P Y T O 命 令 - 图58若 不 是 复 制 到 V isual FoxPro 新 表 则 不 要 包 含 C D X 或 PRODUCTION NOOPTIMIZE

C O P Y T O 命 令 - 图59使 COPY TO 的 Rushmore 优 化 无 效

C O P Y T O 命 令 - 图60C O P Y T O 命 令 - 图61有 关 详 细 内 容 请 参 阅 稍 后 部 分 的 SET OPTIMIZE 命 令

TYPE

C O P Y T O 命 令 - 图62C O P Y T O 命 令 - 图63C O P Y T O 命 令 - 图64若 要 创 建 的 文 件 不 是 Visual FoxPro 表 则 指 定 该 文 件 类 型 指 定 文 件 类 型 时不 必 包 含 TYPE 关 键 字

FOXPLUS

C O P Y T O 命 令 - 图65C O P Y T O 命 令 - 图66C O P Y T O 命 令 - 图67C O P Y T O 命 令 - 图68C O P Y T O 命 令 - 图69V isual FoxPro 备 注 文 件 与 FoxBASE+ 备 注 文 件 有 不 同 的 结 构 若 V isual FoxPro 源 表 包 含 备 注 字 段 则 包 含 FOXPLUS 子 句 可 创 建 一 个 能 在FoxBASE+ 中 使 用 的 表 Visual FoxPro 备 注 字 段 不 能 包 含 二 进 制 数 据 因 为FoxBASE+ 不 支 持 备 注 字 段 中 出 现 二 进 制 数 据

FOX2X

C O P Y T O 命 令 - 图70创建能在 FoxPro for Windows FoxPro for Macintosh 和 FoxPro for MS-DOS 的早期版本

C O P Y T O 命 令 - 图71C O P Y T O 命 令 - 图72C O P Y T O 命 令 - 图73C O P Y T O 命 令 - 图742.0 2.5 和 2.6 版 中打开的新表

C O P Y T O 命 令 - 图75C O P Y T O 命 令 - 图76C O P Y T O 命 令 - 图77C O P Y T O 命 令 - 图78C O P Y T O 命 令 - 图79C O P Y T O 命 令 - 图80C O P Y T O 命 令 - 图81C O P Y T O 命 令 - 图82C O P Y T O 命 令 - 图83C O P Y T O 命 令 - 图84C O P Y T O 命 令 - 图85C O P Y T O 命 令 - 图86对于数值型 浮点型 整型 双精度型和货币型字段 源表中的 null 值被转换为新表中的 0 对于其他字段类型 源表中的 null 值被转换为新表中的空值 blank value) 有关空值 (blank value) 的详细内容 请参阅 ISBLANK

C O P Y T O 命 令 - 图87C O P Y T O 命 令 - 图88下表列出了当包含 FOX2X 参数时 被转换为新表中不同字段类型的 Visual FoxPro 字段类型

Visual 字 段 类 型 FoxPro 2.x 字 段 类 型

货币型 浮点型

日期时间型 日期型

双精度型 浮点型

整型 数值型

DIF

C O P Y T O 命 令 - 图89C O P Y T O 命 令 - 图90C O P Y T O 命 令 - 图91C O P Y T O 命 令 - 图92C O P Y T O 命 令 - 图93C O P Y T O 命 令 - 图94C O P Y T O 命 令 - 图95C O P Y T O 命 令 - 图96C O P Y T O 命 令 - 图97C O P Y T O 命 令 - 图98C O P Y T O 命 令 - 图99创 建 一 个 V isiCalc .DIF 数 据 交 换 格 式 文 件 Visual FoxPro 表 的 字 段 变 为矢 量 列 记 录 变 为 元 组 行 若 在 FileName 中 不 包 含 扩 展 名 则 指 定新 文 件 的 扩 展 名 为 .DIF

C O P Y T O 命 令 - 图100C O P Y T O 命 令 - 图101创 建 M icrosoft Multiplan 4.01 版 文 件 若 不 包 含 扩 展 名 则 指 定 新 的

C O P Y T O 命 令 - 图102M icrosoft Multiplan 文 件 的 扩 展 名 为 .M O D

C O P Y T O 命 令 - 图103C O P Y T O 命 令 - 图104C O P Y T O 命 令 - 图105C O P Y T O 命 令 - 图106C O P Y T O 命 令 - 图107C O P Y T O 命 令 - 图108C O P Y T O 命 令 - 图109C O P Y T O 命 令 - 图110C O P Y T O 命 令 - 图111C O P Y T O 命 令 - 图112C O P Y T O 命 令 - 图113C O P Y T O 命 令 - 图114创 建 SDF 系 统 数 据 格 式 文 件 SDF 文 件 是 ASCII 文 本 文 件 其 中 记 录 都有 固 定 长 度 并 以 回 车 和 换 行 符 结 尾 字 段 不 分 隔 若 不 包 含 扩 展 名 则 指 定SDF 文 件 的 扩 展 名 为 .TXT 注 意 当 使 用 COPY TO 命 令 创 建 SDF 文 件 时会 忽 略 SET CENTURY 的 设 置

C O P Y T O 命 令 - 图115C O P Y T O 命 令 - 图116C O P Y T O 命 令 - 图117C O P Y T O 命 令 - 图118C O P Y T O 命 令 - 图119C O P Y T O 命 令 - 图120C O P Y T O 命 令 - 图121创 建 SYLK 符 号 连 接 交 换 文 件 SYLK 文 件 用 于 M icrosoft Multiplan 每个 当 前 选 定 表 中 的 字 段 变 为 电 子 表 格 中 的 一 列 每 个 记 录 变 为 一 行 SYLK 文件 没 有 扩 展 名

C O P Y T O 命 令 - 图122C O P Y T O 命 令 - 图123C O P Y T O 命 令 - 图124C O P Y T O 命 令 - 图125创 建 Lotus 1-2-3 2.x 版 的 电 子 表 格 文 件 每 个 当 前 选 定 表 中 的 字 段 变 为 电 子 表格 中 的 一 列 每 条 记 录 变 为 一 行 新 建 电 子 表 格 的 文 件 扩 展 名 指 定 为 . W K 1

W K S

C O P Y T O 命 令 - 图126创 建 Lotus 1-2-3 1a 版 的 电 子 表 格 文 件 当 前 选 定 表 中 的 每 个 字 段 变 为 电 子 表

C O P Y T O 命 令 - 图127C O P Y T O 命 令 - 图128C O P Y T O 命 令 - 图129C O P Y T O 命 令 - 图130C O P Y T O 命 令 - 图131C O P Y T O 命 令 - 图132C O P Y T O 命 令 - 图133格 中 的 一 列 每 条 记 录 变 为 一 行 新 建 电 子 表 格 的 文 件 扩 展 名 指 定 为 . W K S 创 建 Lotus Symphony 1.1 或 1.2 版 的 电 子 表 格 文 件 当 前 选 定 表 中 的 每 个 字 段变 为 电 子 表 格 中 的 一 列 每 条 记 录 变 为 一 行 新 建 电 子 表 格 的 文 件 扩 展 名 指 定为 . W R 1

W R K

C O P Y T O 命 令 - 图134C O P Y T O 命 令 - 图135C O P Y T O 命 令 - 图136C O P Y T O 命 令 - 图137创 建 Lotus Symphony 1.0 版 的 电 子 表 格 文 件 当 前 选 定 表 中 的 每 个 字 段 变 为电 子 表 格 中 的 一 列 每 条 记 录 变 为 一 行 新 建 电 子 表 格 的 文 件 扩 展 名 指 定 为 . W R K

CVS

C O P Y T O 命 令 - 图138C O P Y T O 命 令 - 图139C O P Y T O 命 令 - 图140创 建 一 个 用 逗 号 分 隔 各 值 的 文 件 一 个 CSV 文 件 的 第 一 行 是 字 段 名 文 件 中余 下 的 字 段 值 用 逗 号 分 隔

C O P Y T O 命 令 - 图141C O P Y T O 命 令 - 图142C O P Y T O 命 令 - 图143C O P Y T O 命 令 - 图144C O P Y T O 命 令 - 图145创 建 M icrosoft Excel 2.0 版 的 电 子 表 格 文 件 当 前 选 定 表 中 的 每 个 字 段 变 为 电子 表 格 中 的 一 列 每 条 记 录 变 为 一 行 若 不 包 含 文 件 扩 展 名 则 新 建 电 子 表 格的 文 件 扩 展 名 指 定 为 .XLS

XL5

C O P Y T O 命 令 - 图146C O P Y T O 命 令 - 图147C O P Y T O 命 令 - 图148C O P Y T O 命 令 - 图149C O P Y T O 命 令 - 图150创 建 M icrosoft Excel 5.0 版 的 电 子 表 格 文 件 当 前 选 定 表 中 的 每 个 字 段 变 为 电子 表 格 中 的 一 列 每 条 记 录 变 为 一 行 若 不 包 含 文 件 扩 展 名 则 新 建 电 子 表 格的 扩 展 名 指 定 为 .XLS

C O P Y T O 命 令 - 图151C O P Y T O 命 令 - 图152C O P Y T O 命 令 - 图153C O P Y T O 命 令 - 图154C O P Y T O 命 令 - 图155C O P Y T O 命 令 - 图156创建分隔文件 分隔文件是 ASCII 文本文件 其中每条记录以一个回车和换行符结尾 默认的字段分隔符是逗号 因为字符型数据可能包含逗号 所以另外用双引号标识字符型字段

C O P Y T O 命 令 - 图157C O P Y T O 命 令 - 图158除 非 另 外 指 定 否 则 所 有 新 建 DELIMITED 文 件 的 扩 展 名 都 指 定 为 .TXT

DELIMITED WITH Delimiter

C O P Y T O 命 令 - 图159C O P Y T O 命 令 - 图160用 字 符 而 不 是 等 号 分 隔 文 件 中 的 字 符 型 字 段 用 字 符 Delimiter 代 替 引 号 标 识字 符 型 字 段

DELIMITED WITH BLANK

C O P Y T O 命 令 - 图161用 空 格 代 替 逗 号 分 隔 文 件 中 的 各 个 字 段

DELIMITED WITH TAB

C O P Y T O 命 令 - 图162用 制 表 符 代 替 逗 号 分 隔 文 件 中 的 各 个 字 段

DELIMITED WITH CHARACTER Delimiter

C O P Y T O 命 令 - 图163C O P Y T O 命 令 - 图164C O P Y T O 命 令 - 图165C O P Y T O 命 令 - 图166C O P Y T O 命 令 - 图167C O P Y T O 命 令 - 图168C O P Y T O 命 令 - 图169C O P Y T O 命 令 - 图170创 建 的 文 本 文 件 中 各 个 字 段 由 指 定 的 Delimite 分 隔 若 指 定 Delimite 为 分号 注 意 分 号 应 用 引 号 括 起 来 因 为 分 号 在 V isual Foxpro 中 有 特 殊 的 意 义 同 一 命 令 被 分 写 在 不 同 行 中 时 用 分 号 作 为 行 的 结 束 Delimite 还 可 以 是BLANK 或 TAB

C O P Y T O 命 令 - 图171C O P Y T O 命 令 - 图172注 意 W ITH Delimiter 可 与 W ITH CHARACTER Delimiter 配 合 使 用 比 如

C O P Y T O 命 令 - 图173C O P Y T O 命 令 - 图174C O P Y T O 命 令 - 图175C O P Y T O 命 令 - 图176在 下 面 的 例 子 中 创 建 了 一 个 文 本 文 件 其 中 各 个 字 段 由 分 号 ; 分 隔 字 符 字段 用 下 划 线 _ 标 识

COPY TO mytxt.txt DELIMITED WITH _ WITH CHARACTER ';'

AS nCodePage

C O P Y T O 命 令 - 图177C O P Y T O 命 令 - 图178C O P Y T O 命 令 - 图179C O P Y T O 命 令 - 图180C O P Y T O 命 令 - 图181C O P Y T O 命 令 - 图182C O P Y T O 命 令 - 图183C O P Y T O 命 令 - 图184C O P Y T O 命 令 - 图185C O P Y T O 命 令 - 图186C O P Y T O 命 令 - 图187指定 COPY TO 创建的表或文件的代码页 Visual FoxPro 复制当前选定表的内容 并且在复制数据的同时 自动将数据转换到为新表或文件指定的代码页 如可能 Visual FoxPro 用指定的代码页标记新建的表或文件 若为 nCodePage 指定了不被支持的值Visual FoxPro 产生一条错误信息 可使用 GETCP 显示代码页对话框 并允许为

C O P Y T O 命 令 - 图188Visual FoxPro 创建的表或文件指定代码页

C O P Y T O 命 令 - 图189C O P Y T O 命 令 - 图190C O P Y T O 命 令 - 图191C O P Y T O 命 令 - 图192C O P Y T O 命 令 - 图193若省略 AS nCodePage 则将新建的表或文件转换到 Visual FoxPro 当前代码页若 nCodePage 是 0 则不发生代码页转换 并且不用代码页标记新建的表或文件

说 明

C O P Y T O 命 令 - 图194C O P Y T O 命 令 - 图195若已设置了索引排序方式 则按主索引顺序复制记录

示 例

C O P Y T O 命 令 - 图196C O P Y T O 命 令 - 图197在下面的示例中 打开 Customer 表并且复制三个连续的记录到名为 TEMP.TXT 的新建分隔格式的数据文件中

CLOSE DATABASES

OPEN DATABASE (HOME(2) + 'Data\testdata') USE customer && 打开 Customer 表

COPY NEXT 3 TO temp TYPE DELIMITED

WAIT WINDOW 'This is the delimited text file' NOWAIT MODIFY FILE temp.txt

DELETE FILE temp.txt

请 参 阅

APPEND FROM , COPY FILE , GETCP C O P Y T O 命 令 - 图198 C O P Y T O 命 令 - 图199 , EXPORT , IMPOR T , R E N A M E TABLE