如何在sql Job中获取从step1到step2的值

VIn*_*ayK 6 ssis sql-server-2008 sql-job

我需要创建一个 SQL 作业。

Step1: 在TaskToProcess表中插入一行并返回ProcessID(PK和Identity)

Step2: 取回step1生成的ProcessID,将值传递给SSIS包,执行SSIS包。

这在 SQL Server JOB 中是可能的吗??

请帮我解决这个问题

提前致谢。

Ed *_*per 3

没有在作业步骤之间传递变量值的内置方法。但是,有一些解决方法。

一种选择是在步骤 1 结束时将值存储在表中,并在步骤 2 中从数据库中查询回来。

听起来您是ProcessID通过插入表并返回SCOPE_IDENTITY()插入行的来生成的。如果作业步骤 1 是插入此表的唯一进程,您可以使用以下命令从作业 2 中检索最后插入的值:IDENT_CURRENT('<tablename>')函数从作业 2 检索最后插入的值。

编辑

如果多个进程可以插入到进程控制表中,那么最好的解决方案可能是将步骤 1 和 2 重构为单个步骤 - 可能使用可以在步骤之间传递变量的控制 SSIS 主包(或其他等效技术)。