Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL-Variablen im ALTER TABLE-Skript

Bei der Verwendung von Variablen als Spaltennamen und Tabellen wäre es am besten, DECLARE zu machen eine Abfrage als "Zeichenfolge" und führen Sie diese Zeichenfolge dann über ein Prepared Statement .

Dies kann auf zwei Arten erfolgen, entweder durch CONCAT() um die vollständige Zeichenfolge zu erstellen oder indem Sie PREPARE verwenden mit Argumenten:

SET @query = CONCAT('ALTER TABLE ', var_referenced_table_name, ' DROP FOREIGN KEY ', var_constraint_name, ';');
PREPARE stmt FROM @query; 
EXECUTE stmt; 
DEALLOCATE PREPARE stmt;