VIn*_*ayK 6 ssis sql-server-2008 sql-job
我需要创建一个 SQL 作业。
Step1: 在TaskToProcess表中插入一行并返回ProcessID(PK和Identity)
Step2: 取回step1生成的ProcessID,将值传递给SSIS包,执行SSIS包。
这在 SQL Server JOB 中是可能的吗??
请帮我解决这个问题
提前致谢。
没有在作业步骤之间传递变量值的内置方法。但是,有一些解决方法。
一种选择是在步骤 1 结束时将值存储在表中,并在步骤 2 中从数据库中查询回来。
听起来您是ProcessID通过插入表并返回SCOPE_IDENTITY()插入行的来生成的。如果作业步骤 1 是插入此表的唯一进程,您可以使用以下命令从作业 2 中检索最后插入的值:IDENT_CURRENT('<tablename>')函数从作业 2 检索最后插入的值。
编辑
如果多个进程可以插入到进程控制表中,那么最好的解决方案可能是将步骤 1 和 2 重构为单个步骤 - 可能使用可以在步骤之间传递变量的控制 SSIS 主包(或其他等效技术)。
| 归档时间: |
|
| 查看次数: |
7819 次 |
| 最近记录: |