在我的SQL Server 2012数据库中,有160个表上的260个触发器(每个150行),用于审核对3个用户表的数据更改。
使用内置的变更数据捕获选项对160个表使用160个审计表好吗?或者上面的方法正确吗?
发布于 2016-02-14 20:20:33
CDC的工作方式略有不同:它串行读取事务日志并填充历史表。因此,历史写入发生延迟,并且不会逗留原始DML事务。然而,CDC表是由您无法控制的方法控制的,例如,如果您想要附加一些未映射到原始表中的任何数据列的附加列-这将是一个挑战。
您描述的触发器或存储的procs执行相同的操作就足够好了。通常,它们是由代码生成方法生成的,不会使开发人员的生活复杂化。
另外,如果我没记错的话,您说您的160个表的历史存储在3个表中--这在CDC中也是不可能实现的。这显然既不是坏事也不是好事。
https://stackoverflow.com/questions/35111541
复制相似问题