Я нашел свое собственное решение, поэтому я собираюсь ответить на свой вопрос, на случай, если кому-то будет интересно.
@ Если вы правы, использовать команду с переменной USE
.
невозможно.
Однако из-за того, что я хочу создать таблицу в базе данных, указанной во время выполнения, мое решение будет заключаться в использовании динамического SQL:
set @schema="testDB";
set @front="CREATE TABLE IF NOT EXISTS ";
set @endpart=".`TEST1` (DIM_ID INT(16)) ENGINE = InnoDB DEFAULT CHARACTER SET = utf8 COLLATE = utf8_unicode_ci;";
set @stat=concat(@front,@schema,@endpart);
prepare command from @stat;
execute command;
Таким образом, в основном это решение создает оператор, подготавливает и выполняет его.
Параметр @schema можно даже вставить в скрипт. Таким образом, я динамически создаю оператор create.