Dette eksempel viser dig, hvordan du opretter et job i Oracle til at køre hver time ved hjælp af DBMS_SCHEDULER
pakke.
1. Opret et job ved hjælp af DBMS_SCHEDULER.CREATE_JOB
Følgende PL/SQL-kode planlægger et job, der starter den 20. oktober 2019 kl. 01.00 Indien tid til at køre hver time hver dag. Du kan fjerne Dagsnavnet fra gentagelsesintervalparameteren for at ekskludere en bestemt dag . Jobtypen er lagret procedure og vil køre den procedure, der er angivet i parameteren Jobhandling.
BEGIN DBMS_SCHEDULER.CREATE_JOB ( job_name => 'HOURLY_JOB', job_type => 'STORED_PROCEDURE', job_action => 'YOUR_SCHEMA.YOUR_PROCEDURE', start_date => '20-OCT-19 01.00.00 AM Asia/Kolkata', repeat_interval => 'FREQ=HOURLY;BYDAY=MON,TUE,WED,THU,FRI,SAT,SUN', end_date => NULL, auto_drop => FALSE, job_class => 'SYS.DEFAULT_JOB_CLASS', comments => 'run job every hour'); END; /
2. Aktiver jobbet
BEGIN DBMS_SCHEDULER.enable('HOURLY_JOB'); END; /
Din timelige DBMS_SCHEDULER
job er oprettet og aktiveret nu. Du kan ændre tidszonen fra "Asien/Kolkata " til et hvilket som helst land tidszone ved at hente værdien fra følgende forespørgsel:
SELECT DISTINCT tzname, TZ_OFFSET (tzname) FROM V$TIMEZONE_NAMES ORDER BY tzname;
Relaterede selvstudier:
- Oracle PL/SQL:DBMS_SCHEDULER.CREATE_JOB Kør hver dag én gang