【发布时间】:2017-01-17 07:48:09
【问题描述】:
是 CDC 的新手。是否可以在 SQL Server 2012 中为特定的 DML 操作启用更改数据捕获?我知道默认情况下它启用插入、删除和更新。如果我只想启用更新,那么我该如何实现呢?
另外请告诉我,CDC 与触发器相比如何更好?
【问题讨论】:
标签: sql sql-server-2012 change-data-capture
是 CDC 的新手。是否可以在 SQL Server 2012 中为特定的 DML 操作启用更改数据捕获?我知道默认情况下它启用插入、删除和更新。如果我只想启用更新,那么我该如何实现呢?
另外请告诉我,CDC 与触发器相比如何更好?
【问题讨论】:
标签: sql sql-server-2012 change-data-capture
基本上,您不能在源头上拆分操作,但之后您可以只提取您想要的操作。
您将为 CDC 启用该表并指定您需要管理的列。 输出表是 cdc.{Instancename}_CT,您可以从中仅提取具有操作 3 和 4 的行,这些行与 before_update (3) 和 after_update(4) 相关。
如果您只对任何给定表格行的结果值感兴趣,您应该使用 net_changes。
【讨论】: