1

我的源表和目标表位于不同的服务器上,并且它们具有相同的架构。我需要以某种方式合并它们,如果某些记录只存在于目标中并且不存在于源中,那么它应该从目标中删除。我如何在 SSIS 中实现这一点。

4

1 回答 1

0

尝试这个 :

1.在对话框中拖动Oledb command并指定连接。connection Manager

2.在组件属性中写sql命令删除行

 Delete from yourTable
 where id = ? 

3.在列映射选项卡映射?中,输入列ID来自上一个组件

Update 2: 在 Oledb 源之后使用查找。配置查找

第一步:选择缓存模式。一般行数少的话选择full Cache

第 2 步:指定Redirect rows to no match output

第 3 步:指定连接并编写查询以从目标表中获取 Id(或连接列)

 Select ID from Destination

第 4 步:使用目标表中的 ID 对源源进行 Macth,ID然后选择IdRHS 中列的复选框。

第 5 步:按照之前编写的步骤Update进行配置以删除行。确保在映射组件时从not 中oledb command选择 IDLookupSourceOLEDB command

于 2013-04-25T14:25:29.637 回答