SQLServer2000データベースをSQLServer2008R2にアップグレードしています。データキャプチャの変更機能を利用したい。私の既存のアプリケーションでは同様の機能がありHst_
ますが、元のテーブルとほぼ同様のスキーマを持つプレフィックス付きのトリガーと履歴テーブルを使用しています。
私の質問は、データをHst_
テーブルからCDC機能で使用されるテーブルに移行する方法はありますか?
私はこのようにすることを考えていました:
- 私はテーブルを持っています
Cases
。 - カスタムの履歴メカニズムを使用しているので、3つのトリガー(挿入、更新、削除)とツインテーブルもあります
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
(私はそれぞれの2つの行を比較する必要があります)。
それを行う唯一の方法はありますか?この状況を避けたいので、「新しい」履歴データをHst_
テーブルの「古い」履歴データと結合します。
ありがとう!