1

オブジェクト指向 PHP Codeigniter の初心者のため、ご容赦ください。https://github.com/NTICompass/CodeIgniter-Subqueriesでの使用について混乱して$this->subquery->defaultDB()いますか?

$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 ではなくデフォルトのデータベースを使用します。私は何か間違ったことをしていますか?ありがとうございました。

4

1 に答える 1

0

リポジトリに問題を作成しましたが、著者は数日で修正すると言いました。

このコードを急いで使用している場合は、別の方法があります。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;
}
于 2012-11-29T05:35:48.340 に答える