Unterschied zwischen Trigger und Prozedur
Inhalt
Trigger und Prozedur sind Bestandteil von Advanced SQL. Trigger und Prozedur führen beide eine bestimmte Aufgabe bei ihrer Ausführung aus. Der grundlegende Unterschied zwischen Trigger und Procedure ist, dass Auslösen wird beim Auftreten eines Ereignisses automatisch ausgeführt Verfahren wird ausgeführt, wenn es explizit aufgerufen wird.
Lassen Sie uns einige weitere Unterschiede zwischen Trigger und Prozedur anhand der folgenden Vergleichstabelle erläutern.
- Vergleichstabelle
- Definition
- Hauptunterschiede
- Fazit
Vergleichstabelle
Grundlage für den Vergleich | Löst aus | Verfahren |
---|---|---|
Basic | Sie werden beim Eintreten eines bestimmten Ereignisses automatisch ausgeführt. | Sie können bei Bedarf ausgeführt werden. |
Berufung | Trigger können nicht innerhalb einer Prozedur aufgerufen werden. | Sie können jedoch eine Prozedur innerhalb eines Triggers aufrufen. |
Parameter | Wir können keine Parameter an Trigger übergeben. | Wir können Parameter an Prozeduren übergeben. |
Rückkehr | Der Trigger gibt bei der Ausführung niemals einen Wert zurück. | Die Prozedur kann bei der Ausführung einen oder mehrere Werte zurückgeben. |
Definition von Trigger
Der Trigger ist wie eine Prozedur, die beim Auftreten eines bestimmten Ereignisses automatisch ausgeführt wird. Wie bei der Prozedur muss der Trigger nicht explizit aufgerufen werden. Trigger werden erstellt, um eine Aufgabe als Reaktion auf das Auftreten eines bestimmten Ereignisses auszuführen.
Der Trigger kann als Antwort auf die aufgerufen werden DDL Anweisungen (DELETE, INSERT oder UPDATE) oder DML Anweisungen (DELETE, INSERT oder UPDATE) oder für einige Datenbankoperationen (SERVERERROR, LOGON, LOGOFF, STARTUP oder SHUTDOWN).
Der Trigger besteht aus drei Komponenten:
- Veranstaltung: Ereignis ist das Auftreten eines Ereignisses, das die Ausführung des Triggers verursacht. Der Trigger kann entweder ausgeführt werden VOR Ein Ereignis tritt ein oder es kann angeordnet werden, dass es ausgeführt wird NACH die Durchführung eines Ereignisses.
- Bedingung: Dies ist ein optionaler Teil des Auslösers. Wenn nicht erwähnt, wird der Trigger ausgeführt, sobald das angegebene Ereignis eintritt. Wenn die Bedingung angegeben ist, werden die Regeln überprüft, um zu bestimmen, ob der Trigger ausgeführt werden soll.
- Aktion: Aktion ist eine Menge von SQL-Anweisungen, die bei der Ausführung des Triggers ausgeführt werden.
Die allgemeine Form der Erstellung eines Ereignisses wird nachfolgend erläutert:
TRIGGER ERSTELLEN Hier ist die Bedingung optional. Die Prozedur kann als eine Programmeinheit betrachtet werden, die erstellt wird, um eine Aufgabe auszuführen, und in der Datenbank gespeichert wird. Sie werden bei Bedarf von der SQL-Anweisung aufgerufen. Prozeduren sind wie benutzerdefinierte Funktionen, die von den Entwicklern definiert werden. Prozeduren können mit aufgerufen werden ANRUF oder AUSFÜHREN. Die Verfahren sind in folgenden Situationen nützlich: Lassen Sie uns die allgemeine Form der Erstellung einer Prozedur diskutieren: VERFAHREN ERSTELLEN Hier sind die Parameter und die lokalen Deklarationen optional. Sie werden nur erwähnt, wenn sie benötigt werden. Die folgende Anweisung beschreibt den Aufruf der Prozeduren. ANRUF Trigger sind nützlich, werden jedoch vermieden, wenn es Alternativen zu ihnen gibt, da sie die Datenkomplexität erhöhen. Manchmal werden Trigger auch durch ein geeignetes Verfahren ersetzt.Definition von Prozeduren
Fazit: