Create TRIGGER [dbo].[tr_TableA_FieldA]
ON [dbo].[TableA]
FOR UPDATE
AS
begin
if update(FieldA)
begin
insert into ChangeLog(EF_Type,EF_Context,ef_pguid)
select 1, FieldA, AGuid
-- inserted 表示新值
-- deleted 表示旧值
from deleted
-- 当旧值不为空
WHERE len(FieldA)>0
end
end
当 TableA 的 FieldA 字段改变时,将其旧值插入到 ChangeLog 中。