delete from sys.job$
??你要干什么,为什么要删除系统表

解决方案 »

  1.   

    此触发器现在改成:
    create or replace trigger tri_startup
      after startup on database
      
    declare
      v_JobNum number;
      v_job number;
      CURSOR Cur_jobs IS
         select job from user_jobs;
    begin
      --delete from user_jobs;
      --commit;
      OPEN Cur_jobs;
       FETCH Cur_jobs
        INTO v_job;
        
       WHILE(Cur_jobs%FOUND) LOOP
         dbms_job.remove(v_job);
         commit;
       FETCH Cur_jobs
         INTO v_JOB;
       END LOOP;
      
      dbms_job.submit(v_JobNum,'pro_plan_Stat;',sysdate,'sysdate+600/(24*60*60)');
      commit;
    end tri_startup;此触发器我是在8.1.6中写的而且可以正常触发,但在9i是确没有触发,请问这是怎么回事呀,谢谢。
      

  2.   

    这可能是因为出错那个表的列中有的命名不符全oracle的命名规定,如使用了保留关键字!!