Я заметил, что в вашем триггере нет терминаторов операторов, которые будут вызывать некоторые жалобы, потому что, например, SET @lgls = SELECT vgoles(NEW.eqloc) UPDATE equipos SET gf=@vgls WHERE id=NEW.eqvis
не имеет никакого смысла.Таким образом, вам нужно несколько точек с запятой в триггере, но вы также должны получить эти точки с запятой через анализатор, временно изменив разделитель.Вы также используете ON EACH ROW
, когда оно должно быть FOR EACH ROW
:
delimiter |
CREATE TRIGGER updpartido AFTER UPDATE ON partidos
FOR EACH ROW
BEGIN
SET @vgls = SELECT vgoles(NEW.eqvis);
SET @lgls = SELECT vgoles(NEW.eqloc);
UPDATE equipos SET gf=@vgls WHERE id=NEW.eqvis;
UPDATE equipos SET gf=@lgls WHERE id=NEW.eqloc;
END;
|
delimiter ;