SQLServer BCP批量导入导出数据

发布时间 2024-01-06 09:38:42作者: txgh

SQLServer BCP批量导入导出数据

语法

bcp [database_name.] schema.{table_name | view_name | "query"}
    {in data_file | out data_file | queryout data_file | format nul}
                                                                                                         
    [-c]
    [-f format_file]
    [-P password]
    [-S [server_name[\instance_name]]]
    [-t field_term]
    [-T]
    [-U login_id]
    [-w]
    [-x]

database_name

指定的表或视图所在数据库的名称。 如果未指定,则使用用户的默认数据库。

schema

表或视图的所有者的名称。

table_name

将数据导入 SQL Server (in) 时为目标表名称,将数据从 SQL Server 导出时 (out) 为源表名称。

view_name

将数据复制到 SQL Server (in) 时为目标视图名称,从 SQL Server 中复制数据时 (out) 为源视图名称。

“query”

一个返回结果集的 Transact-SQL 查询。 如果该查询返回多个结果集,则只将第一个结果集复制到数据文件,而忽略其余的结果集。

in

从文件复制到数据库表或视图。

out

从数据库表或视图复制到文件。如果指定了现有文件,则该文件将被覆盖。

data_file

数据文件的完整路径。

format

根据指定的选项(-n-c-w-N)以及表或视图分隔符创建格式化文件。

-c

使用字符数据类型执行该操作。

-f format_file

指定格式化文件的完整路径。

-P password

指定登录 ID 的密码。

-S server_name [\instance_name]

指定要连接到的 SQL Server 实例。 如果未指定服务器,则 bcp 实用工具将连接到本地计算机上的默认 SQL Server 实例。

-T

指定 bcp 实用工具通过使用集成安全性的受信任连接连接到 SQL Server 。

-U login_id

指定用于连接到 SQL Server的登录 ID。

-w

使用 Unicode 字符执行大容量复制操作。

-X

此选项与 format-fformat_file 选项结合使用,可生成基于 XML 的格式化文件,而不是默认的非 XML 格式化文件。

示例

导出数据

bcp CeShi.dbo.tceshi out "C:\Users\Administrator\Desktop\tceshi.dat" -T -c

导出csv格式

bcp CeShi.dbo.tceshi out "C:\Users\Administrator\Desktop\tceshi.csv" -S 127.0.0.1 -T -t ',' -w

导入数据

bcp CeShi.dbo.tceshi2 in "C:\Users\Administrator\Desktop\tceshi.dat" -T -c

导出XML 格式化文件

bcp CeShi.dbo.tceshi format nul -c -x -f C:\Users\Administrator\Desktop\tceshi.xml -T

使用XML 格式化文件导入数据

bcp CeShi.dbo.tceshi2 in C:\Users\Administrator\Desktop\tceshi.dat -f C:\Users\Administrator\Desktop\tceshi.xml -T

参考文档

大容量导入和导出数据

bcp 实用工具