读书人

用 BCP 导出数据的时候如何去执行带有

发布时间: 2012-03-22 17:43:57 作者: rapoo

用 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

读书人网 >SQL Server

热点推荐