2

下面的 bcp commnad 没有错误

exec master..xp_cmdshell 'bcp "select RecordType + PaymentYear from   CentersApp.dbo.IRS_TRecord"     
queryout "\\w2k3solomon\c$\IRS1099B\IRS_VENDORS.TXT"  -T -c -S SOLOMON'

但是,当我使用变量做同样的事情时(见下文),我得到了错误'bcp' is not recognized as an internal or external command

  declare @t nvarchar(200)
  declare @s nvarchar(1000)


   set @t = '"select RecordType + PaymentYear from CentersApp.dbo.IRS_TRecord"'
   set @s =  '''bcp ' + '"' +  @t + '"' +  '        queryout "\\w2k3solomon\c$\IRS1099B\IRS_VENDORS.TXT"  -T -c -S SOLOMON '''

   exec master..xp_cmdshell @s
4

1 回答 1

1

改变

set @s =  '''bcp ' + '"' +  @t + '"' +  '        queryout "\\w2k3solomon\c$\IRS1099B\IRS_VENDORS.TXT"  -T -c -S SOLOMON '''

set @s =  'bcp ' + '"' +  @t + '"' +  '        queryout "\\w2k3solomon\c$\IRS1099B\IRS_VENDORS.TXT"  -T -c -S SOLOMON '

它存储在字符串变量类型中,因此您不需要使用引号

于 2013-09-10T20:22:12.593 回答