/ Gists / Triggers
On gists

Triggers

MySql MySql tricks MySql - advanced

clanky.sql Raw #

CREATE TRIGGER diskuse_ai AFTER INSERT ON diskuse FOR EACH ROW UPDATE clanky SET diskuse_pocet = diskuse_pocet + 1 WHERE id = NEW.clanek;
CREATE TRIGGER diskuse_ad AFTER DELETE ON diskuse FOR EACH ROW UPDATE clanky SET diskuse_pocet = diskuse_pocet - 1 WHERE id = OLD.clanek;
CREATE TRIGGER diskuse_au AFTER UPDATE ON diskuse FOR EACH ROW UPDATE clanky SET diskuse_pocet = diskuse_pocet + IF(id = NEW.clanek, 1, -1) WHERE id = OLD.clanek XOR id = NEW.clanek;

only-one-row.sql Raw #

-- https://diskuse.jakpsatweb.cz/?action=vthread&forum=28&topic=172769#7

IF NEW.id = 10
THEN
  UPDATE mantis_custom_field_table
  SET possible_values = NEW.possible_values
  WHERE id = 11
        AND NOT possible_values <=> NEW.possible_values;
END IF;