--目的:在表member中插入任一条记录,表member2中将自动增加此笔记录IF EXISTS (SELECT name FROM sysobjects WHERE name = 'TR_INSERT_MEMBER' AND type = 'TR')
   DROP TRIGGER TR_INSERT_MEMBER
GO
CREATE TRIGGER TR_INSERT_MEMBER
ON member
AFTER INSERT
AS
   IF NOT EXISTS(SELECT Code FROM member WHERE Code=(SELECT TOP 1 Code FROM inserted))
INSERT member2(Code,MemberType) SELECT Code,'M' FROM inserted
GO

解决方案 »

  1.   

    CREATE TRIGGER TR_INSERT_MEMBER
    ON member
    AFTER INSERT
    AS INSERT member2(Code,MemberType) SELECT Code,'M' 
     FROM INSERTED AS i
     WHERE NOT EXISTS(SELECT 1 FROM member2 WHERE Code=i.Code AND MemberType='M')
    INSERT member2(Code,MemberType) SELECT Code,'M' FROM inserted
    GO
      

  2.   

    IF NOT EXISTS(SELECT Code FROM member WHERE Code=(SELECT TOP 1 Code FROM inserted))
    ------
    這句判斷永遠都不成立,觸發器是在member上的,所以沒有用
    按以上方法改