Mysql
 sql >> Database >  >> RDS >> Mysql

trigger sql Ho un errore durante la memorizzazione del nome della colonna nella variabile e lo uso per OLD.myvar nei trigger sql

Dovresti costruire la tua query come una stringa, quindi prepararla ed eseguirla, qualcosa di simile a:

SET @s = CONCAT('INSERT INTO TMP(DATA1, DATA2) VALUES ("DATA",OLD.',TMPCOL,');');

PREPARE stmt1 FROM @s;
EXECUTE stmt1;
DEALLOCATE PREPARE stmt1;