Определенные пользователем значения переменных MySQL не могут использоваться в качестве идентификаторов. Как мне это сделать? - PullRequest
2 голосов
/ 18 ноября 2010

Согласно инструкции:

Пользовательские переменные ... нельзя использовать непосредственно в операторе SQL как идентификатор или как часть идентификатор, такой как в контекстах, где ожидается имя таблицы или базы данных

Что объясняет, почему то, что я пробовал, не работает:

set @databaseName := 'job_hunt_2';

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

Есть ли способ сделать это, или это просто невозможно? Спасибо!

1 Ответ

3 голосов
/ 18 ноября 2010

может быть, вы должны попробовать следующий подход:

set @databaseName := 'job_hunt_2';
SET @s = CONCAT('drop database ', @databaseName); 
PREPARE stmt1 FROM @s; 
EXECUTE stmt1; 
DEALLOCATE PREPARE stmt1;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...