在codeigniter中使用多个数据库连接时引用错误的数据库

时间:2013-08-14 07:49:44

标签: codeigniter

我在Codeigniter控制器_contruct中串行加载了两个不同的数据库。当我调用第二个数据库时,它工作正常,但第一个加载的数据库是指第二个加载的数据库。

function __construct(){
  parent::__construct();  

 $this->liveDB = $this->load->database('liveDB', TRUE);
 $this->metricsDB = $this->load->database('metricsDB', TRUE);
}

我的行动

$this->metricsDB->query("") // working good

$this->liveDB->query("") // referring database metricsDB

注意:如果我更改 __ construct 中的顺序,则其工作方式

2 个答案:

答案 0 :(得分:1)

这可能是由持久连接,设置

引起的
$db['livDB']['pconnect'] = FALSE;
$db['metricsDB']['pconnect'] = FALSE;

在您的数据库配置中查看是否有帮助

答案 1 :(得分:0)

查看CI User guide

如果您需要同时连接到多个数据库,可以按照以下步骤操作:

$liveDB = $this->load->database('liveDB', TRUE);
$metricsDB = $this->load->database('metricsDB', TRUE);

然后你可以使用:

$metricsDB->query();
$metricsDB->result();