哪些表受变更数据捕获影响

Gre*_*reg 7 sql-server-2012 change-data-capture

我们正在考虑在 SQL 2012 中使用变更数据捕获。我们试图找出是否有一种简单的方法来找出给定 lsn 更改了哪些表。是否有内置函数,或者我们是否需要查询每个 cdc 表以查看 lsn 是否在其中?

更新更多地解释我们正在尝试做的事情:

我们正在尝试构建一个过程来查看数据库中所有表的 cdc 数据(想想 100 个)。此进程将按计划运行,并且会知道它处理的最后一个 lsn。当它运行时,我们想对自上次记录的 lsn 以来发生变化的每个 cdc 表做一些事情。

我们可以检查fn_cdc_get_all_changes_dbo_tablename(@lastlsn, @currentlsn, 'all'),但问题是我们必须运行它 100 次(每个表一次)。有我们可以检查的中心位置吗?

Gre*_*reg 0

正如问题中提到的,我们正在尝试查询多个 cdc 表并对所有表应用类似的过程。执行此操作的唯一方法是单独查询每个表(使用该fn_cdc_get_all_changes_dbo_tablename函数),没有中央位置来检查已更改的内容。