在a表上建立触发器,当往a表中写入数据时,触动插入触发器,把数据写到b表中,并且b表中不存在该条记录
a表的结构d_code(主键),d_name,b表的结构d_code(主键),d_name该表中已经存在一部分数据,麻烦给位该触发器怎么写,非常感谢

解决方案 »

  1.   

    /* Formatted on 2011/11/22 10:54 (Formatter Plus v4.8.8) */
    CREATE OR REPLACE TRIGGER tri_a_i
       BEFORE INSERT
       ON a
       FOR EACH ROW
    DECLARE
       v_count   NUMBER;
    BEGIN
       SELECT COUNT (d_code)
         INTO v_count
         FROM b
        WHERE d_code = :NEW.d_code;   IF v_count = 0
       THEN
          INSERT INTO b
                      (d_code, d_name
                      )
               VALUES (:NEW.d_code, :NEW.d_name
                      );
       END IF;
    EXCEPTION
       WHEN OTHERS
       THEN
          NULL;
    END;