Heim > Datenbank > MySQL-Tutorial > Vollständige Beherrschung der MySQL-Trigger

Vollständige Beherrschung der MySQL-Trigger

WBOY
Freigeben: 2022-06-28 15:25:39
nach vorne
2808 Leute haben es durchsucht

Dieser Artikel vermittelt Ihnen relevantes Wissen über MySQL. Er organisiert hauptsächlich Probleme im Zusammenhang mit Triggern, einschließlich der Frage, warum Trigger benötigt werden, einer Übersicht über Trigger, der Erstellung von Triggern usw. Werfen wir einen Blick darauf hilft allen.

Vollständige Beherrschung der MySQL-Trigger

Empfohlenes Lernen: MySQL-Video-Tutorial

1. Warum Trigger benötigt werden

Einige Tabellen sind miteinander verknüpft, z. B. die Produkttabelle und die Inventartabelle. Wir verarbeiten die Daten der Produkttabelle Die Inventartabelle muss geändert werden, um die Integrität der Daten sicherzustellen. Es wäre problematischer, wenn wir es selbst manuell pflegen würden.
Zu diesem Zeitpunkt können wir Trigger verwenden, um einen Trigger zu erstellen, sodass der Einfügevorgang von Produktinformationsdaten automatisch den Einfügevorgang von Bestandsdaten usw. auslöst, sodass wir uns keine Sorgen über Datenverlust aufgrund von Vergessen machen müssen Inventardaten hinzufügen.

2. Überblick über Trigger

  • MySQL unterstützt Trigger ab Version 5.0.2
  • MySQL-Trigger sind wie gespeicherte Prozeduren ein in den MySQL-Server eingebettetes Programm Zu diesen Ereignissen gehören Einfügungs-, Lösch- und Aktualisierungsereignisse. Wenn das Triggerprogramm definiert ist, entspricht die Ausführung dieser Anweisungen durch die Datenbank dem Auftreten eines Ereignisses, und der Trigger wird automatisch ausgelöst, um die entsprechende Operation auszuführen
  • Wenn wir beim Einfügen von Daten in eine Tabelle in der Datenbank automatisch eine Datenbanklogik ausführen müssen, können wir Trigger verwenden, um dies zu erreichen.
  • 3. Erstellung von Triggern
  • 3.1 Syntax

Trigger wirken sich auf die Tabelle aus. Wir möchten beispielsweise, dass die Ausführung des Triggers ausgelöst wird, wenn ein neuer Datensatz zu Tabelle A hinzugefügt wird der Trigger. Ob der Trigger vor oder nach der Ausführung der Einfügeanweisung ausgeführt wird.

für jede Zeile gibt an, dass jedes Mal, wenn ein Ereignis (Einfügen, Aktualisieren oder Löschen) ausgeführt wird, ein Trigger ausgelöst wird

CREATE TRIGGER 触发器名称 
{BEFORE|AFTER} {INSERT|UPDATE|DELETE} ON 表名 
FOR EACH ROW 触发器执行的语句块;
Nach dem Login kopieren
    Beschreibung:

Tabellenname: Zeigt die Triggerüberwachung an Objekt.

  • VOR|NACH: Gibt die Auslösezeit an. BEFORE bedeutet Trigger vor dem Ereignis; AFTER bedeutet Trigger nach dem Ereignis. 表名:表示触发器监控的对象。

  • BEFORE|AFTER:表示触发的时间。BEFORE 表示在事件之前触发;AFTER 表示在事件之后触发。

  • INSERT|UPDATE|DELETE:表示触发的事件。

    • INSERT 表示插入记录时触发;
    • UPDATE 表示更新记录时触发;
    • DELETE 表示删除记录时触发。
  • 触发器执行的语句块

INSERT|UPDATE|DELETE: Zeigt das ausgelöste Ereignis an.

INSERT bedeutet Auslösen, wenn ein Datensatz eingefügt wird;

UPDATE bedeutet Auslösen, wenn ein Datensatz aktualisiert wird;
Vollständige Beherrschung der MySQL-TriggerDELETE bedeutet Auslösen, wenn ein Datensatz gelöscht wird.
Vollständige Beherrschung der MySQL-Trigger

Durch Trigger ausgeführter Anweisungsblock: Es kann sich um eine einzelne SQL-Anweisung oder einen zusammengesetzten Anweisungsblock handeln, der aus der Struktur BEGIN...END besteht.
  • 3.2 Falldemonstration
Bereiten Sie zuerst die Tabelle vor

CREATE TABLE test_trigger (id INT PRIMARY KEY AUTO_INCREMENT,t_note VARCHAR(30));CREATE TABLE test_trigger_log (id INT PRIMARY KEY AUTO_INCREMENT,t_log VARCHAR(30));
Nach dem Login kopieren
Vollständige Beherrschung der MySQL-TriggerAnforderungen: Erstellen Sie einen Trigger: Erstellen Sie einen Trigger mit dem Namen before_insert. Bevor Sie Daten in die Datentabelle test_trigger einfügen, fügen Sie die Protokollinformationen before_insert in die Datentabelle test_trigger_log ein.

4. Trigger anzeigen Vollständige Beherrschung der MySQL-Trigger

    Beim Anzeigen von Triggern werden die Definition, der Status und die Syntaxinformationen von Triggern angezeigt, die bereits in der Datenbank vorhanden sind.
  • Methode 1: Anzeigen der Definitionen aller Trigger in der aktuellen Datenbank

show triggers\G 注意,在SQLyog中,不能加上\G
Nach dem Login kopieren

Methode 2: Sehen Sie sich die Definition eines Triggers in der aktuellen Datenbank an

show create trigger 触发器名
Nach dem Login kopieren
🎜🎜🎜🎜🎜Methode 3: Fragen Sie die Informationen des „salary_check_trigger“-Triggers aus der TRIGGERS-Tabelle der Systembibliothek information_schema ab🎜🎜
SELECT * FROM information_schema.TRIGGERS;
Nach dem Login kopieren
🎜 5. Trigger löschen🎜🎜Trigger sind auch Datenbankobjekte und Trigger werden auch mit der Drop-Anweisung gelöscht🎜
drop trigger if exists 触发器名;
Nach dem Login kopieren
🎜Empfohlenes Lernen: 🎜MySQL-Video-Tutorial🎜🎜

Das obige ist der detaillierte Inhalt vonVollständige Beherrschung der MySQL-Trigger. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
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
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage