2017-01-17 34 views
0

CDC新增功能。是否可以在SQL Server 2012中为特定的DML操作启用更改数据捕获?我知道它默认启用插入,删除和更新。如果我只想启用更新,那我该如何实现呢?为特定DML操作启用更改数据捕获(CDC)

也请让我知道,与触发器相比,CDC如何更好?

回答

1

基本上,您不能在源代码中分割操作,但是您可以仅提取之后需要的操作。

您将启用CDC表并指定您需要管理的列。 输出表格将是cdc {{Instancename} _CT,并且从中您将只提取那些与before_update(3)和after_update(4)相关的操作3 & 4。

如果您只对任何给定表格行的结果值感兴趣,则应该使用net_changes。

+0

对不起,我错过了问题的第二部分。 CDC超越触发器的简单优点是它们与DML操作是异步的。他们从日志中读取数据,而不是从表中读取数据,从而触发器会触发操作本身,因此,如果触发器中出现任何错误,通常会导致错误发生,并且需要回滚更改。 – LogicalMan

相关问题