Hallo,
ich bin gerade dabei, mich ein wenig in die (für mich neuen) MySql Trigger einzulesen.
Die Beschreibung ist ordentlich, auch findet man viele Tutorials...
Das WIE ist also an sich nicht das Problem.
Vielmehr bin ich gerade auf einer Seite für Mysql-Perfromance-Tipps auf die Aussage "use trigger wisely" gestoßen, ohne jedoch irgendwo nähere Angaben dazu finden zu können.
Daraus ergeben sich für mich nun 2 Fragen, auf die ich im Netz (danke "G") leider keine ausreichenden Antworten finden konnte.
Deswegen hoffe ich, ihr könnt mir helfen:
a) Wie performant sind Trigger?
Grundsätzlich ist es ja so, das ich so ziemlich jeden Trigger auch als einzelne Mysql-Anweisungen schreiben könnte.
Also selbst ein "doppelter" Trigger, der bei einem INSERT zusätzlich ein INSERT in Tabelle 2 und ein UPDATE in Tabelle 3 machen soll, ließe sich ja auch als
schreiben.
Das sind 3 Mysql-Statements, die abgefeuert werden, während die "Trigger-Events" ja innerhalb von MySql vordefinierte Objekte feuern.
b) Wenn ich mir nun also mein Fallbeispiel aus a) ansehe, stellt sich mir die Frage, WANN nutze ich eigentlich Trigger anstatt oben genannter Einzelanweisungen oder stored procedures?
Mir ist bewusst, das meine Fragestellung recht allgemein sein mag, aber ich hoffe, ihr könnt mir hier ein wenig Licht ins Trigger-Dunkel bringen.
ich bin gerade dabei, mich ein wenig in die (für mich neuen) MySql Trigger einzulesen.
Die Beschreibung ist ordentlich, auch findet man viele Tutorials...
Das WIE ist also an sich nicht das Problem.
Vielmehr bin ich gerade auf einer Seite für Mysql-Perfromance-Tipps auf die Aussage "use trigger wisely" gestoßen, ohne jedoch irgendwo nähere Angaben dazu finden zu können.
Daraus ergeben sich für mich nun 2 Fragen, auf die ich im Netz (danke "G") leider keine ausreichenden Antworten finden konnte.
Deswegen hoffe ich, ihr könnt mir helfen:
a) Wie performant sind Trigger?
Grundsätzlich ist es ja so, das ich so ziemlich jeden Trigger auch als einzelne Mysql-Anweisungen schreiben könnte.
Also selbst ein "doppelter" Trigger, der bei einem INSERT zusätzlich ein INSERT in Tabelle 2 und ein UPDATE in Tabelle 3 machen soll, ließe sich ja auch als
PHP-Code:
INSERT INTO Tabelle 1...
INSERT INTO Tabelle 2...
UPDATE Tabelle 3
Das sind 3 Mysql-Statements, die abgefeuert werden, während die "Trigger-Events" ja innerhalb von MySql vordefinierte Objekte feuern.
b) Wenn ich mir nun also mein Fallbeispiel aus a) ansehe, stellt sich mir die Frage, WANN nutze ich eigentlich Trigger anstatt oben genannter Einzelanweisungen oder stored procedures?
Mir ist bewusst, das meine Fragestellung recht allgemein sein mag, aber ich hoffe, ihr könnt mir hier ein wenig Licht ins Trigger-Dunkel bringen.
Kommentar