Avec l'utilisation de variables comme noms de colonnes et de tables, il serait préférable de DECLARE
une requête en tant que "chaîne", puis exécutez cette chaîne via un Prepared Statement
.
Cela peut être fait de deux manières, soit par CONCAT()
pour construire la chaîne complète ou en utilisant PREPARE
avec arguments :
SET @query = CONCAT('ALTER TABLE ', var_referenced_table_name, ' DROP FOREIGN KEY ', var_constraint_name, ';');
PREPARE stmt FROM @query;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;