需求如下:
将A表的字段1数据更新成2时,将更新的这条记录插入到B表(如果B表己存在,则删除后再插入,不存在则直接插入)。
------解决思路----------------------
仔细想想,批量也兼容
------解决思路----------------------
-- 把 字段1 = 2 这个规则,写到 where 条件中,
--不然可能会有这样的问题,你更新了两条数据,但是这两条数据的字段1这列,一行 是2 ,一行不是2,该出问题了。
-- 以下语句大部分拷的是 1# ,我很懒。。
CREATE TRIGGER TRG_A_UPDATE
ON A
FOR UPDATE
AS
BEGIN
DELETE FROM B WHERE EXISTS(SELECT 1 FROM INSERTED C WHERE C.[主键]=B.[主键] and 字段1 = 2)
INSERT INTO B
SELECT * FROM INSERTED where 字段 1 = 2
END