0

我一直在创建 bcp 格式文件。我的客户正在使用 MSSQL 2005,我正在通过 RDC 进行远程连接。我正在使用以下命令在目标客户端 MSSQL Server 上创建格式文件,

bcp myDatabase.TableName 格式 nul -c -x -f someFile..xml -T

但它提示我错误

与服务器建立连接时发生错误。


我的视图指向具有如下结构的表:

Colum Name          DataType
SKU                 Varchar(20)
ASIN                Varchar(20)
Price               Float
Quantity            Int
MarketplaceTitle    Varchar(50)

注意:我已经经历了许多类似的问题,但没有运气。

任何人都可以为我提供上述视图的格式文件吗?

提前致谢。

4

1 回答 1

3

听起来您的问题实际上是连接到您的数据库,而不是格式文件。

我创建了一个快速测试:

-- 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。

于 2013-03-12T17:10:16.227 回答