题
运行此:
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
搜索Google找到了许多可能的解决方案,哪些解决方案对我有用或为他们建议的任何人工作。与其他在线发布的情况一样,当我在管理工作室中选择它时,该视图不会引起任何问题,并且结果看起来正常(并且没有特殊的字符,我检查过)。结果中的一个文本列有整理 SQL_Latin1_General_CP1_CS_AS
. 。我尝试过几种BCP的选择,但没有任何效果:-w,-craw,-coem,-c850,-c437。
我正在使用SQL Server 2005。
解决方案
放下视图并重新创建它解决了问题。不幸的是,这并不能解释问题首先是如何发生的,或者将来如何预防问题。这不是一个令人满意的解决方案,因此,如果有人知道一个更好的答案,我仍然对听到它非常感兴趣。
其他提示
- 您可以尝试远程连接到服务器,并在没有-s选项的情况下运行BCP。
- 如果服务器整理与数据库或列整理不同,请尝试创建格式文件并在BCP中明确指定它。
我正在使用SQL 2005工具针对SQL 2008 R2数据库,并且在使用时遇到了相同的错误 datetimeoffset
字段。
尝试这个:
declare @sql varchar(8000)
select @sql = 'bcp "select * from database_name.dbo.table_name" queryout H:\Tempfile_DTU_proc\test1.csv -c -t, -T -S' + @@servername
exec master..xp_cmdshell @sql
不隶属于 StackOverflow