【问题标题】:How to delete extra records from my destination table while pulling the data from sql database?如何从我的目标表中删除额外的记录,同时从 sql 数据库中提取数据?
【发布时间】:2012-06-22 05:31:04
【问题描述】:

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

【问题讨论】:

    标签: ssis


    【解决方案1】:

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

    因此,您要做的是将“执行 SQL 任务”元素添加到 SSIS 包,并将 DB2 合并语句添加到任务中。

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

    【讨论】:

    • 没问题,如果我的建议最终对您有用,请“标记为答案”。并且不介意回来问后续问题:)
    【解决方案2】:

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

    【讨论】:

    • 感谢兰迪的快速回复。这是情况。我无法删除目标。我只需要通过 SSIS 来完成。我有一种情况,当 PK.column=4; 时我必须提取数据;总之,我必须填充 2 个表。
    猜你喜欢
    • 1970-01-01
    • 2013-04-30
    • 2023-03-25
    • 1970-01-01
    • 2023-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多