Sql server SQL更改数据捕获获取所有表

Sql server SQL更改数据捕获获取所有表,sql-server,cdc,Sql Server,Cdc,我需要审核数据库中所有表中的数据。我使用SQL Server 2016。我为所有表启用了更改数据捕获 如何按时间顺序从所有表中获取更改?基本上,更改数据捕获在[cdc]模式中创建系统表,以捕获每个表的更改事件。类似于cdc.[TableSchemaName].[TableName]\u CT,此表将按时间顺序对实际表进行所有更改。它基本上是从DB的事务日志文件中读取的数据 另一点-您需要在任何时间点查询数据库的最大Lsn,以及要读取其更改数据的表的最小Lsn。最小和最大LSN之间的记录应提供表的

我需要审核数据库中所有表中的数据。我使用SQL Server 2016。我为所有表启用了更改数据捕获


如何按时间顺序从所有表中获取更改?

基本上,更改数据捕获在[cdc]模式中创建系统表,以捕获每个表的更改事件。类似于cdc.[TableSchemaName].[TableName]\u CT,此表将按时间顺序对实际表进行所有更改。它基本上是从DB的事务日志文件中读取的数据

另一点-您需要在任何时间点查询数据库的最大Lsn,以及要读取其更改数据的表的最小Lsn。最小和最大LSN之间的记录应提供表的总更改

参考链接如下:

基本上,变更数据捕获在[cdc]模式中创建系统表,以捕获每个表的变更事件。类似于cdc.[TableSchemaName].[TableName]\u CT,此表将按时间顺序对实际表进行所有更改。它基本上是从DB的事务日志文件中读取的数据

另一点-您需要在任何时间点查询数据库的最大Lsn,以及要读取其更改数据的表的最小Lsn。最小和最大LSN之间的记录应提供表的总更改

参考链接如下:

我可以在一次调用中查询所有CDC表吗?我有100多个表,所以我不希望UNION.CDC在默认情况下没有任何这样的过程/函数一起读取所有表数据。您将需要编写自定义SQL来实现它。我可以在一次调用中查询所有CDC表吗?我有100多个表,所以我不希望UNION.CDC在默认情况下没有任何这样的过程/函数一起读取所有表数据。您需要编写自定义SQL来实现这一点