ORACLEデータベースのタイミングでスクリプトを実行します。


DBMS_Job    
       : 

Broken()  。
change()  。
Interval()  。
Isubmit()  。
Next_Date()  。
Remove()  。
Run()  。
Submit()  。
User_Export()  。
What()  。

1、
Broken()               ,                    。
         :job 、broken next_date。

PROCEDURE Broken (job       IN binary_integer,
                  Broken    IN boolean,
                  next_date IN date :=SYSDATE)

job      ,           。
broken              ——TRUE          , FLASE           。
next_date                 。              。



2、
Change()             。
         :job、what 、next_date interval。

PROCEDURE Change (job        IN binary_integer,
                  What       IN varchar2,
                  next_date  IN date,
                  interval   IN varchar2)

 job        ,        。
What            PL/SQL   。
next_date             。
interval              。



3、
Interval()                        。
         :job interval。

PROCEDURE Interval (job      IN binary_integer,
                    Interval IN varchar2)

job           。interval              。



4、
ISubmit()                 。
         :job、what、next_date、interval no_parse。

PROCEDURE ISubmit (job       IN binary_ineger,
                   What      IN varchar2,
                   next_date IN date,
                   interval  IN varchar2,
                   no_parse  IN booean:=FALSE)

     Submit()          job    IN          
          。            ,       。


5、
Next_Date()                  。          :job next_date。

PROCEDURE Next_Date(job         IN binary_ineger,
                    next_date   IN date)

job          。next_date                  。



6、
Remove()               。          :

PROCEDURE Remove(job IN  binary_ineger);

job           。              Submit()     job    。
                  。



7、
Run()               。           :

PROCEDURE Run(job IN binary_ineger) 

job             。



8、
  Submit()  ,         。
         :job、what、next_date、interval no_parse。

PROCEDURE Submit ( job       OUT binary_ineger,
                   What      IN  varchar2,
                   next_date IN  date,
                   interval  IN  varchar2,
                   no_parse  IN  booean:=FALSE)

job    Submit()     binary_ineger。             。
what        PL/SQL   。
next_date             。
interval             。
no_parse                        ——TRUE
   PL/SQL                 ,
 FALSE   PL/SQL           。



9、
User_Export()        ,                        。
        :job my_call。

PROCEDURE User_Export(job        IN binary_ineger,
                      my_call    IN OUT varchar2)

job            。my_call                     
   。



10、
What()                      。          :job what。

PROCEDURE What (job  IN binary_ineger,
                What IN OUT varchar2)

job           。what           PL/SQL  。




      : 

     
SQL> create table a(a date);

    。

         
SQL> create or replace procedure test as
  2  begin
  3  insert into a values(sysdate);
  4  end;
  5  /

     。

  JOB
SQL> variable job1 number;
SQL> 
SQL> begin
  2  dbms_job.submit(:job1,'test;',sysdate,'sysdate+1/1440'); --  1440  ,      test    
  3  end;
  4  /

PL/SQL        。

  JOB
SQL> begin
  2  dbms_job.run(:job1);
  3  end;
  4  /

PL/SQL        。

SQL> select to_char(a,'yyyy/mm/dd hh24:mi:ss')    from a;

  
-------------------
2001/01/07 23:51:21
2001/01/07 23:52:22
2001/01/07 23:53:24

  JOB
SQL> begin
  2  dbms_job.remove(:job1);
  3  end;
  4  /

PL/SQL        。