2010-11-18 5 views
2

Laut Handbuch:Benutzerdefinierte MySQL-Variablenwerte können nicht als Bezeichner verwendet werden. Wie mache ich das?

Benutzervariablen ... kann nicht direkt in einer SQL-Anweisung als Kennung oder als Teil einer Kennung, wie in Kontexten verwendet werden, in denen eine Tabelle oder Datenbanknamen

wird

erwartet was erklärt, warum, was ich habe versucht, nicht funktioniert:

set @databaseName := 'job_hunt_2'; 

drop database @databaseName; 
create database @databaseName; 
use @databaseName; 

Gibt es einen Weg, dies zu erreichen, oder ist es einfach unmöglich? Vielen Dank!

Antwort

3

kann sein, sollten Sie folgenden Ansatz versuchen:

set @databaseName := 'job_hunt_2'; 
SET @s = CONCAT('drop database ', @databaseName); 
PREPARE stmt1 FROM @s; 
EXECUTE stmt1; 
DEALLOCATE PREPARE stmt1; 
Verwandte Themen