Azure SQL 服务器 BCP -

Azure SQL Server BCP -

我有一个包含 3 列的 csv 文件

LastName
FirstName
EmpID

我是 SQLLDR 将数据加载到 Oracle 数据库中,但是在数据库迁移到 Azure SQL 服务器后,我选择使用 BCP 将数据加载到 Azure sqlserver。

我正在使用以下命令生成格式

bcp Database.Schema.Persons format nul -c -t, -f Persons.fmt -S tcp:demo.database.windows.net -U User01 -P P@$$word!

格式如下

13.0
3
1       SQLCHAR             0       255     ","      1     LastName               SQL_Latin1_General_CP1_CI_AS
2       SQLCHAR             0       255     ","   2     FirstName              SQL_Latin1_General_CP1_CI_AS
3       SQLINT             0       255     "\r\n"   3     FirstName              SQL_Latin1_General_CP1_CI_AS

然而SQLLDR ctl文件具有以下功能

LPAD(:EmpID, 4, '0')
DATE "YYYY-MM-DD"
TIMESTAMP "YYYY-MM-DD-HH24.MI.SS.FF6"
NVL(:LastName, '')

如何在 BCP 格式文件中容纳?

How do I accommodate in the BCP format file?

你不知道。 BCP 进入暂存 table 并插入 ... SELECT 到最终 table 以应用转换。或者在 Azure Blob 存储中暂存数据并使用 INSERT ... .SELECT . . . FROM OPENROWSET 将数据加载到目标 table.