Spouštěče vám umožňují vykonávat funkci v databázi, když nastanou určité události (např. vložení do tabulky).
Nemohu se konkrétně vyjádřit k mysql.
Upozornění:Spouštěče mohou být velmi lákavé, když je poprvé začnete používat, vypadají jako kouzelná kulka na všechny druhy problémů. Ale dělají "kouzelné" věci, pokud neznáte databázi naruby, může se zdát, že se dějí opravdu podivné věci (jako jsou vkládání do jiných tabulek, změna vstupních dat atd.). Před implementací věcí jako spouštěče bych místo toho vážně uvažoval o vynucení použití API kolem schématu (nejlépe v databázi, ale pokud to nejde, mimo).
Pro některé věci bych stále používal spouštěče
- Sledování polí „date_created“ a „date_last_edited“
- Vložení "ID" (v oracle, kde není pole auto id)
- Uchování historie změn
Věci, pro které byste nechtěli používat spouštěče
- obchodní pravidla/logika
- cokoli, co se připojuje mimo databázi (např. volání webové služby)
- Řízení přístupu
- Cokoli, co není transakční (cokoli, co uděláte ve spouštěči, MUSÍ být možné vrátit zpět s transakcí)