我的表为 create table temp(n number);
我的触发器为 create or replace trigger temp_air
             after insert on temp
             for each row
             begin
             dbms_output.put_line('afssaf');
             end;
             /
可是不知道为什么我在执行insert的时候这个触发器没有反应

解决方案 »

  1.   

    猜想因为没有commit.初学者的猜想而已。
      

  2.   

    dbms_output.put_line('afssaf');--->insert into table_test values('OK');
    新建一个表把结果插入到表中.另:触发器中不允许使用commit,触发器的内容会随着主操作自动提交或回滚.
      

  3.   

    insert into table_test values('OK');????????
    什么意思啊
    我的那个触发器为什么没有反应?
    谢谢
      

  4.   

    你试试用其它的触发器试试,相关的服务开了没,跟AGENT服务
      

  5.   

    你怎么试它是否有输出那句话啊?
    如果是用sql*plus worksheet看输出,你是否有开SET SERVEROUTPUT ON;啊?
      

  6.   

    我是用sqlplus的,如果触发器有效,不是会打印字符?dbms_output.put_line('afssaf');
    ps:怎么设置SET SERVEROUTPUT ON;?
      

  7.   

    在sqlplus界面下敲入SET SERVEROUTPUT ON;
      

  8.   

    insert into temp values('OK');表示插入一个元组到你的表中啊~~
    你要运行这句话,才有了使触发器运行的事件,触发器才会执行啊~~
      

  9.   

    我设置了SET SERVEROUTPUT ON;
    为什么还是不对了
    表为create table temp(n number);
    我的触发器为 create or replace trigger temp_air
                 after insert on temp
                 for each row
                 begin
                 dbms_output.put_line('afssaf');
                 end;
                 /
    怎么在insert的时候还是没有打印字符了。我只想要这样的效果,在插入的时候触发触发器啊。不需要insert into table_test values('OK');这个操作啊。难道我的理解有问题???
      

  10.   

    insert into temp values('OK');只是举个插入的例子而已,你当然可以用自己的插入语句触发。
      

  11.   

    设置了SET SERVEROUTPUT ON是可以的。
      

  12.   

    那些高手的意思是你先用insert 看看你的触发器是否有反应了.
    如果有插入的话,触发器是有反应.真的不能理解你
      

  13.   

    在触发器下用dbms_output.put_line('afssaf');是看不出效果的