请原谅。我非常拼命地想要如何雄辩地提出这个问题。在这里做得不好。
在SSIS中,如果您有一个传入数据集,该数据集具有相同PK的多个记录(如日常处理方法中的日内记录),如何告诉SCD向导预期?
在我的情况下,即使我的所有字段都设置为“历史”,它们都显示为新的,因为它们都是同时进入的。
Example data:
BK, insertion depth, drill depth, bore depth
1, 1000, 1020, 1022
1, 1025, 1222, 1233
1, 1100, 1321, 1333
2, 1233, 1255, 1022
2, 2222, 3333, 3333
3, 1010, 900, 885
我在一份报告中得到了这个。它们都显示为基本负载的新功能。我有一个create_dt和end_dt作为我的开始和停止时间戳。 create_dt具有变量的system :: startdate。如何让SSIS中的SCD阶段识别这些,并根据需要添加时间戳,无论目标表中的记录是否已具有该PK?
谢谢。
更新#1:PK意味着BK。 PK是自动编号。
我暂时无法添加评论......
我想你在这里有一些误解。
这在SQL中比在SSIS中更容易处理。 SCD组件将在数据流启动之前将现有行加载到内存中。在评估行时,此记录集不会更新,因此如果您看到同一个businesskey的两条记录,它们将以相同的方式处理。
一种性能更好,更易于理解和维护的方法如下: