【问题标题】:Codeigniter query profiler with multiple database connection具有多个数据库连接的 Codeigniter 查询分析器
【发布时间】:2012-04-18 06:35:10
【问题描述】:

我正在使用 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。那么如何让分析器显示每个执行的查询,不管来自哪个数据库?

【问题讨论】:

    标签: php codeigniter


    【解决方案1】:

    看到这个问题。这是一个更简单的解决方案How can I display my database queries in the Codeigniter Profiler when I load my databases in my models?

    只需将您的数据库存储到主 CI 类,分析器就可以访问它们。

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

    【讨论】:

    • 如果幸运的话,无需进一步调整,这将完美无缺。它兼容 2.X。
    【解决方案2】:

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

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

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

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 2012-01-06
    • 1970-01-01
    • 2015-01-05
    相关资源
    最近更新 更多