听起来您的问题实际上是连接到您的数据库,而不是格式文件。
我创建了一个快速测试:
-- DROP TABLE dbo.Test
CREATE TABLE dbo.Test(
SKU Varchar(20),
[ASIN] Varchar(20),
Price Float,
Quantity Int,
MarketplaceTitle Varchar(50)
);
这是一个稍微冗长的语法:
bcp YourDatabaseName.dbo.Test format nul -c -x -f c:\YourDir\format.xml -T -S YourServerName
所以对我来说,这看起来像这样:
bcp sandbox.dbo.Test format nul -c -x -f c:\Test\format.xml -T -S "(local)"
这是生成的文件:
<?xml version="1.0"?>
<BCPFORMAT xmlns="http://schemas.microsoft.com/sqlserver/2004/bulkload/format" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<RECORD>
<FIELD ID="1" xsi:type="CharTerm" TERMINATOR="\t" MAX_LENGTH="20" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
<FIELD ID="2" xsi:type="CharTerm" TERMINATOR="\t" MAX_LENGTH="20" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
<FIELD ID="3" xsi:type="CharTerm" TERMINATOR="\t" MAX_LENGTH="30"/>
<FIELD ID="4" xsi:type="CharTerm" TERMINATOR="\t" MAX_LENGTH="12"/>
<FIELD ID="5" xsi:type="CharTerm" TERMINATOR="\r\n" MAX_LENGTH="50" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
</RECORD>
<ROW>
<COLUMN SOURCE="1" NAME="SKU" xsi:type="SQLVARYCHAR"/>
<COLUMN SOURCE="2" NAME="ASIN" xsi:type="SQLVARYCHAR"/>
<COLUMN SOURCE="3" NAME="Price" xsi:type="SQLFLT8"/>
<COLUMN SOURCE="4" NAME="Quantity" xsi:type="SQLINT"/>
<COLUMN SOURCE="5" NAME="MarketplaceTitle" xsi:type="SQLVARYCHAR"/>
</ROW>
</BCPFORMAT>
HTH。