关于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:在审计追踪中流行


推荐阅读

    linux命令换行后修改?

    linux命令换行后修改?,服务,系统,本行,代码,环境,工作,命令,文件,终端,字符,

    linux命令创建用户组?

    linux命令创建用户组?,系统,代码,密码,用户组,用户,命令,信息,名称,新增,管

    linux修改端口号命令?

    linux修改端口号命令?,代码,服务,系统,端口,工作,邮箱,文件,编辑,命令,后果,

    linux修改锁屏命令?

    linux修改锁屏命令?,时间,系统,密码,名称,软件,电脑,工具,命令,终端,快捷键,l

    linux修改时钟命令?

    linux修改时钟命令?,时间,系统,大陆,国家,时区,命令,信息,终端,时钟,日期,lin

    查看linux用户命令行?

    查看linux用户命令行?,信息,系统,时间,名称,密码,用户,命令,地址,状态,设备,L

    linux所有用户命令行?

    linux所有用户命令行?,系统,信息,地址,工作,密码,命令,用户,时间,电脑,管理,L

    linux用户下的命令是?

    linux用户下的命令是?,系统,工作,管理,地址,命令,密码,基础,信息,目录,新增,L

    linux命令大全数据库?

    linux命令大全数据库?,服务,系统,平台,状态,软件,通用,环境,数据,神州,地址,

    linux上数据库的命令?

    linux上数据库的命令?,服务,系统,信息,地址,命令,密码,工具,管理,数据,单位,

    linux命令dm数据库?

    linux命令dm数据库?,地址,软件,时间,设备,名字,服务,位置,名称,公司,命令,lin

    linux关机用户命令?

    linux关机用户命令?,系统,工作,信息,状态,管理,命令,基础,目录,用户,功能,lin

    linux命令ip修改?

    linux命令ip修改?,地址,系统,代码,密码,网络,信息,服务,设备,工具,命令,linux

    linux看用户信息命令?

    linux看用户信息命令?,系统,密码,信息,状态,软件,情况,命令,用户,网络,时间,l

    linux下删除用户命令?

    linux下删除用户命令?,系统,代码,邮箱,用户组,命令,用户,名称,管理,电脑,账

    用户id的linux命令?

    用户id的linux命令?,系统,密码,信息,联系方式,地址,位置,用户,命令,用户名,

    linux删除用户组命令?

    linux删除用户组命令?,管理,系统,密码,电脑,名称,用户,用户组,名字,信息,工

    修改linux命令的软件?

    修改linux命令的软件?,系统,软件,代码,图片,平台,密码,服务,标准,地址,发展,l

    linux修改命令保存?

    linux修改命令保存?,状态,系统,电脑,文件,命令,终端,编辑,模式,路径,内容,lin

    linux数据库查找命令?

    linux数据库查找命令?,位置,名称,状态,服务,软件,信息,系统,命令,名字,密码,