w3schools update trigger insertar ejemplos ejemplo despues delete before and mysql loops triggers calculated-columns

update - bucle a través de columnas en el disparador mysql



trigger mysql w3schools (1)

¿Es posible recorrer todos los nombres de columna mientras está dentro de un desencadenador?

Escenario: para registrar todas las columnas de una tabla que se han modificado. Si algunos valores no cambiaron, no registre esos.

DROP TRIGGER IF EXISTS t_before_update_test; DELIMITER $$ CREATE TRIGGER t_before_update_test BEFORE UPDATE ON test FOR EACH ROW BEGIN -- Loop here for all columns, not just col1 IF OLD.col1 <> NEW.col1 THEN INSERT INTO change_logs( log_on, user_id, table_name, colum_name, old_data, new_data ) VALUES ( UNIX_TIMESTAMP(NOW()), ''0'', ''test'', ''col1'', OLD.col1, NEW.col1 ); END IF; -- process looping all columns -- col1, col2, ... should be dynamic per loop END $$

Este es un ejemplo de copia de trabajo, donde ahora necesito recorrer todas las columnas disponibles en VIEJO o NUEVO.