我正在尝试使用CDC,而我正在按照以下步骤操作。
EXEC sys.sp_cdc_enable_db -启用数据库 EXEC sys.sp_cdc_enable_table
@source_schema = N'DW',
@source_name = N'APIprocess',
@role_name = NULL,
@supports_net_changes = 0-启用表格在参照表中插入和更新
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') -尝试获取更改
当我执行第四步时抛出此错误:
为过程或函数cdc.fn_cdc_get_all_changes_提供的参数数量不足
然后我搜索了一个答案并找到了一些答案,但是由于函数sys.fn_cdc_get_max_lsn()返回null,因此没有出现任何问题,这就是我的问题。总之,我需要知道为什么该函数返回null而不是二进制。谢谢。