首页 > 代码库 > ORACLE JOB创建

ORACLE JOB创建

Connected to Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 
Connected as focususer

SQL> 
SQL> --JOB 需要在命令行执行;
SQL>  --抽数job
SQL>   CREATE OR REPLACE PROCEDURE RPT
  2  --业务
  3   AS
  4    v_time    VARCHAR2(20); /*运行当天*/
  5    v_timeold VARCHAR2(20); /*运行前一天*/
  6  
  7  BEGIN
  8    --查询系统时间
  9    select to_char(sysdate, yyyy-mm-dd), to_char(sysdate - 1, yyyy-mm-dd)
 10      into v_time, v_timeold
 11      from dual;
47         commit;
 48    --异常情况处理
 49  
 50  EXCEPTION
 51    WHEN OTHERS THEN
 52      ROLLBACK;
 53  END RPT;
 54  /

Procedure created
SQL> --新建JOB
SQL>   --SM_MANUAL_SM_LIST的job
SQL> variable   job2  number;
SQL> begin
  2    sys.dbms_job.submit(:job2,
  3                        RPT;,
  4                        to_date(22-03-2016 06:00:00,
  5                                dd-mm-yyyy hh24:mi:ss),
  6                        TRUNC(SYSDATE+1,‘‘DD‘‘)+360/1440);
  7    commit;
  8  end;
  9  /

PL/SQL procedure successfully completed
job2
---------
69
SQL> commit;

Commit complete
SQL> --启动JOB
SQL> begin
  2    sys.dbms_job.run(:job2);
  3    end;
  4  /

PL/SQL procedure successfully completed
job2
---------
69
SQL> --移除JOB
SQL> begin
  2    sys.dbms_job.remove(:job2);
  3    end;
  4  /

PL/SQL procedure successfully completed
job2
---------
69

 

ORACLE JOB创建