【问题标题】:How to determine row count in SSIS dataset如何确定 SSIS 数据集中的行数
【发布时间】:2010-02-22 15:21:28
【问题描述】:

我经常在 SSIS 包中遇到一种情况,我运行 SQL 命令以从 ADO 连接返回一组行。在某些情况下,我想根据返回的行数进行分支。 ado 结果集存储在 SSIS“对象”数据类型中。 SSIS 表达式或脚本组件中有没有办法获取该行数?

【问题讨论】:

    标签: ssis ado


    【解决方案1】:

    不要使用 Execute Sql 任务,而是使用这样的数据流任务。

    1. 使用源组件检索数据
    2. 使用行计数组件将行计数存储到变量中
    3. 使用记录集目标组件并将其存储在原始变量(system.object 类型)中

    然后返回控制流并按照您的计划继续,使用 rowcount 变量来分支您的控制流。

    【讨论】:

    • 这是一个很好的答案,也是我学习数据流任务的一个很好的起点。 3 年后非常感谢!
    • 很高兴听到这个消息!谢谢@MattAkers
    【解决方案2】:

    您可以在执行 SQL 任务之后为对象数据类型变量创建一个优先约束,@[User::objectvariable]>0 作为优先约束中的表达式。但是在执行 SQL 任务中,您将获得对象变量的结果集。

    【讨论】:

    • @Nanda 在发布之前尝试测试您的答案,您会看到错误。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-31
    • 2020-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-08
    相关资源
    最近更新 更多