CDC が有効になっている DB があります。たとえば、単純な顧客テーブルを見てみましょう。
dbo.顧客
このテーブルで cdc を有効にすると、以下が得られます。
cdc.Customer_CT
SQL Server エージェントはキャプチャ ジョブとクリーンアップ ジョブを実行し、パラメーターを設定できます。
sys.sp_cdc_cleanup_change_table
[ @capture_instance = ] 'capture_instance',
[ @low_water_mark = ] low_water_mark ,
[ @threshold = ]'delete threshold'
ただし、_CT 内に少量のデータのみを保持し、残りはアクセス頻度の低い履歴テーブルに移動したいと考えています。
つまり、以下も必要になります。
cdc.Customer_CT_History
CDC クリーンアップ ジョブを構成して、cdc.Customer_CT からレコードを削除し、cdc.Customer_CT_Historyに挿入する方法に興味があります。
これが履歴データを保存するための最善の方法ではないことは理解していますが、私の質問とこれを達成する方法を試してみてください. ありがとう!