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

¿Por qué no puedo usar una variable como nombre de tabla en un procedimiento almacenado?

Necesitas usar sql dinámico. ya, ugh.

SET @s = CONCAT('UPDATE ', _tablename, ' SET ', _columnname, ' = NULL WHERE LENGTH(TRIM(', _columnname, ')) = 0' );
PREPARE stmt FROM @s;
EXECUTE stmt;