【问题标题】:Sequencing of task using SSIS使用 SSIS 对任务进行排序
【发布时间】:2017-07-21 14:53:22
【问题描述】:

我正在尝试在我的 SSIS 包中实现日志记录。我想通过在我的自定义日志表中写入一条消息——批处理开始——来开始记录。我目前正在创建以下并行运行的任务。我正在考虑创建一个执行 sql 任务来记录它。如何告诉 SSIS 在执行包中的其他任务之前执行 sql 任务。我是否需要在序列容器中移动所有这些任务。

请找到我的包裹截图。

【问题讨论】:

  • 您可以将它们放入任意数量的序列容器中,然后按照您需要的顺序链接这些容器。注意:链接容器有多种方式(“成功”、“失败”和“完成”),我主要使用默认的“成功”。您还可以包含约束来控制从一个容器到下一个容器的流动,请参阅docs.microsoft.com/en-us/sql/integration-services/control-flow/…
  • 我是否可以并行运行上述任务,而不是在序列容器中按序列运行
  • @Tom 如果您按原样移动它们,它们将在序列容器内并行运行。

标签: ssis


【解决方案1】:

我觉得实现日志记录的最佳方式是以非侵入式的方式进行,即让它们在后台运行。 SSIS 通过“事件处理程序”提供此功能。

打开您的包并转到“事件处理程序”。将“可执行文件”设置为“您的包名称”,选择“OnPreExecute”作为“事件处理程序”。然后单击超链接以继续添加“执行 SQL 任务”以进行审核。

使用上面相同的方法,您可以继续添加“OnPostExecute”。此外,这项技术也可以跨单个任务级别实施。

更多信息可以参考-https://docs.microsoft.com/en-us/sql/integration-services/integration-services-ssis-event-handlers

【讨论】:

    猜你喜欢
    • 2015-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-16
    • 2016-08-01
    相关资源
    最近更新 更多