将查询中的数据导出到数据文件

通过 bcp 命令,可以将 Transact-SQL 语句的结果集导出到数据文件。该 Transact-SQL 语句可以是任何可返回结果集的有效语句,例如分布式查询或联接多个表的 SELECT 语句。

无法保证按数据写入数据文件的顺序从表或视图中大容量导出数据。您可以使用查询以确保大容量导出操作保留数据文件中表数据的顺序。

请注意,有些 Transact-SQL 语句返回多个结果集,例如,指定 COMPUTE 子句的 SELECT 语句或包含多个 SELECT 语句的存储过程。如果 Transact-SQL 语句返回多个结果集,则只复制第一个结果集,而忽略其余的结果集。

ms189569.note(zh-cn,SQL.90).gif注意:
使用 bcp 命令和 BULK INSERT 语句,可以指定大容量导出操作过程中如何对数据文件中的数据进行排序。有关详细信息,请参阅大容量导入数据时控制排序顺序。大容量导入过程中保留数据顺序可以显著提高性能。有关详细信息,请参阅优化大容量导入性能

示例

以下示例将 AdventureWorks``Person.Contact 表中的姓名导出到 Contacts.txt 数据文件。姓名是按姓(如果姓一样则按名)的顺序排列的。

从 Microsoft Windows 命令提示符下执行该示例:

bcp "SELECT FirstName, LastName FROM AdventureWorks.Person.Contact ORDER BY LastName, Firstname" queryout Contacts.txt -c -T 
ms189569.security(zh-cn,SQL.90).gif安全说明:
您可能需要指定要连接的服务器实例的名称。另外,您可能还需要指定用户名和密码。有关详细信息,请参阅 bcp 实用工具

请参阅

概念

大容量导入数据时控制排序顺序
大容量导入和导出数据的方案

其他资源

bcp 实用工具
BULK INSERT (Transact-SQL)
OPENROWSET (Transact-SQL)

帮助和信息

获取 SQL Server 2005 帮助

更改历史记录

发布日期 历史记录

2006 年 7 月 17 日

更改的内容:
  • 添加了对“示例”部分的安全说明。