首页 > 数据库技术 > 详细

创建SQL触发器

时间:2014-08-16 18:23:30      阅读:353      评论:0      收藏:0      [点我收藏+]

我们可以对某个数据表添加SQL触发器,当该表进行添加、更新、删除时执行某项操作。
不过SQL触发器如果能不用尽量不用,若在项目后期改动程序波及范围太大,使用SQL触发器可以避免,所以才使用。

数据表dbo.User(UserName, Password)

CREATE TRIGGER Trigger_User
    ON dbo.User
    FOR UPDATE, DELETE
AS
IF UPDATE(UserName)
    BEGIN
        DECLARE @userNameBeforeUpdate NVARCHAR(255)
        DECLARE @userNameAfterUpdate NVARCHAR(255)

        SELECT @userNameBeforeUpdate = UserName FROM DELETED
        SELECT @userNameAfterUpdate = UserName FROM INSERTED
    END
ELSE IF NOT EXISTS(SELECT * FROM INSERTED)
    BEGIN
        DECLARE @userName NVARCHAR(255)

        SELECT @userName = UserName FROM DELETED
    END

在数据表dbo.User上创建触发器Trigger_User,当更新与删除时触发(FOR UPDATE, DELETE)。
当更新时如果是更改UserName字段IF UPDATE(UserName),则执行...
如果是删除操作,也就是INSERTED不存在(NOT EXISTS(SELECT * FROM INSERTED)),则执行...

更新操作
    DELETED 更新前 
    INSERTED 更新后
删除操作
    DELETED 将被删除记录

创建SQL触发器,布布扣,bubuko.com

创建SQL触发器

原文:http://www.cnblogs.com/karsase/p/3916621.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!