So führen Sie gespeicherte Prozeduren in Oracle regelmäßig aus
Bei Anwendungen auf Unternehmensebene können wir uns nicht einfach darauf verlassen, dass Benutzer manuelle Vorgänge ausführen, um die erforderliche Funktionalität zu erreichen. Daher sind geplante Aufgaben unerlässlich, die besonders für die Hintergrundverarbeitung und das Laden von Daten nützlich sind. Die Oracle-Datenbank bietet gespeicherte Prozeduren und geplante Aufgaben, um die Arbeit von Entwicklern und Administratoren zu vereinfachen. In diesem Artikel konzentrieren wir uns auf die Methode, mit der von Oracle geplanten Aufgaben regelmäßig gespeicherte Prozeduren auszuführen.
Geplante Oracle-Aufgaben
Geplante Aufgaben in der Oracle-Datenbank können mit dem DBMS_SCHEDULER-Paket erstellt werden. Mit diesem Paket können wir Jobs mit komplexen Planungsanforderungen erstellen. Es kann verschiedene Frequenzen unterstützen, z. B. stündlich, täglich, wöchentlich, monatlich, jährlich usw. Geplante Aufgaben können auch an einem bestimmten Datum und einer bestimmten Uhrzeit oder sogar in verschiedenen Zeitzonen ausgeführt werden. Die folgenden Objekttypen können mit dem DBMS_SCHEDULER-Paket erstellt werden.
- Job: Eine Aufgabeneinheit, die beim Ausführen der Funktion DBMS_SCHEDULER.CREATE_JOB erstellt und vom Scheduler regelmäßig oder auf Anfrage geplant wird.
- Job-Klasse: Eine Gruppe verwandter Aufgaben, für die dieselbe Regel zur Begrenzung des Ressourcenverbrauchs gilt.
- Ressourcenverbrauchsgrenze (Ressourcenverbrauch): Wird zur Steuerung der Ressourcenverbrauchsregeln von Jobs und Jobklassen verwendet.
- Kette: Eine Folge von Jobs, bei der der Abschluss eines Jobs die Ausführung eines anderen Jobs auslöst.
- Sitzung: Der mit einer Jobausführung verbundene Prozess. Sitzungen können protokolliert und überwacht werden, um die Auftragsausführung zu verstehen.
In diesem Artikel konzentrieren wir uns darauf, wie Sie mit DBMS_SCHEDULER einen Job erstellen und ihn an die gespeicherte Prozedur binden, die wir ausführen möchten.
Erstellen Sie eine gespeicherte Prozedur
Wir müssen zunächst eine gespeicherte Prozedur erstellen, um den Aufgabenvorgang auszuführen, den wir abschließen möchten. Unten sehen Sie ein einfaches Beispiel einer gespeicherten Prozedur, die die aktuelle Uhrzeit in eine Tabelle einfügt.
CREATE OR REPLACE PROCEDURE INSERT_TIME AS BEGIN INSERT INTO TIME_LOG (LOG_TIME) VALUES (SYSDATE); COMMIT; END INSERT_TIME;
Job erstellen
Mit der gespeicherten Prozedur müssen wir als Nächstes einen Job erstellen, um dessen Ausführung zu planen. Der Job, den wir erstellen werden, fügt jeden Morgen um 6 Uhr die aktuelle Uhrzeit ein. Nachfolgend finden Sie ein Beispiel für die Verwendung der Funktion DBMS_SCHEDULER.CREATE_JOB zum Erstellen dieses Jobs.
BEGIN DBMS_SCHEDULER.CREATE_JOB ( job_name => 'INSERT_TIME_JOB', job_type => 'STORED_PROCEDURE', job_action => 'INSERT_TIME', start_date => SYSTIMESTAMP, repeat_interval => 'FREQ=DAILY; BYHOUR=6;', enabled => TRUE, comments => 'Insert current time every day at 6 AM'); END;
Wenn wir die Funktion CREATE_JOB zum Erstellen eines Jobs verwenden, müssen wir die folgenden Parameterbeschreibungen befolgen:
- job_name: Der Name des Jobs, der eindeutig sein muss.
- job_type: Die Art des Jobs, normalerweise „STORED_PROCEDURE“.
- job_action: Der Name der gespeicherten Prozedur, des Pakets oder der ausführbaren Datei, die vom Job ausgeführt werden soll.
- start_date: Die Startzeit des Jobs, die ein Datum oder ein Zeitstempel sein kann. Wenn nicht angegeben, wird standardmäßig die aktuelle Zeit verwendet.
- repeat_interval: Geben Sie die Ausführungshäufigkeit und das Zeitintervall des Jobs an. In diesem Beispiel bedeutet „FREQ=DAILY; BYHOUR=6;“, dass es jeden Tag um 6 Uhr morgens ausgeführt wird. Weitere Optionen sind stündlich, wöchentlich, monatlich, jährlich usw. Wir können diesen Parameter auch verwenden, um die Tage anzugeben, an denen der Job ausgeführt werden soll, beispielsweise jeden Montag, Dienstag und Donnerstag.
- enabled: Gibt an, ob der Job aktiviert ist.
- Kommentare: Eine kurze Beschreibung der Aufgabe.
Job an gespeicherte Prozedur binden
Im obigen Beispiel haben wir einen Job erstellt und die gespeicherte Prozedur für seine Ausführung angegeben. Jetzt müssen wir diesen Job an unsere gespeicherte Prozedur binden, damit er den Vorgang zu einem bestimmten Zeitpunkt ausführt. Wir können die Funktion DBMS_SCHEDULER.SET_ATTRIBUTE verwenden, um diese Aufgabe zu erfüllen.
BEGIN DBMS_SCHEDULER.SET_ATTRIBUTE ( name => 'INSERT_TIME_JOB', attribute => 'program_action', value => 'INSERT_TIME;'); END;
In diesem Beispiel verwenden wir die Funktion SET_ATTRIBUTE, um das Attribut „program_action“ des Jobs „INSERT_TIME_JOB“ auf „INSERT_TIME“ zu setzen. Dadurch wird DBMS_SCHEDULER angewiesen, die gespeicherte Prozedur INSERT_TIME zu einem bestimmten Zeitpunkt aufzurufen.
Wir haben gelernt, wie man das DBMS_SCHEDULER-Paket verwendet, um geplante Jobs zu erstellen und Aufgaben in gespeicherten Prozeduren zu binden. Jetzt können wir auf die Ausführung der geplanten Aufgabe warten und die Datensätze in der Tabelle TIME_LOG anzeigen.
Fazit
Die Verwendung der Funktion für geplante Aufgaben der Oracle-Datenbank kann uns dabei helfen, Hintergrundverarbeitungsaufgaben einfach auszuführen. Das DBMS_SCHEDULER-Paket bietet viele Optionen, um unsere spezifischen Anwendungsanforderungen zu erfüllen, wie z. B. wiederholte Ausführung, parallele Ausführung, Wiederherstellung nach Fehlern usw. Darüber hinaus besteht die Möglichkeit, Aufträge über verschiedene Zeitzonen, Daten, Wochen, Monate usw. hinweg auszuführen, was geplante Aufgaben sehr flexibel macht. In diesem Artikel konzentrieren wir uns darauf, wie Sie die geplanten Aufgaben von Oracle nutzen können, um gespeicherte Prozeduren regelmäßig auszuführen. Wir hoffen, dass dieser Artikel Ihnen nützliche Hinweise geben und Ihnen helfen kann, die Verwendungs- und Betriebsprinzipien geplanter Aufgaben auf Basis der Oracle-Datenbank besser zu verstehen.
Das obige ist der detaillierte Inhalt vonSo führen Sie gespeicherte Prozeduren in Oracle regelmäßig aus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

In diesem Artikel werden PL/SQL Cursor für die Zeilen-für-Reihen-Datenverarbeitung erläutert. Es beschreibt die Cursor -Erklärung, Öffnung, Abholung und Schließen, Vergleich von impliziten, expliziten und Ref Cursors. Techniken zur effizienten großen Datensatzhandhabung und Verwendung für Schleifen

In diesem Artikel werden Oracle Database -Segmenttypen (Daten, Index, Rollback, Temporary), deren Leistungsimplikationen und Management untersucht. Es wird hervorgehoben, dass die Auswahl geeigneter Segmenttypen basierend auf Workload- und Datenmerkmalen für eine optimale Effizienz basiert

In diesem Artikel werden Oracle Database Performance Testing Tools untersucht. In der Auswahl des richtigen Tools basierend auf Budget, Komplexität und Funktionen wie Überwachung, Diagnose, Workload -Simulation und Berichterstattung. Der Artikel beschreibt auch effektive BO

Dieser Artikel führt Benutzer durch das Herunterladen von Oracle -Datenbank. Es beschreibt den Prozess und betont die Auswahl der Ausgabe (Express, Standard, Unternehmen), Plattformkompatibilität und Lizenzvereinbarung. Systemanforderungen und Editionsanpassung

In diesem Artikel werden Oracle Database -Client -Tools untersucht, die für die Interaktion mit Oracle -Datenbanken ohne vollständige Serverinstallation unerlässlich sind. Es werden häufig verwendet

In diesem Artikel werden die Standard -Tabellenspaces von Oracle (System, Sysaux, Benutzer), ihre Merkmale, Identifikationsmethoden und Leistungsauswirkungen untersucht. Es argumentiert sich gegen die Stütze auf Ausfälle und betont, wie wichtig es ist, separate Tabellensprespac zu erstellen

In dem Artikel wird erläutert, wie Benutzer und Rollen in Oracle mithilfe von SQL -Befehlen erstellt werden, und erörtert Best Practices für die Verwaltung von Benutzerberechtigungen, einschließlich der Verwendung von Rollen, nach dem Prinzip der geringsten Privilegien und regelmäßigen Audits.

In diesem Artikel werden die Oracle -Datenmaskierung und -Subettierung (DMS) beschrieben, eine Lösung zum Schutz sensibler Daten. Es umfasst die Identifizierung sensibler Daten, die Definition von Maskierungsregeln (Mischung, Substitution, Randomisierung), Aufbau von Arbeitsplätzen, Überwachung und Bereitstellung
