SQL server触发器中 update insert delete 分别给写个例子被

Posted 【麦麦提敏】

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL server触发器中 update insert delete 分别给写个例子被相关的知识,希望对你有一定的参考价值。

INSERT:

 表1 (ID,NAME)
 表2 (ID,NAME)
 当用户插入表1数据后,表2也被插入相同的数据

CREATE TRIGGER TRI1
ON 表1
FOR INSERT
AS
BEGIN 
    INSERT INTO 表2 SELECT * FROM INSERTED
END
GO

 

DELETE:

表1 (ID,NAME)
表2 (ID,AGE,GENDER)
当用户删除表1某条ID的数据后,表2相应ID的数据也被删除

CREATE TRIGGER TRI2 ON 表1
FOR DELETE
AS
BEGIN 
    DECLARE @id INT
    SELECT @id FROM DELETED   
    
    DELETE 表2 
    WHERE ID = @id

END

GO

 

UPDATE:

表1 (ID,NAME)
表2 (ID,NAME)
当用户更改表1 NAME列数据后,表2相应ID的数据也同时更新

CREATE TRIGGER TRI3
ON 表1
FOR UPDATE
AS
IF UPDATE(NAME)
BEGIN
    UPDATE 表2
    SET A.NAME =  B.NAME
    FROM 表2 A, INSERTED B
    WHERE A.ID = B.ID
END
GO

 

以上是关于SQL server触发器中 update insert delete 分别给写个例子被的主要内容,如果未能解决你的问题,请参考以下文章

SQL server 如何调试触发器!

深入理解SQL Server 2005 中的 COLUMNS_UPDATED函数

如何使用 sql server 执行 BEFORE UPDATED 触发器?

SQL Server 2005 触发器 - 如何安全地确定是由 UPDATE 还是 DELETE 触发?

在Sql Server触发器中判断操作是Insert还是Update还是Delete

SQL server触发器中 update insert delete 分别给写个例子被