Создайте базу данных, если не существует в переполнении FuelStack

Прежде всего, у меня нет базы данных, и я пишу код в миграциях для создания базы данных, таблицы и данных. Я хочу проверить, не существует ли база данных, а затем автоматически создать новую базу данных с именем в db connect и попытаться перехватить это соединение в случае ошибки.

public function up()
{
try {
\DBUtil::create_database('database_name', 'utf8_general_ci', true);
// the true flag adds a IF NOT EXISTS
} catch(\Database_Exception $e) {
echo $e->getMessage();
}
}

попробуйте код, но выдают ошибку «Неизвестное имя_базы_данных базы данных», когда я запускаю «php oil fine migrate» в командной строке

Могу ли я попробовать поймать пользовательское исключение этой ошибки?

1049!

Fuel\Core\Database_Exception [ 1049 ]:
SQLSTATE[HY000] [1049] Unknown database 'database_name'

0

Решение

Создание базы данных не является чем-то, что обычно выполняется миграциями, поскольку это связывает вас с использованием одного и того же имени БД все время, если вы развертываете несколько сайтов на одном сервере или у вас есть похожий сценарий, это становится большой проблемой.

Обычно предполагается, что сама база данных была создана как часть настройки, либо ручной, либо автоматической, поэтому она доступна для подключения к PHP.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]