如何从给定的SSIS包名称获取SQL代理作业名称?

时间:2017-07-25 08:00:25

标签: ssis sql-agent-job

我的包名为" PROCESS_REPORT_SUBSCRIPTION_WEEKLY" 。我需要列出运行此包的所有SQL代理作业。

1 个答案:

答案 0 :(得分:1)

您可以查询msdb数据库对象。

select 
     a.job_id JobID
    ,a.name JobName
    ,js.step_id
    ,js.step_name
    ,js.subsystem
    ,b.name SSISPackageName
    ,js.command
 from  msdb.dbo.sysjobs  a 
Left Join msdb.dbo.sysjobsteps js on js.job_id=a.job_id 
left join msdb.dbo.sysssispackages b on a.name=b.name
Where b.name like '%MySSISPackageName%' OR js.command  like '%MySSISPackageName%' 

注意:

...OR js.command  like '%MySSISPackageName%'

此代码用于处理是否使用T-SQL语法执行包。