Sql server fn_cdc_map_lsn_to_time在某些情况下返回NULL

Sql server fn_cdc_map_lsn_to_time在某些情况下返回NULL,sql-server,cdc,Sql Server,Cdc,我试图在sql数据库中使用CDC,我使用存储过程将数据从临时CDC表移动到新表。我还移动了开始标记。在新表中,我尝试使用fn_cdc_map_lsn_to_time将lsn映射到时间,对于某些记录,它返回null,对于其他记录,它返回正确的时间,这是一个示例: NULL 0x000034D5000002F80001 2014-01-16 00:38:39.377 0x0000350F000006D70001 NULL

我试图在sql数据库中使用CDC,我使用存储过程将数据从临时CDC表移动到新表。我还移动了开始标记。在新表中,我尝试使用fn_cdc_map_lsn_to_time将lsn映射到时间,对于某些记录,它返回null,对于其他记录,它返回正确的时间,这是一个示例:

NULL                    0x000034D5000002F80001
2014-01-16 00:38:39.377 0x0000350F000006D70001

NULL                    0x00003513000003BA0001  2   0x3FFFFF
2014-01-18 02:00:05.320 0x0000351E000009FA0001  2   0x3FFFFF
有什么解释吗


谢谢

我找到了答案,我只想把它添加到记录中

这里的问题是,我将记录从CDC表移动到自己的表中,以防止它们被删除

fn_cdc_map_lsn_to_time使用系统表将lsn从cdc表映射到时间戳。一段时间后,这些记录将被删除,这就是为什么一些记录会正确映射到时间,因为它们是最近添加的

但旧的未映射,因为它们已被删除