2012-11-28 42 views
1

對於面向對象的PHP Codeigniter中的初學者,請原諒。我很困惑在https://github.com/NTICompass/CodeIgniter-Subqueries中使用$this->subquery->defaultDB()在NTICompass CodeIgniter子查詢中使用不同的數據庫

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

$this->load->library('Subquery'); 
$this->subquery->defaultDB($db2) 
$sub = $this->subquery->start_subquery('select'); 
$sub->select('number')->from('numbers')->where('numberID', 2); 
$this->subquery->end_subquery('number'); 

$query = $db2->get('mytable'); 

但子查詢仍然使用默認的數據庫而不是db2。難道我做錯了什麼?謝謝。

回答

0

我已經創建了issue到它的倉庫,作者說他會在幾天內修復它。

如果您急於使用此代碼,我有其他選擇。我添加了參數defaultDB以用於子查詢。希望能幫助到你。乾杯!

function start_subquery($statement, $join_type='', $join_on=1, $defaultDB=''){ 
    $db = $this->CI->load->database($defaultDB, true); 
    $this->dbStack[] = $db; 
    $this->statement[] = $statement; 
    if(strtolower($statement) == 'join'){ 
     $this->join_type[] = $join_type; 
     $this->join_on[] = $join_on; 
    } 
    return $db; 
} 
相關問題