关于sql server:DB Audit Trail的最佳实现是什么?

关于sql server:DB Audit Trail的最佳实现是什么?

What is the best implementation for DB Audit Trail?

数据库审核跟踪将捕获用户的上次修改时间,修改日期和创建日期。

有几种可能的实现:

  • SQL Server触发器
  • 将UserModified,ModifiedDate,CreatedDate列添加到数据库,并在存储过程或Insert,Update语句中相应地包含逻辑。

如果您在回答中包括实现(或链接到),那将是很好的。


根据您的操作,您可能希望将审计从数据层移到数据访问层。 它给您更多的控制权。

我在这里问了一个类似的问题,关于NHibernate和SqlServer。


+2用于在DAL中实施何时/如何进行审核。

至于审核条目本身应位于何处,取决于它如何显示。 如果用户可以查看单独的"审计跟踪报告",我将做一个单独的表,但是如果您想内联显示上次修改类型的审计,则可以标记现有表。


我完全获得第二名@IainMH(并投票支持他)。

您希望将其包含在DAL中,并理想地与某种方面/拦截器/代码注入机制相关联。


这是我用来审计表的实现:
Pop Rivett的SQL Server常见问题解答5:在审计追踪中流行


推荐阅读