大家好:我用的是PL/SQL
我想编写一个时间器,主要就是在每天的早上8:00中自动往数据库中添加数据,请问在PL/SQL中怎么编写
最好给个例子,谢谢.!

解决方案 »

  1.   

    先用存储过程实现往数据库里添加数据
    用job实现定时调用存储过程
      

  2.   

    用job实现定时调用存储过程?能否给出代码?
      

  3.   

    1定时调用存储过程,在pl/sql的平台上找到jobs,右击,新建一个job,在what里写入存储过程名称,在nextdate里写入执行时间.interval里写出间隔时间,就能建立一个job定时调用存储过程.
    2代码写:在PLSQL中创建存储过程:create or replace procedure pro_onlineuser
    as
    begin
    insert into table_name values (?,?,?);
    commit;
    end pro_onlineuser;
    在SQL命令窗口中启动任务:
    在SQL>后执行:VARIABLE jobno number;
    begin
    DBMS_JOB.SUBMIT(:jobno,'pro_onlineuser;',SYSDATE,'sysdate+1/24/60');括号内依次为job名称,存储过程名,下次开始时间,间隔多久调用时间
    commit;
    end;
      

  4.   

    每天早上8:00执行 
    interval 应该写?下次开始时间
    写 SYSDATE对吗?
      

  5.   

    begin
      dbms_job.submit(job => :job,
                          what => 'p_insertscxt;',
                            next_date => to_date('16-03-2009 08:00:00', 'dd-mm-yyyy hh24:mi:ss'),
                          interval => 'sysdate+1');
      commit;
    end;
      

  6.   

    begin
      sys.dbms_job.submit(job => :job,
                          what => '存储过程名;',
                          next_date => to_date('16-03-2009 08:00:00', 'dd-mm-yyyy hh24:mi:ss'),
                          interval => 'trunc(sysdate) + 1 + 8/24');
      commit;
    end;
    /
      

  7.   

    1. 先把增加数据的操作写在存储过程里 
    2. 再执行:
    begin 
      dbms_job.submit(job => :job, 
                      what => '存储过程名;', 
                      next_date => to_date('2009-03-16 08:00:00', 'yyyy-mm-dd hh24:mi:ss'), 
                      interval => 'sysdate + 1 '); 
      commit; 
    end; 
    /