SQL-Anweisung DROP-TRIGGER WENN EXISTIERT sys_menu_edit; Erstellen Sie den Trigger sys_menu_edit vor dem Update auf sys_menu für jede Zeile BEGINNEN INSERT INTO `g4m`.`sys_log` ( `table_name`, `val_id`, `data_json` ) WERTE ( "sys_menü", alte.id, KONKAT( "{", CONCAT_WS( ',', CONCAT_WS(alte.id, '"id":"', '"' ), CONCAT_WS(alter.CODE, '"Code":"', '"'), CONCAT_WS( alt.type_dic, '"type_dic":"', '"' ), CONCAT_WS(alter.NAME, '"name":"', '"' ), CONCAT_WS(alte.pid, '"pid":"', '"'), CONCAT_WS( alt.status_dic, '"status_dic":"', '"' ), CONCAT_WS(alte.URL, '"URL":"', '"'), CONCAT_WS(alter.Pfad, '"Pfad":"', '"' ), CONCAT_WS(altes Symbol, '"Symbol":"', '"'), CONCAT_WS(alt.sort, '"sort":"', '"'), CONCAT_WS( alte.Anmerkung, '"Anmerkung":"', '"' ), CONCAT_WS( alt.Erstellungszeit, '"Erstellungszeit":"', '"' ), CONCAT_WS( alt.modify_uer_id, '"modify_uer_id":"', '"' ), CONCAT_WS( alt.Änderungszeit, '"Änderungszeit":"', '"' ) ), "}" ) ); MySQL verwendet Trigger zur Implementierung der Protokollierung
Insgesamt gibt es zwei Tabellen, eine ist die ursprüngliche Tabelle „News“ und die andere ist die Protokolltabelle „news_logs“ (mit einer zusätzlichen Datumsspalte), die automatisch Protokolle aufzeichnen kann, wenn neue Einträge eingefügt werden, ohne dass Code geschrieben werden muss. Ebenso können Sie beim Aktualisieren auch Update-Logs einfügen. Näheres dazu finden Sie in der MySQL-Dokumentation. MySQL verwendet Trigger zum Aufzeichnen von Vorgängen MySQL kann Einfüge-, Aktualisierungs- und Löschvorgänge nicht in einem Trigger ausführen. Sie müssen drei Trigger separat erstellen. Trigger einfügen: Trennzeichen $$ Trigger tri_city_insert erstellen nach dem Einfügen auf t_xfw_city für jede Zeile beginnen einfügen in t_tri_city(id,name,provinceid,ctype) Werte(neue.ID, neuer.Name, neue.Provinz-ID, 1); Ende Auslöser der Aktualisierung: Trennzeichen $$ Trigger „tri_city_update“ erstellen nach dem Update auf t_xfw_city für jede Zeile beginnen einfügen in t_tri_city(id,name,provinceid,ctype) Werte(neue.ID, neuer.Name, neue.Provinz-ID, 2); Ende Auslöser löschen: Trennzeichen $$ Trigger tri_city_delete erstellen nach dem Löschen auf t_xfw_city für jede Zeile beginnen einfügen in t_tri_city(id,name,provinceid,ctype) Werte (alte ID, alter Name, alte Provinz-ID, 3); Ende Es ist etwas mühsam, drei Trigger für eine Tabelle zu erstellen. Ich frage mich, ob es einen besseren Weg gibt. Das könnte Sie auch interessieren:
|
<<: Grundlegende Ideen und Codes zur Implementierung von Videoplayern in Browsern
>>: Javascript zum Wechseln von Bildern per Mausklick
Lesetipp: MySQL 8.0.19 unterstützt Kontosperrfunk...
Inhaltsverzeichnis 1. MySQL-Datensicherung 1.1. m...
Webdesigner zu sein ist nicht einfach. Sie müssen...
p>Manuell in "Dienste" starten und e...
Inhaltsverzeichnis Verwendete Pygame-Funktionen E...
Installieren Sie TomCat unter Windows Dieser Arti...
Erstellen Sie eine ansprechende Anmelde- und Regi...
Dieser Artikel beschreibt anhand von Beispielen d...
Einführung in Vue Die aktuelle Ära der großen Fro...
Inhaltsverzeichnis Überblick Die vier Hauptobjekt...
Inhaltsverzeichnis iview-admin2.0 integrierte Ber...
Abschluss: Wenn in einer Multithread-Umgebung ein...
<br />Originaltext: http://andymao.com/andy/...
Vorwort Dieser Artikel stellt hauptsächlich die r...
Die Inhaltseigenschaft wurde bereits in CSS 2.1 e...