1

这是一个简单的 SCD,具有可用的类型 2(历史性)更改。

在图像中,当一行被更新时,存在两个不同的行,一个沿着“新输出”路径行进,一个沿着“历史属性插入输出”行进。

沿着“历史属性插入输出”的路径,“派生列”添加一列(或替换列信息),以便可以将 RowisCurrent(例如)更改为 False。

在“新输出”路径下,该行在“派生列 1”处选取“真”的 RowisCurrent 状态。

我不明白“联合所有”的目的是什么。为什么“OLE DB 命令”和 Union All 之间有联系?

如果过期的行在“OLE DB 命令”处更新,则正在传递的内容,并且不会在将“派生列 1”处的 RowisCurrent 设置为“True”之前将其写入数据库“插入目的地”?

在此处输入图像描述

4

1 回答 1

0

我想这就是答案。

沿着“新输出”路径前进的记录是具有目标表中不存在的新业务键的记录。

沿着“历史属性插入输出”路径向下的记录是业务键存在于目标表中的记录,我们现在必须将现有记录的当前标志指示符更新为旧记录,然后插入具有当前标志指示符的新记录的真实。

于 2016-02-09T06:11:16.107 回答