具有多个数据库连接的编码点火器查询探查器


Codeigniter query profiler with multiple database connection

我正在使用codeigniter 2.0++或特别是3.0-dev。问题是我有多个数据库连接,而探查器仅显示来自默认连接$this->db的查询。

class table_m extends CI_Model
{
    function __construct()
    {
        parent :: __construct(); 
        $this->db2 = $this->load->database('production', TRUE);
    }
    function sel_pameran($ukmper=NULL)
    {
        $sql = "SELECT * from table1";
        $query = $this->db2->query($sql);
        return $query->result();
    }
}

此查询不会显示在探查器中,因为它使用 $this->db2 。那么,如何使探查器显示执行的每个查询,而与哪个数据库无关紧要?

看到这个问题。 这是一个更简单的解决方案。在模型中加载数据库时,如何在 Codeigniter 分析器中显示数据库查询?

只需将数据库存储到主 CI 类,探查器即可访问它们。

function __construct()
{
    parent::__construct();
    $CI =& get_instance();
    if( is_null( $CI->Companies_db ) )
        $CI->Companies_db =& $this->load->database( 'companies', TRUE, TRUE );          
}

我也有类似的问题。我正在使用本地mysql数据库,并且还访问了远程Oracle数据库。探查器中未显示 Oracle 查询。

这篇文章帮助我解决了这个问题:

http://www.gotphp.com/codeigniter-multiple-database-support/5468/