sql >> Base de Datos >  >> RDS >> Mysql

MySQL dispara la sintaxis de 'actualización en la columna'

No puede especificar que el activador se ejecute solo en la actualización de columnas específicas (un UPDATE afecta a todo el registro), pero puede probar qué columnas se han actualizado dentro de su disparador:

DELIMITER ;;

CREATE TRIGGER my_trigger BEFORE UPDATE ON TABLE_NAME FOR EACH ROW
IF NOT (NEW.col1 <=> OLD.col1 AND NEW.col2 <=> OLD.col2) THEN
  SET NEW.col3 = NEW.col3 + 1;
END IF;;

DELIMITER ;