【问题标题】:SSIS - Dataflow Destination Validation Before InsertSSIS - 插入前的数据流目标验证
【发布时间】:2021-04-29 09:33:23
【问题描述】:

我正在使用数据流在不同的数据库服务器之间发送数据,但我没有加入的服务器。 在将 OLE DB 源中的数据插入目标之前,我需要使用存储过程验证数据。请问有什么方法可以实现吗?

【问题讨论】:

  • 存储过程可用作 SSIS 数据流的源。因此,如果该过程可以驻留在源数据库中并且只需要来自源的数据,那么可以。
  • 谢谢 Cederved。该过程需要驻留在目标数据库中。

标签: ssis ssis-data-flow


【解决方案1】:

理论上这是可能的,但它使一切变得如此复杂。我更喜欢让我的 SSIS 包尽可能简单(以防有一天它们需要升级),并且在传输数据时始终有一个暂存区(极大地帮助排除故障!)。

在您的情况下,我将创建一个本地临时表并从源到该表进行 1 对 1 的数据传输(使用截断,因此您始终只有最新的可用负载)。它使您有机会在将数据插入主表之前检查数据的质量。如果包失败,它还可以让您更全面地了解加载过程。

【讨论】:

    【解决方案2】:

    在跨服务器数据传输中,最常见的模式之一是将未修改的源数据传输到目标数据库中的临时表,或者至少在目标服务器上,然后从那里使用它。我个人的偏好是在目标数据库中以不同的模式创建与源表具有相同名称和结构的表。比如src.

    如果您这样做,您可以针对本地副本运行数据验证,如果它通过验证,也可以从那里进行插入。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多