2012-04-15 48 views
0

我有許多數據庫連接 我在database.php中文件笨如何使用database.php中爲第一連接和模型第二連接

$active_group = 'default'; 
$active_record = TRUE; 
$db['default']['hostname'] = 'xxx'; 
$db['default']['username'] = 'xxx'; 
$db['default']['password'] = 'xxxx'; 
$db['default']['database'] = 'xxx'; 
$db['default']['dbdriver'] = 'mysql'; 
$db['default']['dbprefix'] = ''; 
$db['default']['pconnect'] = TRUE; 
$db['default']['db_debug'] = TRUE; 
$db['default']['cache_on'] = FALSE; 
$db['default']['cachedir'] = ''; 
$db['default']['char_set'] = 'utf8'; 
$db['default']['dbcollat'] = 'utf8_general_ci'; 
$db['default']['swap_pre'] = ''; 
$db['default']['autoinit'] = TRUE; 
$db['default']['stricton'] = FALSE; 

主連接和我有更多的連接來連接多數據庫.. 但我必須使用[模型]

我可以將參數傳遞給database.php中配置另一個連接?

還是可以的,我把這樣的代碼在型號

$db['xxx']['hostname'] = 'xxx'; 
$db['xxx']['username'] = 'xxx'; 
$db['xxx']['password'] = 'xxxx'; 
$db['xxx']['database'] = 'xxx'; 
$db['xxx']['dbdriver'] = 'mysql'; 
$db['xxx']['dbprefix'] = ''; 
$db['xxx']['pconnect'] = TRUE; 
$db['xxx']['db_debug'] = TRUE; 
$db['xxx']['cache_on'] = FALSE; 
$db['xxx']['cachedir'] = ''; 
$db['xxx']['char_set'] = 'utf8'; 
$db['xxx']['dbcollat'] = 'utf8_general_ci'; 
$db['xxx']['swap_pre'] = ''; 
$db['xxx']['autoinit'] = TRUE; 
$db['xxx']['stricton'] = FALSE; 

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

回答

1

我通常定義在database.php中的其他數據庫連接(因爲你擁有它上面),然後在模型中,你可以調用它,如:

$this->xxx_db = $this->load->database('xxx', true); 
$this->xxx_db->set($params); 
$sql = $this->xxx_db->insert('table_name'); 

這樣做它保持在一個地方所有的連接 - 它更易於維護。

你可能也想看到這個問題:Multiple database connections。我不完全清楚你有什麼問題。

+1

我想使用datamapper也 – 2012-04-15 19:17:09

相關問題