2
我正在將SQL Server 2000數據庫升級到SQL Server 2008 R2。我想要使用更改數據捕獲功能。我現有的應用程序我有類似的功能,但我使用觸發器和歷史表與Hst_
前綴與原始表幾乎相似的架構。更改數據捕獲 - 歷史數據的初始加載
我的問題是:有沒有辦法將我的數據從Hst_
表遷移到CDC功能使用的表?
我想這樣做,像這樣的:
- 我有表
Cases
。 - 我使用我的自定義歷史機制,所以我也有三個觸發器(插入,更新和刪除)和一個雙表
Hst_Cases
。 - 現在我對錶啓用CDC
Cases
- CDC創建函數,該函數返回的歷史數據(
fn_cdc_get_all_changes_dbo_Cases
),也是一個系統表,其實際持有的數據(cdc.dbo_Cases_CT
)。 - 我可以插入數據從
Hst_Cases
到cdc.dbo_Cases_CT
,但我有以下問題:- 我不知道怎麼去
__$start_lsn
和__$seqval
。 - 很難弄清楚
__$update_mask
(我必須比較每兩行)。
- 我不知道怎麼去
是否有這樣做的唯一途徑?我想避免這種情況,然後我使用Hst_
表中的「舊」歷史數據加入「新」歷史數據。
謝謝!