2009-04-15 89 views
0

我在我的源數據庫中有一張表,它是自引用的SSIS - 父母的查找代理鍵

| BusinessID | ... | ParentID |

此表在DW中模擬爲 | SurrogateID | BusinessID | ParentID |

第一個問題是,如果DW中的ParentID引用代理ID或業務ID。我的想法是它應該引用代理ID。

然後我的問題發生在我的SSIS數據流任務中,如何查找父代的代理鍵?

如果我插入ParentID爲空的所有行,然後是非空的我解決了部分問題。

但我仍然需要查找可能引用父母也是孩子的行。

I.e.我必須確保父母首先加載到數據庫中才能使用查找轉換。

我必須解決一個for-each與排序的輸入?

+0

可能重複的[如何建立自引用表](http://stackoverflow.com/questions/11834672/how-to-build-self-referencing-table) – AHiggins 2015-01-12 15:52:07

回答

1

我在這種情況下使用的一個技巧是加載沒有ParentID的行。然後,我使用另一個數據流根據源數據和加載的數據創建更新腳本,然後使用SQL任務運行創建的更新腳本。它不會爲優雅贏得獎品,但它確實有效。

+0

工作完美,謝謝! – 2009-04-15 19:46:46