使用条件拆分从目标中删除已从源 SSIS 中删除的行
Deleting rows from the destination that have been deleted from the source SSIS using Conditional Split
我正在构建一个 SSIS 包,当然可以根据源从目标更新、插入和删除行。
插入和更新工作正常,但我无法从目标中删除已从源中删除的记录,如下图所示,我正在使用 excel 文件和 SQL 服务器目的地 table。
我不知道为了从目标中删除旧记录我必须为条件拆分对象添加什么。
如果您注意到必须从目标中删除的记录会在数据库记录图像中突出显示。
下面是整个过程的逐步图片:
解决方案:
正如 Ezequiel López Petrucci 在评论中解释的那样,我只需要将我的目的地 table 添加为另一个 OLE DB 源,然后对 table 进行排序,然后合并加入两个 tables(完全外部连接) 为了对比记录,最后我更改了Conditional Split 转换的条件。
下面图片一步一步解释。
ETL Solution Runing
Source A
Both Sort
Merge Join
ConditionalSplitCondition
OLE DB Command to Delete unnecessary rows
我正在构建一个 SSIS 包,当然可以根据源从目标更新、插入和删除行。 插入和更新工作正常,但我无法从目标中删除已从源中删除的记录,如下图所示,我正在使用 excel 文件和 SQL 服务器目的地 table。 我不知道为了从目标中删除旧记录我必须为条件拆分对象添加什么。 如果您注意到必须从目标中删除的记录会在数据库记录图像中突出显示。 下面是整个过程的逐步图片:
解决方案: 正如 Ezequiel López Petrucci 在评论中解释的那样,我只需要将我的目的地 table 添加为另一个 OLE DB 源,然后对 table 进行排序,然后合并加入两个 tables(完全外部连接) 为了对比记录,最后我更改了Conditional Split 转换的条件。 下面图片一步一步解释。
ETL Solution Runing
Source A
Both Sort
Merge Join
ConditionalSplitCondition
OLE DB Command to Delete unnecessary rows