sql server触发器保存所有用户的操作

时间:2012-02-03 15:40:07

标签: sql sql-server triggers logging

我想在ms sql server中创建一个触发器,它保存了我的数据库中的每个插入,更新或删除,以及哪个用户进行了更改。像日志文件或完全是一个日志文件。 到目前为止我所做的是:

CREATE  TRIGGER Log_Creators_Modifiers ON Quotation
FOR INSERT,UPDATE AS 

  DECLARE
     @ChangeType NVARCHAR
  BEGIN
  /* 'created' for an INSERT, 'Delete' for DELETE, and 'modified' for UPDATE. */
  IF INSERT()
    BEGIN
        SET @ChangeType ='CREATED';
    END

  ELSE IF UPDATE()
    BEGIN
        SET @ChangeType = 'MODIFIED';
    END

  ELSE IF DELETE()
    BEGIN
        SET @ChangeType = 'DELETE';
    END

 END

有任何帮助吗?

1 个答案:

答案 0 :(得分:0)

并不是那么容易,但是就像有人在那里找到你并为你工作一样

Audit triggers

这对你有帮助吗

或者也许这个好人甚至动态地完成了脚本以将审计添加到所有表

More triggers

我不会自己写这个 - 只是复制那里已有的