Как выбрать схему на основе переменной?

Рассмотрим:

SET @PREFIX='DEV_';

SET @REFRESHDB=CONCAT(@PREFIX,'Refresh');

CREATE TABLE @REFRESHDB.`Metadata`
(
    `Key` VARCHAR(30) NOT NULL,
    `Value` VARCHAR(30) NOT NULL,
    PRIMARY KEY (`Key`)
) ENGINE = InnoDB;

INSERT INTO @REFRESDB.`Metadata` (`Key`, `Value`) VALUES ("Version", "0");

Это не похоже на действительность: mysql возвращается с:

У вас ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, для правильного синтаксиса, чтобы использовать рядом с '@REFRESHDB.`Metadata'

Насколько я могу судить, я все сделал правильно в соответствии с документацией. Тем не менее, MySQL говорит, что это запрещено. Это какое-то ограничение MySQL (не позволяющее использовать переменные в качестве идентификаторов) или что-то другое?

11
задан Billy ONeal 30 September 2011 в 15:29
поделиться