update某条记录,在触发器中,如何获取某条记录更新前的值和更新后的值?

mw515 2006-02-23 02:13:32
update某条记录,在触发器中,如何获取某条记录更新前的值和更新后的值?并将它们保存到一个新表中(格式为:字段,原值,新值)
...全文
220 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
mw515 2006-02-23
  • 打赏
  • 举报
回复
那如果有多个字段,又该如何处理呢?
d_qh 2006-02-23
  • 打赏
  • 举报
回复
Update时,先Delete,再Insert

declare @Old varchar(50),@New varchar(50)
select @Old=字段名 from deleted
select @New=字段名 from inserted
insert into 表名(字段,原值,新值) values(字段值,@Old,@New)

dulei115 2006-02-23
  • 打赏
  • 举报
回复
deleted 和 inserted 是逻辑(概念)表。这些表在结构上类似于定义触发器的表(也就是在其中尝试用户操作的表);这些表用于保存用户操作可能更改的行的旧值或新值

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧