Bạn nên cung cấp tất cả thông tin cơ sở dữ liệu trong application/config/database.php´
Thông thường, bạn sẽ đặt nhóm cơ sở dữ liệu mặc định, như sau:
$db['default']['hostname'] = "localhost";
$db['default']['username'] = "root";
$db['default']['password'] = "";
$db['default']['database'] = "database_name";
$db['default']['dbdriver'] = "mysql";
$db['default']['dbprefix'] = "";
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = FALSE;
$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;
Lưu ý rằng thông tin đăng nhập và cài đặt được cung cấp trong mảng có tên $db['default']
.
Sau đó, bạn có thể thêm một cơ sở dữ liệu khác trong một mảng mới - hãy gọi nó là 'anotherdb'.
$db['anotherdb']['hostname'] = "localhost";
$db['anotherdb']['username'] = "root";
$db['anotherdb']['password'] = "";
$db['anotherdb']['database'] = "another_database_name";
$db['anotherdb']['dbdriver'] = "mysql";
$db['anotherdb']['dbprefix'] = "";
$db['anotherdb']['pconnect'] = TRUE;
$db['anotherdb']['db_debug'] = FALSE;
$db['anotherdb']['cache_on'] = FALSE;
$db['anotherdb']['cachedir'] = "";
$db['anotherdb']['char_set'] = "utf8";
$db['anotherdb']['dbcollat'] = "utf8_general_ci";
$db['anotherdb']['swap_pre'] = "";
$db['anotherdb']['autoinit'] = TRUE;
$db['anotherdb']['stricton'] = FALSE;
Bây giờ nếu bạn muốn sử dụng cơ sở dữ liệu thứ hai, chỉ cần truy cập
$DB_another = $this->load->database('anotherdb', TRUE);
và sau đó, thay vì $this->db->foo()
, bạn sẽ $DB_another->foo()
và bạn có thể mở rộng điều này cho nhiều nhóm như thế này
$DB2 = $this->load->database('anotherdb1', TRUE);
$DB3 = $this->load->database('anotherdb2', TRUE);
Để biết chi tiết, hãy xem tại đây: http://ellislab.com/codeigniter/ hướng dẫn sử dụng / cơ sở dữ liệu / connect.html