这个让我大吃一惊。我只能使用-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“^ |”它将导出正常但所有分隔符变为^ |。所以,不知何故,管道正在抛弃一些东西。有没有人遇到过这样的事情?
答案 0 :(得分:0)
您需要参数和管道之间的空格,但您还需要双引号。
使用-t" |" (-T [空格]" |")