我想比较两个表,一个来自Access Mdb&一个SQL服务器表是SSIS。
目标是在存在差异时截断表并将其填充MDB源并在另一个表中更新版本。
我试图通过查找来完成它,但版本随行数增加而且应该是一次。
需要使用2个不同的表执行操作。
答案 0 :(得分:2)
即使我有10号,我怎么能只在更新后执行一次 匹配输出行?
SSIS提供OLEDB命令,用于在数据流中执行管道更新。但是,正如您在问题中暗示的那样,每行执行一次UPDATE命令。
执行批量级更新的更有效方法是:
在数据流之后添加执行SQL命令,该命令将执行从登台表到目标表的更新。即。
UPDATE T
SET T.Column1 = S.Column1
, T.Column2 = S.Column2
FROM MyTarget T
JOIN MySource S ON T.id = S.id
Control流程如下所示:
编辑:编辑步骤和图像以添加截断登台表的步骤。