使用-t" |" BCP输出后数据变得不可读。

时间:2014-04-17 06:07:18

标签: tsql bcp

这个让我大吃一惊。我只能使用-c BCP OUT文件,但我需要数据管道分隔,所以我包括-t“|”并且数据变成所有特殊字符。这是代码:

SET @bcpsql =  
    ' cd C:\Program Files\Microsoft SQL Server\100\Tools\Binn\ & BCP.EXE ' +  
    ' "SELECT * FROM wire" queryout' +  
    ' "C:\WIRE_'+@dte+'.txt" -T -c -t"|" >> "C:\mantas\log.txt"';  
EXEC master..xp_cmdshell @bcpsql   

如果我把-t“^ |”它将导出正常但所有分隔符变为^ |。所以,不知何故,管道正在抛弃一些东西。有没有人遇到过这样的事情?

1 个答案:

答案 0 :(得分:0)

您需要参数和管道之间的空格,但您还需要双引号。

使用-t" |" (-T [空格]" |")