thfei1982 发表于 2010-7-27 18:43:30

Doctrine如何连接多数据库?

本帖最后由 lamtin 于 2010-7-28 11:49 编辑

ci+Doctrine的开发过程中,遇到这个问题:
同时使用多个数据库的时候,不知道怎么选择数据库了,例如:
$db['default']['hostname'] = "localhost";
$db['default']['username'] = "mytables";
$db['default']['password'] = "123456";
$db['default']['database'] = "test";

$db['users']['hostname'] = "localhost";
$db['users']['username'] = "usertable";
$db['users']['password'] = "123456";
$db['users']['database'] = "alluser";

thfei1982 发表于 2010-7-27 18:48:33

试了一下,好像是第二个值起作用

thfei1982 发表于 2010-7-28 11:47:45

哎,自己的问题自己解决吧
参考这里:
http://codeigniter.com/wiki/Using_Doctrine_with_Code_Igniter/

数据库链接改成这样:
$db['default']['dsn'] = $db['default']['dbdriver'] .
      '://' . $db['default']['username'] .
      ':' . $db['default']['password'].
      '@' . $db['default']['hostname'] .
      '/' . $db['default']['database'];
    Doctrine_Manager::connection($db['default']['dsn'],$db['default']['database']);
   
    $db['users']['dsn'] = $db['users']['dbdriver'] .
      '://' . $db['users']['username'] .
      ':' . $db['users']['password'].
      '@' . $db['users']['hostname'] .
      '/' . $db['users']['database'];
    Doctrine_Manager::connection($db['users']['dsn'],$db['users']['database']);

应该还可以改成循环的形式,以后再加数据库不用再改这里了

aramisliu 发表于 2010-12-6 17:07:46

谢谢楼主。估计用Doctrine不多。我用CI肯定会用这个,学学习收藏了!
页: [1]
查看完整版本: Doctrine如何连接多数据库?