我的一张表有long数据类型,建触发器时就提示:触发器中,不能引用有 long 类型的列。
我要做的是,要在这张表上建个触发器,当这张表插入数据时,把信息插入到另外一张表里。
但 long 类型的信息不用插入
怎么建触发器呢,是不是触发器可以指定某个字段的。
100分,问题解决,马上结贴

解决方案 »

  1.   

    CREATE   OR   REPLACE   TRIGGER   TR_TEST   
    BEFORE   INSERT   OR   UPDATE   ON   TB   
    FOR     EACH   ROW   
    BEGIN   
    IF   :NEW.COL1<>:OLD.COL1   THEN   
    ...;   
    END   IF;   END;   
    /
      

  2.   

    不引用LONG类型的数据就不会妨碍触发器调用--分别建立2个表
    CREATE TABLE T_TRIGER (ID NUMBER,TVALUE LONG);
    CREATE TABLE T_TRIGER1(ID NUMBER );
    --创建触发器
    CREATE OR REPLACE TRIGGER TRI_TEST BEFORE INSERT ON T_TRIGER 
    FOR EACH ROW
    BEGIN
    INSERT INTO T_TRIGER1 VALUES(:NEW.ID);
    END;
    --插入测试
    INSERT INTO T_TRIGER VALUES(2,'AAA')