Overrides \Drupal\Core\Database\Connection::createDatabase().
string $database: The name of the database to create.
Overrides Connection::createDatabase
public function createDatabase($database) {
// Escape the database name.
$database = Database::getConnection()
->escapeDatabase($database);
// If the PECL intl extension is installed, use it to determine the proper
// locale. Otherwise, fall back to en_US.
if (class_exists('Locale')) {
$locale = Locale::getDefault();
}
else {
$locale = 'en_US';
}
try {
// Create the database and set it as active.
$this
->exec("CREATE DATABASE {$database} WITH TEMPLATE template0 ENCODING='utf8' LC_CTYPE='{$locale}.utf8' LC_COLLATE='{$locale}.utf8'");
} catch (\Exception $e) {
throw new DatabaseNotFoundException($e
->getMessage());
}
}