SSIS根据另一个查询的结果过滤ADO .NET源查询

时间:2020-02-24 16:44:57

标签: sql-server ssis etl ado ssis-2017

这里是SSIS的新手,因此,如果您有帮助,请在回答中添加尽可能多的细节:)

我的目标是能够根据目标数据库中表中已有的值对ado.net源进行参数化。

我已经设法使用变量中的硬编码值来测试第一部分的功能,但是显然我需要使此流程动态化(基于查找表中现有的内容)。

这是到目前为止我所采取步骤的一些细节。

  • 我的一个程序包中有一个数据流任务,在这个程序包中,我的ado净源已连接到查找而与ole db目标不匹配。
  • 我已经设置了一个包级变量(带有硬编码值)
  • 单击数据流任务后,我将源查询放置在ADO NET Source.SqlCommand表达式中,其中where子句中带有变量。如下所示。

    "SELECT
     columm1
    ,columm2
    ,columm3
    ,columm4
    
    FROM
    table_a
    
    WHERE
    columm1 in ='"+ @[User::varibable1] +"'
    
    ORDER BY 
    columm3
    ,columm4"
    

我运行程序包,仅返回变量名中具有值名称的记录。完善!正是我所需要的。

现在第二部分... 我需要ado.net源代码才能从另一个应该先运行的查询中接收值。 因此,以某种方式,我可能需要另一个将值传递到ado.net源变量的变量中的任务,但我不确定该如何处理。

如果您需要更多信息,请告诉我。

非常感谢您的帮助!

谢谢 OluwaT

我使用SSDT版本15.9.16

0 个答案:

没有答案