【发布时间】:2016-02-08 07:20:20
【问题描述】:
我想在我的数据库中使用 BCP。为此,我写了这个查询:
EXEC xp_cmdshell 'bcp "SELECT rtrim(ltrim(anumber)),rtrim(ltrim(bnumber)),rtrim(ltrim(duration)) FROM [CDRDB].[dbo].[CDRTABLE]" queryout d:\myOUT.txt -S . -UCDRLOGIN -Pbeh1368421 -f "d:\myFORMAT.fmt" '
格式文件myFormat.fmt详细是这样的:
9.0
3
1 SQLNCHAR 0 5 "," 1 ANUMBER ""
2 SQLNCHAR 0 10 "," 2 BNUMBER ""
3 SQLNCHAR 0 10 "\r\n" 3 DURATION ""
当我运行 BCP 命令时出现此错误:
我该如何解决这个问题?
【问题讨论】:
-
您是否尝试先运行您的 select 语句?您可能需要像这样为这些列名起别名:
rtrim(ltrim(anumber)) as Column1尽管这只是一个猜测。您可能还想从示例代码中对您的登录名和密码做出反应。 -
我将 rtrim(ltrim(anumber)) 更改为 anumber 并且...但这样不起作用
-
关于 'unable to resolve column level collation confilct' 错误,互联网上有很多建议运行
BCP -V并确保您的 BPC 版本与您从中提取的 SQL Server 匹配.所以尝试一下并用结果编辑你的问题。也可能有助于发布表 DDL(包括排序规则定义)
标签: sql-server tsql bcp