_대문 | 방명록 | 최근글 | 홈피소개 | 주인놈
FrontPage › Xp_cmdshell+Dtexec

declare
    @cmd nvarchar(4000)
,   @bdt char(8)
,   @edt char(8)
,   @path nvarchar(1000)
,   @pkg nvarchar(1000)
,   @return_code int
 
set @bdt = '20190801'
set @edt = '20190801'
set @path = '\SSISDB\Project01\DW\'
set @pkg = 'dim.test.dtsx'
 
set @cmd = N'""C:\Program Files\Microsoft SQL Server\130\DTS\Binn\DTExec.exe" /Server localhost /ISServer "@path@pkg" /SET "\Package.Variables[User::input_bdt].Properties[Value]";"@bdt" /SET "\Package.Variables[User::input_edt].Properties[Value]";"@edt" /Par "$ServerOption::SYNCHRONIZED(Boolean)";True'
set @cmd = replace(@cmd, '@bdt', @bdt)
set @cmd = replace(@cmd, '@edt', @edt)
set @cmd = replace(@cmd, '@path', @path)
set @cmd = replace(@cmd, '@pkg', @pkg)
print @cmd
 
exec @return_code = xp_cmdshell @cmd
print @return_code --0이면 성공

"주의"
/Par "$ServerOption::SYNCHRONIZED(Boolean)";True 를 붙여야 return_code가 제대로 들어온다.


dtexec /package MyPackage.dtsx /project MyProject.ispac

댓글 남기기..
이름: : 오른쪽의 새로고침을 클릭해 주세요. 새로고침
EditText : Print : Mobile : FindPage : DeletePage : LikePages : Powered by MoniWiki : Last modified 2019-12-09 11:00:41

생각하는 것은 얼굴에 나타난다.