gpt4 book ai didi

symfony - 如何使用 Symfony2 创建第二个数据库连接?

转载 作者:行者123 更新时间:2023-12-01 10:34:27 25 4
gpt4 key购买 nike

我正在尝试将第二个数据库连接到我在 Symfony2 中的项目。首先,我在 parameters.yml 中添加了一些参数来创建连接。

然后,我编辑了我的 config.yml,现在看起来像:

doctrine:
dbal:
default_connection: default
connections:
default:
driver: pdo_mysql
host: "%database_host%"
port: "%database_port%"
dbname: "%database_name%"
user: "%database_user%"
password: "%database_password%"
charset: UTF8
circutor3:
driver: pdo_sqlsrv
host: "%database_host_circutor3%"
port: "%database_port_circutor%"
dbname: "%database_name_circutor%"
user: "%database_user_circutor3%"
password: "%database_password_circutor3%"
charset: UTF8
orm:
auto_generate_proxy_classes: "%kernel.debug%"
naming_strategy: doctrine.orm.naming_strategy.underscore
auto_mapping: true

最后,我尝试在我的 Controller 中使用以下代码建立连接:

$em = $this->getDoctrine()->getManager('circutor3');

并且,Symfony2 返回的错误:

Doctrine ORM Manager named "circutor3" does not exist.

circutor3 连接到我系统外部的数据库,因此我不需要创建实体或对象。我只需要执行一些 SELECT 来获取信息并使用数组存储它。

创建典型的 mysqli 连接是解决我的问题的最佳方法吗?我不知道如何用 Symfony 解决这个问题。提前谢谢你。

最佳答案

您可以按如下方式访问 Controller 中的数据库连接:

    $connection = $this->getDoctrine()->getConnection('circutor3');

然后将连接用作:

$stmt = $connection->prepare($sql);
$stmt->execute();
return $stmt->fetchAll();

一些帮助 herehere

希望对你有帮助

关于symfony - 如何使用 Symfony2 创建第二个数据库连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38207655/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com