0

我想连接到另一个数据库和/或在 symfony 中创建一个新数据库。我怎样才能做到这一点,同时可以访问它的表格?

我在应用程序中寻找如何做到这一点

php bin/console doctrine:query:sql 'SELECT * FROM product'

但找不到任何答案。

4

3 回答 3

1

你不能直接从 Symfony 创建数据库,但你可以使用Migrations来创建表。如果您愿意,您甚至可以使用bin/consoledoctrine:migrations:diff生成迁移,以基于您的实体生成迁移。

对于多个数据库,您可以使用服务容器来配置Doctrine ORM,然后在您的代码中您可以获取特定容器并从那里实例化教义。

另外,如果您有兴趣进行选择,我会看看DQL,因为它允许以下解决方案:

// This assumes an entity called 'entity' exists.
$query = $entityManager->createQueryBuilder('entity');
return $query->getResult();
于 2019-05-10T19:29:11.610 回答
0

您需要配置多个实体管理器,检查如何使用多个实体管理器和连接

然后您可以使用如下教义命令:

php bin/console doctrine:database:create --connection=<your_entity_manager_name>
php bin/console doctrine:query:sql --connection=<your_entity_manager_name>
于 2019-05-15T13:26:42.493 回答
0

看看这个,应该有帮助:https ://symfony.com/doc/current/doctrine/multiple_entity_managers.html

简而言之,您可以定义不同的实体管理器来处理不同的数据库连接

于 2019-05-10T21:53:20.753 回答