日期:2014-05-16  浏览次数:20800 次

一条语句里存在多个引号,如何操作?
EXEC master..xp_cmdshell 'bcp "SELECT cn3, cn4, cn9, cn11, cn18, CASE cn18 - bn18 WHEN 0 THEN '-' ELSE CONVERT(varchar(41), bn18) END AS 正确金额, cn21, CASE cn21 - bn21 WHEN 0 THEN '-' ELSE CONVERT(varchar(41), bn21) END AS 正确销售线标示 FROM daohang.dbo.cjrxa_srhdv201402 WHERE (bn3 IS NOT NULL) AND (cn3 IS NOT NULL)" queryout D:\d201402c0.csv -T -f D:\cjrxa_srhdd.fmt'
------解决方案--------------------
字符串里的单引号变成2个单引号

EXEC master..xp_cmdshell 'bcp "SELECT cn3, cn4, cn9, cn11, cn18, CASE cn18 - bn18 WHEN 0 THEN ''-'' ELSE CONVERT(varchar(41), bn18) END AS 正确金额, cn21, CASE cn21 - bn21 WHEN 0 THEN ''-'' ELSE CONVERT(varchar(41), bn21) END AS 正确销售线标示 FROM daohang.dbo.cjrxa_srhdv201402 WHERE (bn3 IS NOT NULL) AND (cn3 IS NOT NULL)" queryout D:\d201402c0.csv -T -f D:\cjrxa_srhdd.fmt'