Codeigniter memungkinkan kita untuk melakukan koneksi ke 2 database bahkan lebih disaat bersamaan. 2 database atau lebih tersebut juga tentu saja dapat berupa database yang berbeda platform, kita asumsikan saya database 1 adalah database mysqli (maria db) dengan nama db_siswa lalu database 2 adalah database postgresql dengan nama db_sekolah
Buka folder aplikasi tempat project kita berada, dalam hal ini project saya bernama CI-study. Buka Application/config/database.php. Lalu tambahkan source code berikut:
// Database default kita disable dahulu
// $db['default'] = array(
// 'dsn' => '',
// 'hostname' => '',
// 'username' => '',
// 'password' => '',
// 'database' => '',
// 'dbdriver' => 'mysqli',
// 'dbprefix' => '',
// 'pconnect' => FALSE,
// 'db_debug' => (ENVIRONMENT !== 'production'),
// 'cache_on' => FALSE,
// 'cachedir' => '',
// 'char_set' => 'utf8',
// 'dbcollat' => 'utf8_general_ci',
// 'swap_pre' => '',
// 'encrypt' => FALSE,
// 'compress' => FALSE,
// 'stricton' => FALSE,
// 'failover' => array(),
// 'save_queries' => TRUE
// );
$db['con_mysqli'] = array(
'dsn' => '',
'hostname' => 'localhost',
'username' => 'root',
'password' => 'root',
'database' => 'db_siswa',
'dbdriver' => 'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT !== 'production'),
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);
$db['con_postgre'] = array(
'dsn' => '',
'hostname' => 'localhost',
'username' => 'postgres',
'password' => 'postgres',
'database' => 'db_sekolah',
'dbdriver' => 'postgre',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT !== 'production'),
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);
Pastikan host, username dan password sudah disesuaikan dengan profil database masing-masing. Save, lalu untuk memanggil masing-masing database untuk operasi CRUD (Create Read Update Delete) maka kita panggil dengan function berikut:
function panggil_database() { $db_mysqli= $this->load->database('con_mysqli', TRUE); // koneksi ke db_siswa mysqli $db_postgre = $this->load->database('con_postgre', TRUE); // koneksi ke db_sekolah postgresql $siswa = $db_mysqli->get('tb_siswa')->result(); // tb_siswa contoh nama tabel $siswa = $db_mysqli->get('tb_sekolah')->result(); // tb_sekolah contoh nama tabel // lanjutkan logic selanjutnya }
Function diatas belum dapat langsung menampilkan data, perlu dilanjutkan dengan fungsi mysqli_fetch_array
atau mysqli_fetch_object
sesuai kebutuhan masing-masing.
Demikian tutorial Codeigniter singkat kali ini. Semoga dapat bermanfaat, terima kasih
Melangkahlah ‘tuk hari esok!
Keren blognya gan
Thank you Mas 🙂