[英]Codeigniter Multiple Database connections
我正在深入研究多種數據庫用法。 根據codeigniter用戶指南。 要連接到其他數據庫,請使用以下命令
$db2 = $this->load->database('second');
然后互動使用,
$db2->get('second_table');
我在非對象上收到成員函數“where()”的致命錯誤調用。
對於以下行
$db2->where('field1', $data['item']);
還有
$db2->get('second_table');
我哪里錯了?
謝謝你的幫助。
要返回數據庫對象,需要傳遞TRUE作為第二個參數:
$db2 = $this->load->database('second', TRUE);
有關詳細信息,請參閱數據庫類手冊 。
還要確保已在application / config / database.php中加載該數據庫的配置
$db['default']['hostname'] = 'localhost';
//.........
$db['second']['hostname'] = 'localhost';
//..........
在config / database.php中
/
* DB1 */
$active_group = "forum";
$active_record = TRUE;
$db['DB1']['hostname'] = "xxxxx";
$db['DB1']['username'] = "xxxxx";
$db['DB1']['password'] = "xxxxx";
$db['DB1']['database'] = "xxxxx";
and other configs....
/* DB2 */
$db['DB2']['hostname'] = "xxxxx";
$db['DB2']['username'] = "xxxxx";
$db['DB2']['password'] = "xxxxx";
$db['DB2']['database'] = "xxxxx";
$db['DB2']['dbdriver'] = "mysql";
$db['DB2']['dbprefix'] = "";
and so on...
你可以使用數據庫
$this->DB1 = $this->CI->load->database('DB1', TRUE);
$this->DB2 = $this->CI->load->database('DB2', TRUE);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.