Létrehozása triggerek mysql

Létrehozása triggerek mysql

Kiváltó - a tárolt eljárásokat. végezzük bekövetkezésekor bizonyos eseményeket. Az esemény célja, hogy küldjön egy külön kérésére. Például, amikor adatokat visz be a táblázatból okozhatja a ravaszt, és egy adott kód végrehajtása.

Annak ellenőrzésére, hogy a kiváltó működik, hozzunk létre egy táblázatot akkor 2. Az első táblázat - ez ország (ok):

  • id - egyedi azonosítót.
  • cím - a cím az ország.

Táblázat városokban (városok):

  • id - egyedi azonosítót.
  • cím - A cím a város.
  • country_id - id, az ország, amely tartozik a város.

Most tegyük úgy, hogy ha hirtelen eltávolítása rekordot a táblázatból országaival, mind a városok tartozó adott országban, eltávolítjuk a táblát a városokban.

Ez a trigger jön létre MySQL a következő:

DELIMITER //
CREATE TRIGGER `delete_cities` törlés előtt ON` ba irányuló
Minden egyes sor BEGIN
DELETE FROM `cities` WHERE` country_id` = OLD.`id`;
VÉGE

Miután létrehozta a ravaszt, miközben eltávolítja az ország automatikusan törlődik a másik asztalnál mind a városok tartozó ebben az országban. Most vizsgáljuk meg a ravaszt több alkotás szintaxis:

  • DELIMITER - szeparátor, ami meg kell határozni, különben „” hibát generál.
  • `Delete_cities` - ez csak a neve a ravaszt.
  • Törlés előtt - ez a parancs azt jelenti, hogy a ravaszt majd tüzet azonnal eltávolítása előtt a rekordok. Ehelyett ELŐTT lehet UTÁN. helyett DELETE másik esemény, például INSERT vagy UPDATE.
  • `Országból történő - a tábla neve, amelyen a ravaszt be van állítva.
  • Minden egyes sor - az elején a parancs végrehajtásra, ha a ravaszt bekövetkezik.
  • BEGIN és END - egyetlen mondat végrehajtás parancsot.
  • OLD.`id` - fordul a mező `id` rekordok törléséhez egy table` országban`.

Azt kell mondanom, hogy én itt látható egy egyszerű példát. A valóságban a kód után minden egyes sorában nem lehet 2 sor, és nagyon, nagyon nagy. Ott is írhat hurkok, feltételek, a különböző összehasonlításokat és még sok más.

Ez a módja annak, hogy hozzon létre egy aktiválási MySQL.

Kapcsolódó cikkek