Heim > Datenbank > MySQL-Tutorial > Hauptteil

MySQL Advanced 8 – Verwendung von Triggern

黄舟
Freigeben: 2016-12-29 16:42:47
Original
1174 Leute haben es durchsucht

Ein Trigger ist eine spezielle gespeicherte Prozedur, die die Ausführung beim Einfügen, Löschen oder Ändern von Daten in eine bestimmte Tabelle auslöst. Er verfügt über ausgefeiltere und komplexere Datenkontrollfunktionen als die Standardfunktionen der Datenbank selbst.

Es hat die folgenden Eigenschaften:

Überwachungsort: normalerweise der Tabellenname

Überwachungsereignis: Aktualisieren/Löschen/Einfügen

Auslösezeit: nach/ Vor

Trigger-Ereignis: Aktualisieren/Löschen/Einfügen

Es kann nicht direkt aufgerufen werden, es wird aktiv von der Datenbank ausgeführt.

Beispiel1:

Tabelle Tab1 erstellen

DROP TABLE IF EXISTS tab1;
CREATE TABLE tab1(
    tab1_id varchar(11)
);
Nach dem Login kopieren

Tabelle Tab2 erstellen

DROP TABLE IF EXISTS tab2;
CREATE TABLE tab2(
    tab2_id varchar(11)
);
Nach dem Login kopieren

Trigger erstellen: t_afterinsert_on_tab1

Funktion: Nachdem Sie die Datensätze in der Tabelle tab1 hinzugefügt haben, fügen Sie die Datensätze automatisch der Tabelle tab2 hinzu

DROP TRIGGER IF EXISTS t_afterinsert_on_tab1;
CREATE TRIGGER t_afterinsert_on_tab1 
AFTER INSERT ON tab1
FOR EACH ROW
BEGIN
     insert into tab2(tab2_id) values(new.tab1_id);
END;
Nach dem Login kopieren

Testen Sie es

INSERT INTO tab1(tab1_id) values('0001');
Nach dem Login kopieren


Ergebnisse anzeigen
SELECT * FROM tab1;
SELECT * FROM tab2;
Nach dem Login kopieren
Nach dem Login kopieren

Beispiel2:

Trigger erstellen: t_afterdelete_on_tab1

Funktion: Nach dem Löschen des Tab1-Tabellendatensatzes wird der entsprechende Datensatz in der Tab2-Tabelle automatisch gelöscht

DROP TRIGGER IF EXISTS t_afterdelete_on_tab1;
CREATE TRIGGER t_afterdelete_on_tab1
AFTER DELETE ON tab1
FOR EACH ROW
BEGIN
      delete from tab2 where tab2_id=old.tab1_id;
END;
Nach dem Login kopieren

Testen Sie es

DELETE FROM tab1 WHERE tab1_id='0001';
Nach dem Login kopieren


und sehen Sie sich das Ergebnis an
SELECT * FROM tab1;
SELECT * FROM tab2;
Nach dem Login kopieren
Nach dem Login kopieren

Das Obige ist der Inhalt von MySQL Advanced 8 – die Verwendung von Triggern und weitere verwandte Inhalte. Bitte beachten Sie die chinesische PHP-Website (www.php.cn)!


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage