首先,我可以在BCP命令中传递Path的参数吗?
我在Exec SQL任务
中编写了这个查询EXEC xp_cmdshell 'bcp "SELECT * FROM TLC.dbo.World_Hosts" queryout `"C:Usersakshay.kapilaDesktopTLCForeachlearnDest?.txt" -T -c -t '`
我已经给了?在路径。我想要具体的国家来代替。它们保存在变量"国家"中。我正在使用Foreach循环,它创建而不是它应该创建一个文件ex Aus.txt,In.txt每次循环运行该特定值。
我可以这样用吗?如果没有,我如何将变量值传递给BCP命令中的Path ?
您可以在执行SQL任务中使用变量作为SQLSourceType。
创建一个变量来保存bcp命令,它可能看起来像:
"EXEC xp_cmdshell 'bcp "SELECT ''abc'' as output" queryout "" + @[User::strFileName] + "" -T -c -t '"
这里@[User::strFileName]是你想要生成的动态文件。
然后在Execute SQL Task中,将SQLSourceType更改为variable,并选择刚才生成的变量