如何使SSIS包监视DB表中列的状态,然后在status = 1时执行ssis包?

时间:2013-03-11 17:42:54

标签: ssis

如何使SSIS包监视数据库表中列的状态,然后在status = 1时执行ssis包

1 个答案:

答案 0 :(得分:2)

您可以在没有定义计划的情况下在SQL代理作业中设置SSIS包。然后在表的状态字段上创建一个触发器。当状态从0更改为1时,执行将运行SSIS包的作业。

您的触发器可能如下所示。我没有检查语法,我建议在测试中调整它以验证它是否正确启动。

CREATE TRIGGER TriggerName
ON TableName 
AFTER UPDATE
IF UPDATE (status) AND status = 1
BEGIN
  EXEC msdb..sp_start_job 
     @job_name = 'JobName';
GO
END

以下链接说明了执行SQL代理作业的不同方法。

http://www.mssqltips.com/sqlservertip/1730/different-ways-to-execute-a-sql-agent-job/

希望这会有所帮助。 信贷基金