Sunday, March 9, 2014

Mengakses lebih dari satu database pada codeigniter

Codeigniter sudah memberikan library untuk mengkoneksikan aplikasi yang kita buat dengan database. Kita tinggal menyetting nama hostname, nama username, nama database dan password. Library untuk database pada codeigniter terdapat pada folder applications/database.php. Secara default sudah disediakan tempat untuk mengisikan hostname, username, password, dan nama database untuk mysql, jika menggunakan database selain mysql tinggal setting driver menyesuaikan software database yang digunakan. Setelah konfiguraasi pada file database.php jangan lupa konfigurasi pada file autoload.php yang terletak sama pada folder applications. setting autoload.php autoload library database.

Secara default akses pada file database hanya mengakses 1 database seperti dibawah :

$active_group = 'default';
$active_record = TRUE;

$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = 'amazon';
$db['default']['database'] = 'badger';
$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;

Jika ingin menambahkan database lain maka perlu ditambahkan :

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

Hostname diatas masih sama hanya databasenya yang berbeda. Hostname berbeda maka tinggal mengganti nama hostnamenya. Secara default database yang digunakan adalah badger. Database upload dapat digunakan jika pada model saat pemanggilan tabel pada database upload diload database upload seperti berikut :

$db2 = $this->load->database('upload',TRUE);
$query = $db2->query("QUERY SQL");

Secara lengkap pada model jika ingin menggunakan database yang kedua saya menggunakan seperti ini:

<?php
function tampil_upload(){
$db2 = $this->load->database('upload', TRUE);
$query = $db2->query("SELECT * FROM store");
return $query;
}
?>

Tulisan diatas hanya corat-coret saya saja untuk membuat saya mudah mengingat jika suatu saat saya lupa. Tentunya saya tidak bisa membuat secara mendetail dan jelas karena saya bukan orang yang mahir dalam hal tersebut. Jika ada teman-teman yang membacanya saya mohon maaf jika tulisan saya ini mengecewakan karena tidak bagus. Tetapi saya berusaha untuk bisa lebih baik lagi, jika ada teman teman ada yang ingin menambahkan silahkan diisikan pada komentar.

No comments:

Post a Comment