无法从原则命令"orm:schema-tool:create"创建数据库



我正在学习本教程。http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/tutorials/getting-started.html

我正在使用mysql而不是sqlite.

以下命令应创建数据库。

php vendor/bin/doctrine orm:schema-tool:create

但它没有创造任何东西。如果我手动创建数据库,以下命令工作正常

php vendor/bin/doctrine orm:schema-tool:update --force

知道为什么该命令不起作用吗?

学说版本 2.4.1

试试这个链接:

vendor/bin/doctrine-module orm:schema-tool:create

用户学说模块而不是学说。

我遇到了类似的问题,发现下面的命令

php vendor/bin/doctrine orm:schema-tool:create

不创建数据库本身,它只创建架构/表。

我通过执行以下操作解决了这个问题:

<?php
include 'bootstrap.php';
use DoctrineORMToolsConsoleConsoleRunner,
    DoctrineORMEntityManager;
try {
    $entityManager->getConnection()->connect();
}
catch(Exception $ex) {
    $connection = EntityManager::create([
        'driver'   => 'pdo_mysql',
        'host'     => MYSQL_HOST,
        'user'     => MYSQL_USERNAME,
        'password' => MYSQL_PASSWORD,
        'charset' => 'UTF8'
    ], $config)->getConnection();
    $connection->executeUpdate('CREATE DATABASE '.MYSQL_DATABASE.' CHARACTER SET utf8 COLLATE utf8_general_ci');
}
return ConsoleRunner::createHelperSet($entityManager);
?>

基本上,脚本尝试连接到指定的数据库,如果失败,它将尝试创建数据库(假设允许用户执行数据库创建 - 删除此文件可能是谨慎的部署后)。

来源: http://www.cstruter.com/blog/395

相关内容

  • 没有找到相关文章

最新更新