插入和更新的SSIS包

时间:2017-08-14 23:31:16

标签: sql ssis

SSIS包很新。需要针对以下数据流方案的解决方案。

在源数据库和目标数据库上都有两个相同的表。

来源表

ID     | Employee   
------ | ------
1      | Paul          
2      | Jane
3      | John

情景1

插入前的目的地表

ID     | Employee   
------ | ------
1      | Paul          
3      | John

插入后的目的地表

ID     | Employee   
------ | ------
1      | Paul          
2      | Jane
3      | John

场景2

更新前的目的地表

ID     | Employee   
------ | ------
1      | Paul          
2      | Kate
3      | John

插入后的目的地表

ID     | Employee   
------ | ------
1      | Paul          
2      | Jane
3      | John

2 个答案:

答案 0 :(得分:0)

问你问的是一个吵架的场景。您可以按照此link进行此类实施。

  1. 按顺序插入 - 这是不可能的。您无法在执行数据加载时重新排序数据。如果您仍然认为有必要,那么您需要选择的选项是截断数据并再次加载。
  2. 匹配时要更新的数据

答案 1 :(得分:0)

我建议你尽可能使用链接服务器。 SSIS并没有真正提供一种内置合并(也就是upserts)的方法。如果您使用链接服务器,则可以在查询中进行合并。如果使用SSIS,最简单的方法是将数据从源上传到目标上的新表,然后在查询中运行merge命令(执行SQL任务)。