Požadavek je vytvořit úlohu v Oracle, která se bude spouštět denně ve 3:00 a spustit uloženou proceduru k provedení určitého úkolu. Například název uložené procedury je PROC_DAILY_UPDATES
.
K dosažení tohoto cíle používá následující příklad Oracle DBMS_SCHEDULER.CREATE_JOB
postup:
1. Vytvořte úlohu v Oracle pomocí DBMS_SCHEDULER.CREATE_JOB
BEGIN DBMS_SCHEDULER.CREATE_JOB ( job_name => 'JOB_DAILY_UPDATES', job_type => 'STORED_PROCEDURE', job_action => 'YOURSCHEMA.PROC_DAILY_UPDATES', start_date => '28-SEP-19 03.00.00 AM America/New_York', repeat_interval => 'FREQ=DAILY;INTERVAL=1', end_date => NULL, auto_drop => FALSE, job_class => 'SYS.DEFAULT_JOB_CLASS', comments => 'extract data'); END; /
Po vytvoření výše uvedené úlohy ji povolte:
2. Povolte úlohu pomocí DBMS_SCHEDULER.ENABLE
BEGIN DBMS_SCHEDULER.enable('JOB_DAILY_UPDATES'); END; /
Pro potvrzení úspěšně vytvořené úlohy použijte následující dotaz:
Select * from user_scheduler_jobs where job_name = 'JOB_DAILY_UPDATES';
Z výše uvedeného dotazu získáte informace jako datum posledního zahájení, datum dalšího spuštění a stav povolení úlohy , atd.
Chcete-li získat historii provádění úlohy, použijte následující dotaz:
Select * from user_scheduler_job_run_details where job_name = 'JOB_DAILY_UPDATES';
Můžete si také všimnout, že ve výše uvedeném DBMS_SCHEDULER.CREATE_JOB
příklad postupu, použil jsem časové pásmo America/New_York
. Časové pásmo konkrétní země můžete získat pomocí následujícího dotazu:
SELECT DISTINCT tzname, TZ_OFFSET (tzname) FROM V$TIMEZONE_NAMES ORDER BY tzname;
Výstup
America/Mexico_City -05:00 America/Miquelon -02:00 America/Moncton -03:00 America/Monterrey -05:00 America/Montevideo -03:00 America/Montreal -04:00 America/Montserrat -04:00 America/Nassau -04:00 America/New_York -04:00 ...
Viz také:
- Jak naplánovat úlohu v Oracle SQL Developer?
- Zjistěte, jak plánovat úkoly/úlohy pomocí Cron (crontab) v Linuxu
- Získejte aktuální místní čas libovolné země v PL/SQL
-
Export databáze SQLite do souboru CSV
-
Korupce databáze v MS Access a jak se vypořádat
-
Vyhledejte, zda je číslo obsaženo ve výrazu jako:1-3,5,10-15,20
-
Získejte seznam tabulek s omezením primárního klíče nebo bez něj ve všech databázích z instance SQL Server - SQL Server / Výukový program TSQL, část 61