Должен ли это быть триггер "один после вставки"? Это будет иметь место, если вам нужно значение auto_increment для вычисления значения поля, которое вы хотите изменить. В противном случае должен сработать триггер «перед вставкой». Вы можете изменить значения полей для вставки через SET NEW.fieldname = newvalue
например. давайте возьмем стол
CREATE TABLE foo (id int auto_increment, x int, y int, primary key(id))
и создать триггер перед вставкой
delimiter |
CREATE TRIGGER footrigger BEFORE INSERT ON foo
FOR EACH ROW BEGIN
IF NEW.y > NEW.x THEN
SET NEW.y = -1;
END IF;
END;
|
А теперь давайте вставим две записи: одну, где y = x, и одну, где y> x
INSERT INTO foo (x,y) VALUES (1,1), (1,2)
A SELECT x,y FROM foo
затем возвращает
"x";"y"
"1";"1"
"1";"-1"