在 source/staging table 中找不到时更新目标行

update rows at target when not found in the source/staging table

我有一个流程,其中登台 table 每天都满载活跃客户。如果在目标 table 找到客户但在暂存 table 中不存在,则意味着 he/she 现在处于非活动状态,我必须更新目标 table 设置状态字段为 0.

使用 sql 任务很容易做到这一点。我想知道是否有更好的方法使用 ssis 任务并且没有 sql 代码。

不,最好的方法是使用 SQL 任务。 SSIS 不提供任何性能更好或更容易为此目的开发的东西。

使用 sql 命令更新状态字段的方法有两种:

  1. 如果要在数据流内更新,可以使用"OLE DB Command"

  2. 如果你想在控制流中更新它,你可以使用"Execute SQL Task"

注意:如果您想使用 "Execute SQL Task",您可能需要创建用户变量来传递最后一个控制流步骤的值。您不需要在数据流中使用 "OLE DB Command" 的用户变量。