Verwendung von MySQL-Triggern
MySQL bietet Unterstützung für Trigger. Ein Trigger ist ein Datenbankobjekt, das sich auf Tabellenoperationen bezieht. Wenn ein bestimmtes Ereignis in der Tabelle auftritt, in der sich der Trigger befindet, wird das Objekt aufgerufen, d. h. das Operationsereignis der Tabelle löst die Ausführung des Triggers in der Tabelle aus.
Trigger erstellen
In MySQL lautet die Syntax zum Erstellen eines Triggers wie folgt:
CREATE TRIGGER trigger_name trigger_time trigger_event ON tbl_name FOR EACH ROW trigger_stmt
Unter anderem:
trigger_name: identifiziert den Triggernamen, vom Benutzer angegeben;
trigger_time: identifiziert die Auslösezeit, der Wert ist VOR oder
AFTER;
trigger_event: identifiziert das Triggerereignis, der Wert ist INSERT, UPDATE oder
DELETE;
tbl_name: identifiziert den Tabellennamen zum Erstellen des Triggers, d
BEGIN und END enthalten mehrere Anweisungen.
MySQL außer INSERT, UPDATE, DELETE
Zusätzlich zur Definition grundlegender Operationen werden auch LOAD DATA- und REPLACE-Anweisungen definiert, die auch die Auslösung der oben genannten 6 Arten von Triggern bewirken können.
UPDATE ausgelöst werden
Typ Trigger: Der Trigger wird aktiviert, wenn eine bestimmte Zeile geändert wird, was durch die UPDATE-Anweisung ausgelöst werden kann.
DELETE Typ Trigger: Der Trigger wird aktiviert, wenn eine bestimmte Zeile gelöscht wird, was durch ausgelöst werden kann
Ausgelöst durch DELETE- und REPLACE-Anweisungen.
In MySQL lautet die Syntax der BEGIN … END-Anweisung:
[statement_list]
END
Unter anderem Anweisungsliste
Stellt eine Liste mit einer oder mehreren Anweisungen dar. Jede Anweisung in der Liste muss mit einem Semikolon (;) abgeschlossen werden.
In MySQL ist das Semikolon die Kennung des Endes der Anweisung. Wenn ein Semikolon auftritt, bedeutet dies, dass die Anweisung beendet ist und MySQL mit der Ausführung beginnen kann. Daher stößt der Interpreter auf Anweisungsliste
Die Ausführung beginnt nach dem Semikolon in , und dann wird ein Fehler gemeldet, da kein END passendes BEGIN gefunden wird.
DELIMITER
neuer_delemiter
neuer_delemiter
Es kann auf ein oder mehrere Längensymbole eingestellt werden. Der Standardwert ist Semikolon (;). Wir können es in andere Symbole ändern, z. B. $:
DELIMITER
$
Die Anweisung danach endet mit einem Semikolon und der Interpreter reagiert nicht. Nur wenn $ angetroffen wird, gilt die Anweisung als beendet. Beachten Sie, dass wir nach der Verwendung daran denken sollten, es wieder zu ändern.
Angenommen, es gibt zwei Tabellen im System:
Klassentabelle class(Klassennummer classID, Anzahl der Schüler in der Klasse stuCount)
Schülertabelle
Student (Studenten-ID, Klassen-ID)
Um einen Auslöser zu erstellen, der die Anzahl der Studenten in der Klassentabelle automatisch aktualisiert, wenn Studenten hinzugefügt werden, lautet der Code wie folgt:
DELIMITER $ create trigger tri_stuInsert after insert on student for each row begin declare c int; set c = (select stuCount from class where classID=new.classID); update class set stuCount = c + 1 where classID = new.classID; end$ DELIMITER ;
DECLARE wird in MySQL verwendet, um eine lokale Variable zu definieren, die nur in BEGIN ... END verwendet werden kann
Es wird in zusammengesetzten Anweisungen verwendet und sollte am Anfang von zusammengesetzten Anweisungen definiert werden,
Darunter:
var_name ist der Variablenname, genau wie bei SQL
Die Anweisungen sind die gleichen, bei Variablennamen wird die Groß-/Kleinschreibung nicht beachtet. Es können mehrere von MySQL unterstützte Datentypen gleichzeitig definiert werden, der Anfangswert der Variablen ist NULL. Bei Bedarf können Sie verwenden
Die DEFAULT-Klausel stellt einen Standardwert bereit, der als Ausdruck angegeben werden kann.
darzustellen
In der Tabelle, in der sich der Auslöser befindet, die Datenzeile, die den Auslöser ausgelöst hat.
Im Einzelnen:
In einem Trigger vom Typ INSERT, NEU
Wird verwendet, um neue Daten darzustellen, die (VOR) eingefügt werden oder (NACHHER) eingefügt wurden.
In UPDATE-Typ-Triggern wird OLD verwendet, um die ursprünglichen Daten darzustellen, die geändert werden oder geändert wurden
Wird verwendet, um neue Daten darzustellen, die geändert werden oder wurden.
In Triggern vom Typ DELETE wird OLD verwendet, um die Originaldaten darzustellen, die gelöscht werden oder wurden.
Verwendung:
NEW.columnName (columnName ist ein Spaltenname der entsprechenden Datentabelle)
Außerdem ist OLD schreibgeschützt, während NEW SET in Triggern verwenden kann
Weisen Sie einen Wert zu, damit der Auslöser nicht erneut ausgelöst wird und einen Rundruf auslöst (fügen Sie beispielsweise vor dem Einfügen eines Studenten „2013“ vor seiner Studentennummer hinzu).
Trigger anzeigen
ist dasselbe wie das Anzeigen von Datenbanken (Datenbanken anzeigen;) und das Anzeigen von Tabellen (Tabellen anzeigen;). Die Syntax zum Anzeigen von Triggern lautet wie folgt:
SHOW TRIGGERS [FROM schema_name];
Wobei schema_name der Name des Schemas in MySQL ist
Schema und Datenbank sind gleich, das heißt, der Datenbankname kann angegeben werden, sodass
nicht zuerst „Datenbankname verwenden“ muss.
Trigger löschen
Wie beim Löschen von Datenbanken und Tabellen lautet die Syntax zum Löschen von Triggern wie folgt:
DROP TRIGGER [IF EXISTS] [Schemaname.]Triggername
Ausführungsreihenfolge der Trigger
Die von uns erstellte Datenbank ist im Allgemeinen eine InnoDB-Datenbank, und die darauf erstellten Tabellen sind Transaktionstabellen, also transaktionssicher. Wenn zu diesem Zeitpunkt die SQL-Anweisung oder der Trigger nicht ausgeführt werden kann, wird MySQL Die Transaktion wird zurückgesetzt, einschließlich:
① Wenn der BEFORE-Trigger nicht ausgeführt werden kann, kann SQL nicht korrekt ausgeführt werden.
②Wenn die SQL-Ausführung fehlschlägt, wird der Trigger vom Typ AFTER nicht ausgelöst.
③NACH
Wenn die Ausführung eines Triggers dieses Typs fehlschlägt, führt SQL einen Rollback durch.
Haben Sie etwas über die Verwendung von MySQL-Triggern gelernt? Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und wir können gemeinsam Fortschritte machen.

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



Die Volltext-Suchfunktionen von InnoDB sind sehr leistungsfähig, was die Effizienz der Datenbankabfrage und die Fähigkeit, große Mengen von Textdaten zu verarbeiten, erheblich verbessern kann. 1) InnoDB implementiert die Volltext-Suche durch invertierte Indexierung und unterstützt grundlegende und erweiterte Suchabfragen. 2) Verwenden Sie die Übereinstimmung und gegen Schlüsselwörter, um den Booleschen Modus und die Phrasesuche zu unterstützen. 3) Die Optimierungsmethoden umfassen die Verwendung der Word -Segmentierungstechnologie, die regelmäßige Wiederaufbauung von Indizes und die Anpassung der Cache -Größe, um die Leistung und Genauigkeit zu verbessern.

In dem Artikel werden mithilfe der Änderungstabelle von MySQL Tabellen, einschließlich Hinzufügen/Löschen von Spalten, Umbenennung von Tabellen/Spalten und Ändern der Spaltendatentypen, erläutert.

Die volle Tabellenscannung kann in MySQL schneller sein als die Verwendung von Indizes. Zu den spezifischen Fällen gehören: 1) das Datenvolumen ist gering; 2) Wenn die Abfrage eine große Datenmenge zurückgibt; 3) wenn die Indexspalte nicht sehr selektiv ist; 4) Wenn die komplexe Abfrage. Durch Analyse von Abfrageplänen, Optimierung von Indizes, Vermeidung von Überindex und regelmäßiger Wartung von Tabellen können Sie in praktischen Anwendungen die besten Auswahlmöglichkeiten treffen.

Ja, MySQL kann unter Windows 7 installiert werden, und obwohl Microsoft Windows 7 nicht mehr unterstützt hat, ist MySQL dennoch kompatibel damit. Während des Installationsprozesses sollten jedoch folgende Punkte festgestellt werden: Laden Sie das MySQL -Installationsprogramm für Windows herunter. Wählen Sie die entsprechende Version von MySQL (Community oder Enterprise) aus. Wählen Sie während des Installationsprozesses das entsprechende Installationsverzeichnis und das Zeichen fest. Stellen Sie das Stammbenutzerkennwort ein und behalten Sie es ordnungsgemäß. Stellen Sie zum Testen eine Verbindung zur Datenbank her. Beachten Sie die Kompatibilitäts- und Sicherheitsprobleme unter Windows 7, und es wird empfohlen, auf ein unterstütztes Betriebssystem zu aktualisieren.

Der Unterschied zwischen Clustered Index und nicht klusterer Index ist: 1. Clustered Index speichert Datenzeilen in der Indexstruktur, die für die Abfrage nach Primärschlüssel und Reichweite geeignet ist. 2. Der nicht klusterierte Index speichert Indexschlüsselwerte und -zeiger auf Datenzeilen und ist für nicht-primäre Schlüsselspaltenabfragen geeignet.

In Artikel werden beliebte MySQL -GUI -Tools wie MySQL Workbench und PhpMyAdmin beschrieben, die ihre Funktionen und ihre Eignung für Anfänger und fortgeschrittene Benutzer vergleichen. [159 Charaktere]

In Artikel werden Strategien zum Umgang mit großen Datensätzen in MySQL erörtert, einschließlich Partitionierung, Sharding, Indexierung und Abfrageoptimierung.

In dem Artikel werden in MySQL die Ablagerung von Tabellen mithilfe der Drop -Tabellenerklärung erörtert, wobei Vorsichtsmaßnahmen und Risiken betont werden. Es wird hervorgehoben, dass die Aktion ohne Backups, die Detaillierung von Wiederherstellungsmethoden und potenzielle Produktionsumfeldgefahren irreversibel ist.
