sql-server-2008 – 如何在sql Job中获取step1到step2的值

我需要创建一个SQL JOB.

步骤1:
在TaskToProcess表中插入一行并返回ProcessID(PK和身份)

第2步:
返回在step1中生成的ProcessID,并将值传递给SSIS包并执行SSIS包.

这在SQL服务器JOB中是否可能?

请帮帮我

提前致谢.

最佳答案 没有在作业步骤之间传递变量值的内置方法.但是,有几种解决方法.

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

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

编辑

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

点赞