继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

SQL Server触发器Trigger

慕勒551688
关注TA
已关注
手记 250
粉丝 39
获赞 133

前段时间,曾经写过一个例子,http://www.cnblogs.com/insus/articles/1916558.html是使用OUTPUT来记录更新前后的值,

现在可以使用SQL Server的触发器来实现。

演示,

代码

--创建一个UPDATE触发器
CREATE TRIGGER [dbo].[tri_Member_Udate] ON [dbo].[Member]
FOR UPDATE
AS
BEGIN
    --宣告变量
    DECLARE @MemberId [int],@Name [nvarchar](100) ,@OldSalery [decimal](18, 6),@newSalery [decimal](18, 6)
    --从deleted虚拟表取到旧值
    SELECT  @MemberId = [MemberId],@Name = [Name],@OldSalery = [Salary] FROM  deleted
    --从inserted虚拟表取到新值
    SELECT @newSalery = [Salary] FROM inserted    
    --插入到目标表(临时表)中
    INSERT INTO [dbo].[#SalaryReport] VALUES (@MemberId,@Name,@OldSalery,@newSalery)
END

 

 

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP