【问题标题】:Data becomes unreadable after BCP out with -t"|"使用 -t"|" 退出 BCP 后数据变得不可读
【发布时间】:2014-04-17 06:07:17
【问题描述】:

这个让我有点吃惊。我可以使用 -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"^|"它会很好地导出,但所有分隔符都变为 ^|。所以,不知何故,管道正在抛出一些东西。有没有人遇到过这种情况?

【问题讨论】:

  • 你试过 -T|,所以不要用 ^ 转义管道,而是在 -T 和管道字符之间使用空格?
  • 当我使用 -t |我收到错误:命令的语法不正确。

标签: tsql bcp


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 2014-11-13
    • 1970-01-01
    • 1970-01-01
    • 2016-05-01
    • 2016-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-26
    相关资源
    最近更新 更多