原则2在纯php中连接多个数据库
我已经四处寻找了一种使用doctrine 2连接多个数据库的方法,但到目前为止,我所找到的都是解决方法,但我不知道如何修改配置文件来实现这一点原则2在纯php中连接多个数据库,php,mysql,doctrine-orm,Php,Mysql,Doctrine Orm,我已经四处寻找了一种使用doctrine 2连接多个数据库的方法,但到目前为止,我所找到的都是解决方法,但我不知道如何修改配置文件来实现这一点 //my config.php file $isDevMode = true; $path = array(ROOTPATH."/src"); $config = Setup::createAnnotationMetadataConfiguration($path, $isDevMode); // database configuration par
//my config.php file
$isDevMode = true;
$path = array(ROOTPATH."/src");
$config = Setup::createAnnotationMetadataConfiguration($path, $isDevMode);
// database configuration parameters
$conn = array(
'driver' => 'pdo_mysql',
'user' => 'root',
'password' => '',
'dbname' => 'test',
);
// obtaining the entity manager
$entityManager = EntityManager::create($conn, $config);
在这个主题上,公认的答案是我必须创建多个实体管理器,这是逻辑,但当我在PHP选项卡上(我使用PHP作为注释)时,我迷路了。我不知道如何更改我已经存在的配置文件。
然后我找到了一个关于加入数据库的文档,但它看起来与我的非常不同,可能是因为它是一个较旧的版本,我不知道这是否仍然有效,但我没有测试过它,因为我没有使用yaml,而且没有任何解释说明如何在不使用框架或yaml的情况下做到这一点,xml注释。Doctrine不支持这种开箱即用的方法,因为跨数据库查询只适用于mysql,即使这样,也只有两个数据库的工作在同一台服务器上。但是,在映射实体时,可以通过将数据库名称作为表名称的一部分来“愚弄”原则:database_name.table_name。当然,这也有它自己的问题。