BCP:无法解析列级排序规则

时间:2009-11-09 18:10:43

标签: sql-server bcp

运行此:

bcp MyDb.dbo.uvwMyView out "c:\Test.txt" -SMyServer -T -c

我收到此错误:

SQLState = S1000, NativeError = 0
Error = [Microsoft][SQL Native Client]Unable to resolve column level collations 

搜索谷歌找到了许多可能的解决方案,这些解决方案都不适用于我,也没有为他们提出的任何人工作过。与在线发布的其他情况一样,当我在Management Studio中从中选择并且结果看起来正常(并且没有特殊字符,我检查过)时,该视图不会产生任何问题。结果中的一个文本列具有排序SQL_Latin1_General_CP1_CS_AS。我已经尝试了几个没有效果的选项:-w,-CRAW,-COEM,-C850,-C437。

我正在使用SQL Server 2005。

6 个答案:

答案 0 :(得分:2)

删除视图并重新创建它修复了问题。不幸的是,这并没有解释问题首先如何发生,或者如何在将来阻止它。这不是一个令人满意的解决方案,所以如果有人知道更好的答案,我仍然非常有兴趣听到它。

答案 1 :(得分:1)

我知道这个问题已经回答,但我会加上我的2美分...... 今天我碰到了这个,我添加了一个PRINT @VarableName,在研究中我发现了这个:

From MS Connect

删除PRINT解决了我的问题。

答案 2 :(得分:0)

  • 您可以尝试远程连接到服务器并运行bcp而不使用-s选项。
  • 如果服务器排序规则与数据库或列排序规则不同,请尝试创建格式文件并在bcp中明确指定。

答案 3 :(得分:0)

我在SQL 2008 R2数据库中使用SQL 2005工具,使用datetimeoffset字段时出现了同样的错误。

答案 4 :(得分:0)

试试这个:

accumarray

答案 5 :(得分:0)

我刚遇到这个问题,找到了另一种解决方案。由于配置错误,服务器名称未提供给BCP命令。为了冗余和记录,此消息是:“错误SQLState = S1 000,NativeError = 0错误= [Microsoft] [SQL Server的ODBC驱动程序13]无法解决列级别排序规则BCP复制失败”

将Server(-S)参数中指定的空服务器值更改为正确的服务器名称。