使用条件拆分从目标中删除已从源SSIS中删除的行

时间:2018-03-28 14:43:08

标签: sql-server ssis data-warehouse

我正在构建一个SSIS包,根据当然的来源,从目的地更新,插入和删除行。 插入和更新工作正常,但我无法从目标中删除已从源中删除的记录,如下图所示,我正在使用Excel文件和SQL服务器目标表进行测试。 我不知道为了从目标中删除旧记录,我必须为条件拆分对象添加什么。 如果您注意到必须从目标中删除的记录在数据库记录图像中突出显示。 下面整个过程的图片一步一步:

ETL IMAGE

Excel Source

Conditional Split

Lookup

OLE DB Command object for remove rows

Excel Records

Database records

ETL Running

1 个答案:

答案 0 :(得分:2)

解: ASEzequielLópezPetrucci在评论中解释说,我只需将我的目标表添加为另一个OLE DB源,然后对表进行排序然后合并加入两个表(Full Outer Join)以便比较记录,最后我改变了条件对于条件性拆分转换。 图像在下面逐步解释。

ETL Solution Runing

Source A

Both Sort

Merge Join

ConditionalSplitCondition

OLE DB Command to Delete unnecessary rows