我看只能用存储过程加job实现了。

解决方案 »

  1.   

    你是要定時做這樣的操作還是實時的呢?
    定時:使用過程+job來處理
    實時:觸發器
      

  2.   

    我想还是写一个过程然后通过JOB来实现DBMS_JOB.SUBMIT(:jobno,//job号
                    'your_procedure;',//要执行的过程
                    trunc(sysdate)+1/24,//下次执行时间
                    'trunc(sysdate)+1/24+1'//每次间隔时间
                   );
    删除job:dbms_job.remove(jobno);
    修改job:dbms_job.what(jobno,what);
    修改下次执行时间:dbms_job.next_date(job,next_date);
    修改间隔时间:dbms_job.interval(job,interval);
    停止job:dbms.broken(job,broken,nextdate);
    启动job:dbms_job.run(jobno);
    例子:
    VARIABLE jobno number;
    begin
          DBMS_JOB.SUBMIT(:jobno,
                  'Procdemo;',
                   SYSDATE, 'SYSDATE + 1/720');
             commit;
    end;
    /