MySQL triggers

Here are some examples of triggers creation syntax (MySQL user needs the SUPER privilege) :

DELIMITER //

CREATE TRIGGER `ai_trigger_name` AFTER INSERT ON `related_table_name`
  FOR EACH ROW BEGIN
    INSERT INTO some_table (row1, row2, row3) VALUES (NEW.row1, NEW.row2, NEW.row3);
    INSERT INTO another_table (row1, row2, row3) VALUES (NEW.row1, NEW.row2, NEW.row3);
  END;
//

CREATE TRIGGER `au_trigger_name` AFTER UPDATE ON `related_table_name`
  FOR EACH ROW UPDATE some_table SET row1 = NEW.row1, row2 = NEW.row2, row3 = NEW.row3 WHERE id = NEW.id;
//

CREATE TRIGGER `ad_trigger_name` AFTER DELETE ON `related_table_name`
  FOR EACH ROW DELETE FROM some_table WHERE row1 = OLD.row1;
//

DELIMITER ;

post a comment