当前位置: 代码迷 >> Sql Server >> SQL表的类似触发器有关问题
  详细解决方案

SQL表的类似触发器有关问题

热度:81   发布时间:2016-04-27 12:18:25.0
SQL表的类似触发器问题
表A
列:a(关键字),b,c,d,e,f

表B
列:a(关键字),c,d,f

要求在表A修改、删除、插入的时候,表B跟着变化修改删除或插入

说白了,就是一模一样,但是表B操作的时候不影响表A

求 SQL 2000 个人版 的代码

------解决方案--------------------
CREATE TRIGGER TRI_A_B_IDU ON A
FOR INSERT,DELETE,UPDATE
AS
BEGIN
DELETE B FROM B WHERE EXISTS(SELECT 1 FROM DELETED D WHERE D.A=B.A)
UPDATE B SET C=I.C,D=I.D,F=I.F FROM B,INSERTED I WHERE B.A=I.A
INSERT B SELECT A,C,D,F 
FROM INSERTED I WHERE NOT EXISTS(SELECT 1 FROM B WHERE I.A=B.A)
END
  相关解决方案