用 BCP 导出数据的时候怎么去执行带有变量的语句?!
Hi,
如题,比如有类似语句
EXEC master..xp_cmdshell 'bcp "SELECT * FROM employee where emp_no = @userid " queryout "C:\1.txt " -c -t -S "win2ksvr " -U "lich " -P "123 " '
当然上面的语句无法运行的
其中 @userid 是一个变量,我希望通过输入不同的数据,导出不同的文件,请问
该怎样来实现呢?谢谢!
[解决办法]
declare @userid int
set @userid = 1
declare @bcp varchar(8000)
set @bcp = 'bcp "SELECT * FROM employee where emp_no = ' + rtrim(@userid) + ' " queryout "C:\ ' + rtrim(@userid) + '.txt " -c -t -S "win2ksvr " -U "lich " -P "123 " '
EXEC master..xp_cmdshell @bcp