Heim  >  Artikel  >  Datenbank  >  Was sind Trigger und gespeicherte Prozeduren in Oracle?

Was sind Trigger und gespeicherte Prozeduren in Oracle?

青灯夜游
青灯夜游Original
2022-01-25 16:49:572636Durchsuche

In Oracle ist eine gespeicherte Prozedur eine Reihe von SQL-Anweisungen zum Ausführen einer bestimmten Funktion, die in der Datenbank gespeichert werden. Die gespeicherte Prozedur kann wiederholt verwendet werden, wodurch die Arbeitsbelastung der Entwickler verringert wird und Datenanalysten, um eine Methode zur Datenintegrität sicherzustellen, bei der es sich um eine spezielle gespeicherte Prozedur handelt, die mit Tabellenereignissen verknüpft ist.

Was sind Trigger und gespeicherte Prozeduren in Oracle?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, Oracle 11g-Version, Dell G3-Computer.

Was ist ein Trigger in Oracle? Ein Trigger ist eine von der Datenbank bereitgestellte Methode, um die Datenintegrität sicherzustellen. Ausgelöst durch Ereignisse.

Eine SQL-Anweisung, die ein Trigger implizit ausführt, wenn ein bestimmtes Ereignis ausgelöst wird. Der Trigger kann keine Parameter empfangen. Oracle-Trigger lösen Einfüge-, Aktualisierungs- und Löschvorgänge in der Datenbank oder ähnliche Vorgänge in Ansichten in der Oracle-Datenbank sowie einige Systemereignisse wie das Schließen oder Öffnen der Datenbank aus.


Was sind die Klassifizierungen von Auslösern?

(1), Data Manipulation Language (DML)-Trigger: Erstellt in der Tabelle, Trigger mit DML-Zeit; (2), Alternativer (statt) Trigger: Erstellt in der Ansicht, wird verwendet, um das Hinzufügen, Ändern, und Löschen von Ansichten.

(3) Auslöser der Datendefinitionssprache (DDL): Im Schema definiert, ist das auslösende Ereignis die Erstellung und Änderung von Datenbankobjekten.

(4) Datenbanksystem-Trigger: Er ist für die gesamte Datenbank definiert und der Triggerzeitpunkt ist der Betrieb der Datenbank, z. B. das Starten und Herunterfahren der Datenbank.

Was sind die Bestandteile eines Triggers?

(1) Ausgelöste Ereignisse: Das heißt, unter welchen Umständen der Auslöser ausgelöst wird, z. B. Einfügen, Aktualisieren, Löschen. (2) Triggerzeit: Das heißt, ob der Trigger vor dem Triggerereignis (before) oder nach dem Triggerereignis (after) liegt, sowie die Reihenfolge des ausgelösten Ereignisses und des Triggerkörpers.

(3) Der Trigger selbst: Die Operation, die der Trigger ausführen soll, wenn das Ereignis ausgelöst wird, zum Beispiel: pl/sql-Block.

(4) Triggerhäufigkeit: Gibt an, wie oft die im Trigger definierte Aktion ausgeführt wird. Das heißt, Trigger auf Anweisungsebene und Trigger auf Zeilenebene. Ein Trigger auf Anweisungsebene bedeutet, dass der Trigger nur einmal ausgeführt wird, wenn ein Ereignis auftritt. Bei Triggern auf Zeilenebene wird der Trigger beim Eintreten eines Ereignisses für jede von der Operation betroffene Datenzeile separat ausgeführt.

Was ist eine gespeicherte Prozedur in Oracle?

Eine gespeicherte Prozedur (Stored Procedure) ist eine Reihe von SQL-Anweisungen in einem großen Datenbanksystem, die in der Datenbank gespeichert und nach der ersten erneut kompiliert werden Der Aufruf muss nicht erneut kompiliert werden. Der Benutzer ruft die gespeicherte Prozedur auf, indem er den Namen der gespeicherten Prozedur angibt und Parameter angibt (sofern die gespeicherte Prozedur über Parameter verfügt). Um es einfach auszudrücken: Es handelt sich um eine SQL-Anweisung, die genau eine Sache tut.

Gespeicherte Prozeduren können wiederholt verwendet werden, wodurch die Arbeitsbelastung der Entwickler verringert wird.

Gespeicherte Prozeduren sind Prozeduren in der Oracle-Datenbank.


Warum gespeicherte Prozeduren schreiben

1. Hohe EffizienzNachdem die gespeicherte Prozedur einmal kompiliert wurde, wird sie in der Datenbank gespeichert und bei jedem Aufruf direkt ausgeführt. Wenn wir gewöhnliche SQL-Anweisungen an anderen Orten (z. B. Notepad) speichern möchten, müssen sie vor der Ausführung analysiert und kompiliert werden. Daher denke ich, dass gespeicherte Prozeduren effizienter sind.

2. Reduzieren Sie den Netzwerkverkehr.

Die kompilierte gespeicherte Prozedur wird in der Datenbank abgelegt. Wenn wir sie remote aufrufen, übertragen wir nicht viele SQL-Anweisungen vom Typ String.

3. Hohe Wiederverwendbarkeit

Gespeicherte Prozeduren werden oft für eine bestimmte Funktion geschrieben. Wenn diese bestimmte Funktion ausgeführt werden muss, kann die gespeicherte Prozedur erneut aufgerufen werden.

4. Hohe Wartbarkeit

Bei kleinen Änderungen der Funktionsanforderungen ist es einfacher und mit weniger Aufwand möglich, die vorherigen gespeicherten Prozeduren zu ändern.

5. Hohe Sicherheit

Eine gespeicherte Prozedur, die eine bestimmte Funktion ausführt, kann im Allgemeinen nur von bestimmten Benutzern verwendet werden und unterliegt Nutzungsidentitätsbeschränkungen, was sie sicherer macht.

Empfohlenes Tutorial: „

Oracle Tutorial

Das obige ist der detaillierte Inhalt vonWas sind Trigger und gespeicherte Prozeduren in Oracle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn