trigl sql Tengo un error al almacenar el nombre de la columna en la variable y lo uso para OLD.myvar en sql triggers

MySQL dijo: # 1054 - Columna desconocida 'TMPCOL' en 'OLD'

BEGIN
DECLARE TOTAL,I INT;
DECLARE CURRENT_CLOUMN VARCHAR(255);
DECLARE TRIGGER_ON_TABLE VARCHAR(255);
DECLARE TRIGGER_OP VARCHAR(255);
DECLARE olddd VARCHAR(255);
DECLARE newwww VARCHAR(255);
SET TOTAL=0;
SET I=0;
SET CURRENT_CLOUMN='atulbaldaniya.com';
SET TRIGGER_ON_TABLE='atulbaldaniya';
SET TRIGGER_OP='UPDATE';
SET olddd='';
SET newwww='';

SELECT COUNT(COLUMN_NAME) INTO  TOTAL  FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = TRIGGER_ON_TABLE ORDER BY ORDINAL_POSITION;
    WHILE I < TOTAL DO
        SELECT COLUMN_NAME INTO CURRENT_CLOUMN FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = TRIGGER_ON_TABLE ORDER BY ORDINAL_POSITION LIMIT I,1;
        SET olddd=OLD.CURRENT_CLOUMN;
        SET newwww=NEW.CURRENT_CLOUMN;
            IF(olddd != newwww) THEN
                INSERT INTO TMP(DATA1, DATA2)VALUES(TOTAL ,CONCAT('Change in ',olddd,' To ',newwww))
            END IF; 
        SET I=I+1;
    END WHILE ;
END

No quiero
INSERT INTO TMP(DATA1, DATA2)VALUES(TOTAL ,OLD.ID);
Esto está funcionando bien.

Quiero almacenar el nombre de la columna en una variable y usar comoOLD.MYVAR

¿Cómo podemos hacer así?

Respuestas a la pregunta(1)

Su respuesta a la pregunta