Bạn không thể chỉ định rằng trình kích hoạt chỉ được chạy khi cập nhật các cột cụ thể (UPDATE
ảnh hưởng đến toàn bộ bản ghi), nhưng bạn có thể kiểm tra cột nào đã được cập nhật trong trình kích hoạt của mình:
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 ;