BCP错误:只有在复制到服务器时才会跳过列

时间:2014-04-24 18:35:09

标签: sql sql-server runtime-error bcp

当我发出这个命令时(看起来很傻但是有效):

BCP "declare @colnames varchar(max); select @colnames=coalesce (@colnames+char(9), '') 
+ Column_Name from db.information_Schema.columns where table_name='table1' order by 
ordinal_position; select @colnames" 
     queryout Table1_Columns.tsv -S?? -U?? -P?? -f** -e**

我收到此错误:

  

[Microsoft] [SQL Native Client]主机文件列只能在以下时跳过   复制到服务器

格式文件是:

9.0
1
1 SQLCHAR 0 100 "\r\n" 1 Column_Names SQL_Latin1_General_CP1_CI_AS

有人可以告诉我为什么会收到此错误吗?

1 个答案:

答案 0 :(得分:2)

有一个活跃的错误报告:http://connect.microsoft.com/SQLServer/feedback/details/584001/bcp-table-out-with-format-file-does-not-work-if-file-specifies-less-columns-than-source-table

一个简单的解决方法是将变量写入临时表(不是#temptable,而是临时表),并从中bcp