27,579
社区成员
发帖
与我相关
我的任务
分享
CREATE TRIGGER tr_test ON a
FOR INSERT, UPDATE
AS
IF NOT EXISTS(
SELECT 1
FROM DELETED
)
OR
UPDATE (xingming) OR UPDATE (bianhao)
--以下考虑ID自增,如果ID非自增列,则加上ID字段。
INSERT b( xingming, bianhao, zuoyeliang )
SELECT xingming, bianhao, zuoyeliang
FROM INSERTED i
WHERE NOT EXISTS(
SELECT 1
FROM b
WHERE id = i.id
AND CHECKSUM(bianhao, zuoyeliang) = CHECKSUM(i.bianhao, i.zuoyeliang)
)
IF UPDATE (zuoyeliang)
UPDATE b
SET b.zuoyeliang = i.zuoyeliang
FROM INSERTED i
WHERE b.id = i.id
GO
try againCREATE TRIGGER tr_test ON a
FOR INSERT, UPDATE
AS
IF NOT EXISTS(
SELECT 1
FROM DELETED
)
OR
UPDATE (xingming) OR UPDATE (bianhao)
--以下考虑ID自增,如果ID非自增列,则加上ID字段。
INSERT b( xingming, bianhao, zuoyeliang )
SELECT xingming, bianhao, zuoyeliang
FROM INSERTED
IF UPDATE (zuoyeliang)
UPDATE b
SET b.zuoyeliang = i.zuoyeliang
FROM INSERTED i
WHERE b.id = i.id
GO