基本上我找的逻辑来生成触发字符串变量插入或更新语句。假设当人们刚刚更新一样update语句领域的“N” ......然后我的触发条件会,并从触发,我想建立什么更新语句是由用户和存储在字符串变量发出动态生成UPDATE语句INSERT/UPDATE内/ DELETE触发
以同样的方式,我想从触发器构建插入语句,但我没有得到逻辑。所以如果有人有任何想法或示例代码,那么请与我分享,以实现我的目标。
ALTER TRIGGER WSContent AFTER INSERT, UPDATE, DELETE
AS
SET NOCOUNT ON;
DECLARE @Action VARCHAR(10)
DECLARE @PKValue INT
DECLARE @TableName VARCHAR(50)
SET @TableName='website_content'
IF EXISTS(SELECT * FROM INSERTED)
BEGIN
IF EXISTS(SELECT * FROM DELETED)
BEGIN
SET @Action ='U';
SELECT @PKValue=ContentNumber from DELETED
END
ELSE
BEGIN
SET @Action ='I';
SELECT @PKValue=ContentNumber from INSERTED
END
END
ELSE
BEGIN
SET @Action = 'D';
SELECT @PKValue=ContentNumber from DELETED
END;
INSERT INTO [ContentChangeLog]([PkValue],[TableName],[Action],ActionDate)
VALUES(@PKValue,@TableName,@Action,GetDate())
SET NOCOUNT OFF;
良好的审计线索脚本http://stackoverflow.com/questions/15941881/sql-server-auto-audit-updated-column – Thomas 2014-09-08 14:54:48