下列示例说明了如何使用 bcp 大容量导出字符数据以及如何使用 BULK INSERT 大容量导入相同的数据。
示例表
这些示例要求 dbo 架构下的 AdventureWorks 示例数据库中存在名为 myTestCharData 的表。必须先创建此表,才能运行这些示例。若要创建此表,请在 SQL SQL Server Management Studio 查询编辑器中执行以下内容:
USE AdventureWorks;
GO
CREATE TABLE myTestCharData (
Col1 smallint,
Col2 nvarchar(50),
Col3 nvarchar(50)
);
若要填充此表并查看得到的内容,请执行以下语句:
INSERT INTO myTestCharData(Col1,Col2,Col3)
VALUES(1,'DataField2','DataField3');
INSERT INTO myTestCharData(Col1,Col2,Col3)
VALUES(2,'DataField2','DataField3');
GO
SELECT Col1,Col2,Col3 FROM myTestCharData
使用 bcp 大容量导出字符数据
若要将数据从表导出到数据文件,请将 bcp 与 out 选项及以下限定符一起使用:
|
限定符
|
说明
|
|---|
|
-c
|
指定字符格式。
|
|
-t ,
|
将逗号 (,) 指定为字段终止符。
注意:
|
|
-T
|
指定 bcp 实用工具通过使用集成安全性的受信任连接连接到 SQL Server。如果未指定 -T,则需要指定 -U 和 -P 才能成功登录。
|
下面的示例将 myTestCharData 表中的字符格式数据大容量导出到使用逗号 (,) 作为字段终止符且名为 myTestCharData-c.Dat 的新数据文件。在 Microsoft Windows 命令提示符下输入:
bcp AdventureWorks..myTestCharData out C:\myTestCharData-c.Dat -c -t, -T
使用 BULK INSERT 大容量导入字符数据
下面的示例使用 BULK INSERT 将 myTestCharData-c.Dat 数据文件中的数据导入到 myTestCharData 表中。在 SQL Server Management Studio 查询编辑器中,执行以下语句:
USE AdventureWorks;
GO
BULK INSERT myTestCharData
FROM 'C:\myTestCharData-c.Dat'
WITH (
DATAFILETYPE='char',
FIELDTERMINATOR=','
);
GO
SELECT Col1,Col2,Col3 FROM myTestCharData;
GO