后面的触发器的作用,首先是不管是在有数据插入SM_MO之前还是之后,触发它,然后拿SM_MO里的一个字段msgContent(变量) 和我定义好的变量做比较,如果一致了就把serviceId 和SrcTermID 都插入到事先定制好的新表里TB_NEW.....就是这个作用,因为之前的触发器是做了一个自增号

解决方案 »

  1.   

    create or replace trigger ss
      after insert on a  
      for each row
    declare
     ssss varchar2(200);
    begin
    select s# into ssss from sc where s#='1'; ---只要不从a表读就行
     insert into b(name)
     values(ssss);
    end ss;
      

  2.   

    create or replace trigger ss
      after insert on a  
      for each row
    declare
     ssss varchar2(200);
    begin
    ssss:=:new.msgContent ; 
     insert into b(name)
     values(ssss);
    end ss;
    这样可以
      

  3.   

    2个触发器可以写到一起么?为什么我这样测试了下
    CREATE OR REPLACE TRIGGER SM_MO_TR
    BEFORE INSERT
    ON SM_MO FOR EACH ROW
    DECLARE 
    BEGIN 
      DECLARE
      BEGIN
        select SM_MO_ID.nextval into :new.id from dual;
      END;
    END;
    这个就不用说了一定是可以执行的,然后下个是
    CREATE OR REPLACE TRIGGER SM_MO_NEW
    after INSERT
    ON SM_MO FOR EACH ROW
    DECLARE 
    BEGIN 
      DECLARE
      BEGINdbms_output.put_line('ffff');
      
      END;
    END;
    也是可以执行的,把他们都放到一起,结果就是未知类型的错误了