【问题标题】:Sql Server 2005 SSIS/Agent - Query status of a jobSql Server 2005 SSIS/Agent - 查询作业状态
【发布时间】:2009-05-07 14:46:13
【问题描述】:

有没有办法查询当前状态(正在执行、空闲等)和最后结果(成功、失败等),以及特定作业名称的最后运行时间?我正在寻找的最终结果是能够在各种 SSIS 包的内部 Web 应用程序中显示此信息。

【问题讨论】:

    标签: sql-server sql-server-2005 ssis


    【解决方案1】:

    您应该能够在 MSDB 中找到此信息 - 有表 sysjobs、sysjobhistory 和 sysjobsteps 提供您正在寻找的信息

    【讨论】:

      【解决方案2】:
      exec msdb.dbo.sp_help_job @job_name = 'TheJobName' 
      

      提供我想要的信息。那么我可以使用 SqlDataReader 来获取信息。请注意,此存储过程返回多个结果集。

      有关此存储过程的 micrsoft 文档是 http://msdn.microsoft.com/en-us/library/ms186722(SQL.90).aspx

      【讨论】:

        【解决方案3】:

        我使用的另一个解决方案是使用当前状态更新引用表。检索您需要的值既快速又简单,而且通常非常容易。

        例如,一旦一个包启动,就插入一条包含日期和时间、包名称等的记录。

        【讨论】:

        • 这很简单,很容易与您所做的任何其他进度报告相结合。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-12
        • 2010-11-21
        • 1970-01-01
        • 1970-01-01
        • 2011-01-25
        相关资源
        最近更新 更多