如何从sql数据库中提取数据时从目标表中删除额外的记录?

时间:2012-06-21 13:32:17

标签: ssis

我必须将数据从SQL数据库表提取到我的DB2表。如果记录已经存在UPDATE,则对于新记录INSERT,对于目标表中的额外记录,删除那些额外记录。目标表看起来与源表完全相同。对于INSERT / UPDATE,我没问题,如何从dest表中进行DELETE?

2 个答案:

答案 0 :(得分:1)

如果你想要的只是源表的副本......那么首先要避免复杂性并完全删除目标 - 然后一切都只是插入。

答案 1 :(得分:1)

DB2有一个MERGE命令。这允许您根据您定义的条件编写单个SQL语句来执行INSERT,UPDATE和DELETE。这是一种非常干净的方式。

所以你要做的是在你的SSIS包中添加一个“Execute SQL Task”元素,并将DB2 merge语句添加到任务中。

请参阅此链接(在底部是示例) - http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=%2Fcom.ibm.db2.udb.admin.doc%2Fdoc%2Fr0010873.htm