Mysql
 sql >> Base de données >  >> RDS >> Mysql

Pourquoi ne puis-je pas utiliser une variable comme nom de table dans une procédure stockée ?

Vous devez utiliser sql dynamique. oui, pouah.

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