私はcdcを試していますが、私はこれらの手順に従っていました。関数sys.fn_cdc_get_max_lsn()がnullを返します
EXEC sys.sp_cdc_enable_db
-DECLARE @Begin_LSN BINARY(10), @End_LSN BINARY(10) SET @Begin_LSN =sys.fn_cdc_get_min_lsn('DW_APIprocess') SET @End_LSN = sys.fn_cdc_get_max_lsn() SELECT @Begin_LSN, @End_LSN, N'all'; SELECT * FROM cdc.fn_cdc_get_all_changes_DW_APIprocess( @Begin_LSN , @End_LSN , 'all')
呼ばテーブルにDBEXEC sys.sp_cdc_enable_table @source_schema = N'DW', @source_name = N'APIprocess', @role_name = NULL, @supports_net_changes = 0
--enableテーブル挿入および更新を有効にする - 変更を取得してください
そして、私が4番目のステップを実行すると、このエラーがスローされます:
An insufficient number of arguments were supplied for the procedure or function cdc.fn_cdc_get_all_changes_
私は答えを探しましたが、答えは見つかったものの、sys.fn_cdc_get_max_lsn()関数がnullを返すため問題が発生しなかったので、それは私の問題です。 要約すると、なぜその関数がバイナリの代わりにnullを返すのか分かります。おかげさまで