因此,我在Sql Server Agent中创建了一个简单的作业,每隔5分钟运行一次SSIS包 我一直在努力寻找Sql Server Agent作业及其相关Package之间的关系,因为dbo.sysssislog表中没有job_id将作业与特定包连接起来。我想要检索SSIS包中的job_id,以便我可以在某个地方的数据库中记录它,或者在SQL Server中的一个简单查询中定义两者之间的关系
非常感谢任何建议或帮助
答案 0 :(得分:3)
没有关系。我可以通过dtexec通过xp_cmdshell运行一个SSIS包,它仍然会记录到sysssislog但是不会有与之关联的job_id。
你可能能够将作业步骤的开始时间与包裹的PackageStart
事件联系起来,但由于可能会有延迟,因此它会变得不精确在可执行文件中实际启动。另外,他们将日期和时间分别存储在sys作业表中的愚蠢方式。
2012年和项目部署模型,您实际上可以访问系统变量,它是在服务器上运行时的包执行ID(它们以不同方式调用)。