【发布时间】:2017-03-14 20:54:05
【问题描述】:
编辑:我正在开发 SQL Server 2012
我正在开展一个项目,其中表中的两列需要在更新时记录它们的数据。因此,为了让它工作,当有人决定更新地址或邮政编码并保存时,审计表需要记录列中的先前值 before更新。
我已经开始设置一个审核表来保存所需的数据
CREATE TABLE Customer_Audit
(
Cust_UpdateID int IDENTITY (1,1),
Cust_User char (8),
Cust_Update_Date date,
Cust_ID int,
CustomerAddresss nvarchar (255),
CustomerZipCode nvarchar (255),
CONSTRAINT [pk_Cust_UpdateID] PRIMARY KEY (Cust_UpdateID)
)
我面临的唯一问题是建立一个实际的触发器查询来用客户表中的所需数据填充审计表。有人告诉我 AFTER UPDATE 触发器是理想的,但我不知道如何正确设置它并获取我需要的数据并填充审计表本身。
有人可以向我推荐并告诉我如何设置可以执行我想做的事情的触发器吗?
【问题讨论】:
-
用您正在使用的数据库标记您的问题(根据语法可能是 SQL Server)。
-
您的原始表是否包含相同的列
Cust_ID、CustomerAddress和CustomerZipCode?你原来的表的名字是Customer吗? -
原始表包含这 3 列,是的,它被称为 Customer
-
这是我见过的最好的解决方案,适合您尝试做的所有事情:Quick And Easy Audit Tables - Dave Britten
标签: sql sql-server sql-server-2012