MySQL: Vorhandene Trigger anzeigen lassen und bearbeiten?

Herr_M

Erfahrenes Mitglied
Hallo,

Mit welchem Tool, mit dem man sich die in einer MySQL Datenbank/Schema vorhandenen Trigger anzeigen lassen kann?

Mit dem Query Browser von MySQL kann man diese ja nicht sehen.
Als alternative zu einem Tool, dass diese anzeigen kann wäre auch ein SQL Befehl recht, der diese auflisten oder anzeigen kann.

Gibt's eine der beiden Möglichkeiten?
 
Hallo Herr_M,

in der aktuellen Version von MySQL gibt es nur die Befehle CREATE und DROP für Trigger.

Um einen Trigger zu ändern musst du diesen erst löschen und dann neu erzeugen. Das setzt aber voraus, das du das alte Create-Statement noch hast.

Sonst kannst du die mit dieser Anweisung evtl.die Trigger ausgeben lassen
Code:
SELECT CONCAT('CREATE TRIGGER ', t.TRIGGER_SCHEMA, '.', t.TRIGGER_NAME,
              ' ', t.ACTION_TIMING, ' ', t.EVENT_MANIPULATION, ' ON ',
              t.EVENT_OBJECT_SCHEMA, '.', t.EVENT_OBJECT_TABLE,
              ' FOR EACH ROW ', t.ACTION_STATEMENT, '//' )
INTO OUTFILE '/tmp/triggers.sql'
FROM INFORMATION_SCHEMA.TRIGGERS AS t;
 
Hallo Bernd,

Vielen Dank für die Antwort, hat mir sehr weitergeholfen.
Vor allem dein Statement zum ausgeben der vorhandenen Trigger.

Denn das war das größte Problem bei meiner Aufgabe. Hab nämlich ein Projekt übernommen, von dem keiner so genau weiß ob und welche Trigger schon angelegt wurden.

Dank deiner Hilfe weiß ich ja jetzt wie ich das herausfinde. Habs auch schon getestet, funktioniert einwandfrei.
 
vielleicht wissen es ja schon alle, aber

Die Trigger sieht man auch sehr einfach, wenn man einen Dump der Datenbank macht und nach dem Wort 'Trigger' sucht (steht nach der Tabelle und deren Einträge)
 

Neue Beiträge

Zurück