使用codeigniter连接两个以上的数据库

使用codeigniter连接两个以上的数据库,codeigniter,multiple-databases,Codeigniter,Multiple Databases,我正在做一个需要连接三个数据库的项目,一个在MySQL中,另两个在MSSQL中。我使用codeigniter作为框架,我可以成功地连接到两个数据库。但是,当我尝试使用与连接第二个MSSQL数据库相同的方法连接第三个MSSQL数据库时,以前的所有连接都消失了。database.php中的数据库配置数组是正确的 默认配置是针对MySQL的 我连接了第二个db,如下所示 $mssql = $this->load->database('mssql1', TRUE); 第三个问题如下 $ms

我正在做一个需要连接三个数据库的项目,一个在MySQL中,另两个在MSSQL中。我使用codeigniter作为框架,我可以成功地连接到两个数据库。但是,当我尝试使用与连接第二个MSSQL数据库相同的方法连接第三个MSSQL数据库时,以前的所有连接都消失了。database.php中的数据库配置数组是正确的

默认配置是针对MySQL的

我连接了第二个db,如下所示

$mssql = $this->load->database('mssql1', TRUE);
第三个问题如下

$mssq2 = $this->load->database('mssql2', TRUE);

提前感谢

我通过更改codeigniter DB_driver.php中的simple_query函数修复了它

function simple_query($sql)
{
    if ( ! $this->conn_id)
    {
        $this->initialize();
    }
    $this->db_select();

    return $this->_execute($sql);
}
添加了$this->db_select()此函数的默认值。
感谢所有帮助

当您仅使用1(MySQL)和3(MSSQL)时,它是否有效?是的,实际上是两个MSSQL连接导致了问题。除数据库名称外,两者都具有相同的凭据。MySQL+其中一个mssql连接工作正常。但我需要同时连接这三个。您使用的是哪个版本?我发现了一些与此相关的随机错误并修复了它,但如果我能记得在哪里,我会被诅咒的。它可能在3.0(在GitHub上开发)中,我使用的是codeigniter 2.1。SQL server版本5。是否已将pconnect设置为TRUE?