【问题标题】:Run a specific SSIS Data Flow Task in a Job在作业中运行特定的 SSIS 数据流任务
【发布时间】:2023-03-26 02:25:01
【问题描述】:

可以通过 Visual Studio 仅运行 specific Data Flow task(右键单击数据流并执行)。例如。您有多个数据流,但只执行其中一个。

我现在正在尝试通过工作来实现这种能力 - 例如我有 1 个控制流和 2 个数据流(DataFlow1DataFlow2)- 并在

SQLJob1 - 它会触发DataFlow1

SQLJob2 - 将触发同一 SSISPackage 的 DataFlow2

上述链接指出“您可以使用优先约束上的表达式来构建特殊的控制流逻辑,以定义可选的执行路径。”

我不想创建特殊的控制流逻辑 - 或安装 2 个单独的 SSIS 包 - 作业中的 SQL 命令会触发什么 请问只有DataFlow1吗?

我看到我可以在 VS 中右键单击并禁用特定的数据流 - 然后运行包。我试图查看用于禁用/启用特定数据流的命令,但没有针对它的 SQL 查询 - 或者是否可以运行 SQL 查询来禁用/启用特定数据流?

【问题讨论】:

    标签: ssis package ssis-2012


    【解决方案1】:

    这是 SSIS 的方式,很抱歉,但它涉及“特殊控制流逻辑”,因为没有其他方式:

    1. 在您的 SSIS 包中添加包级变量。

    2. 将脚本任务添加到 SSIS 包的控制流。脚本不需要做任何事情。将其视为“起始锚”。这将是在你的包中执行的第一件事。

    3. 将脚本任务中的单独优先级约束(链接任务的小箭头)添加到您的两个数据流中。

    4. 双击每个优先约束并将它们设置为使用表达式进行验证。使用您创建的变量,如果变量设置为“DataFlowA”,则将其中一个路径设置为真,如果设置为“DataFlowB”,则将另一个路径设置为真。

    5. 在作业中,将变量的值设置为您要执行的数据流的适当值。

    这就是答案。很抱歉,这不是您所希望的,而是这些问题的答案:

    Job 中的 SQL 命令是什么来仅触发 DataFlow1 请? 是否可以运行 SQL 查询来禁用/启用特定的 数据流?

    分别是,

    没有这样的命令。
    不,不可能以编程方式启用和禁用任务。

    【讨论】:

      猜你喜欢
      • 2018-04-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多