Cara Setting PostgreSQL dengan CodeIgniter 3: Panduan Lengkap

 

PostgreSQL adalah sistem manajemen basis data relasional (RDBMS) yang sangat kuat dan digunakan oleh banyak aplikasi yang membutuhkan penyimpanan data yang aman dan skalabel. CodeIgniter 3, sebuah framework PHP yang populer, juga menyediakan dukungan untuk menggunakan PostgreSQL sebagai database. Dalam artikel ini, kita akan membahas langkah-langkah untuk mengatur PostgreSQL dengan CodeIgniter 3, mulai dari instalasi PostgreSQL hingga konfigurasi database di CodeIgniter 3.

1. Persiapan Awal: Instalasi PostgreSQL

Sebelum menggunakan PostgreSQL di CodeIgniter 3, Anda harus memastikan bahwa PostgreSQL sudah terinstal di server Anda. Jika Anda belum menginstalnya, ikuti panduan berikut untuk menginstal PostgreSQL di sistem operasi yang sesuai.

1.1. Menginstal PostgreSQL di Linux (Ubuntu/Debian)

  1. Perbarui Daftar Paket: Jalankan perintah berikut untuk memperbarui daftar paket:

    sudo apt update
    
  2. Instal PostgreSQL: Instal PostgreSQL dengan perintah berikut:

    sudo apt install postgresql postgresql-contrib
    
  3. Verifikasi Instalasi: Setelah instalasi selesai, periksa versi PostgreSQL yang terinstal:

    psql --version
    

1.2. Menginstal PostgreSQL di macOS

Di macOS, Anda bisa menginstal PostgreSQL menggunakan Homebrew. Jalankan perintah berikut:

brew install postgresql

1.3. Menginstal PostgreSQL di Windows

Untuk Windows, Anda dapat mengunduh installer PostgreSQL dari situs resminya di sini. Setelah mengunduhnya, ikuti langkah-langkah yang tertera untuk menyelesaikan proses instalasi.

Setelah PostgreSQL terinstal, pastikan Anda dapat terhubung ke PostgreSQL menggunakan psql atau pgAdmin, alat manajemen database.

2. Membuat Database dan Pengguna di PostgreSQL

Setelah PostgreSQL terinstal, Anda perlu membuat database dan pengguna yang akan digunakan oleh CodeIgniter. Berikut adalah langkah-langkah untuk membuatnya:

2.1. Masuk ke PostgreSQL:

Untuk masuk ke PostgreSQL, jalankan perintah berikut di terminal atau command prompt:

sudo -u postgres psql

2.2. Membuat Database:

Setelah berada di shell PostgreSQL, buat database yang akan digunakan oleh aplikasi CodeIgniter Anda dengan perintah:

CREATE DATABASE nama_database;

Gantilah nama_database dengan nama yang sesuai dengan aplikasi Anda.

2.3. Membuat Pengguna dan Memberikan Hak Akses:

Selanjutnya, buat pengguna (role) PostgreSQL dan beri hak akses ke database yang baru dibuat:

CREATE USER nama_pengguna WITH ENCRYPTED PASSWORD 'kata_sandi';
GRANT ALL PRIVILEGES ON DATABASE nama_database TO nama_pengguna;

Gantilah nama_pengguna dan kata_sandi dengan nama pengguna dan kata sandi yang Anda inginkan.

2.4. Keluar dari PostgreSQL:

Setelah membuat database dan pengguna, keluar dari shell PostgreSQL dengan mengetikkan:

\q

3. Mengonfigurasi PostgreSQL di CodeIgniter 3

Sekarang setelah Anda memiliki PostgreSQL yang terinstal dan dikonfigurasi, langkah berikutnya adalah mengonfigurasi CodeIgniter 3 agar dapat terhubung dengan database PostgreSQL.

3.1. Mengunduh dan Mengatur CodeIgniter 3

Jika Anda belum mengunduh CodeIgniter 3, Anda bisa mengunduhnya dari situs resminya di sini. Ekstrak file yang diunduh ke direktori server web Anda (misalnya /var/www/html untuk Apache di Linux atau C:\xampp\htdocs untuk XAMPP di Windows).

3.2. Mengonfigurasi Database di CodeIgniter 3

Setelah CodeIgniter terinstal, Anda perlu mengonfigurasi pengaturan database di file application/config/database.php. Berikut adalah langkah-langkahnya:

  1. Buka file konfigurasi database:

    application/config/database.php
    
  2. Edit pengaturan database:

    Temukan array pengaturan default dan sesuaikan dengan pengaturan PostgreSQL Anda. Berikut adalah contoh pengaturan untuk PostgreSQL:

    $db['default'] = array(
        'dsn'   => '',
        'hostname' => 'localhost', // Ganti dengan host PostgreSQL Anda
        'username' => 'nama_pengguna', // Ganti dengan nama pengguna PostgreSQL
        'password' => 'kata_sandi', // Ganti dengan kata sandi PostgreSQL
        'database' => 'nama_database', // Ganti dengan nama database PostgreSQL
        'dbdriver' => 'postgre', // Pastikan driver database adalah 'postgre'
        'dbprefix' => '',
        'pconnect' => FALSE,
        'db_debug' => (ENVIRONMENT === 'development'),
        '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 untuk mengganti nama_pengguna, kata_sandi, dan nama_database dengan informasi yang sesuai dengan yang telah Anda buat di PostgreSQL.

  3. Simpan Perubahan:

    Setelah selesai mengedit file database.php, simpan perubahan tersebut.

3.3. Verifikasi Koneksi Database

Untuk memverifikasi apakah CodeIgniter dapat terhubung dengan PostgreSQL, buat sebuah controller dan model sederhana untuk mengakses database.

Buat file controller di application/controllers/DatabaseTest.php:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class DatabaseTest extends CI_Controller {

    public function index()
    {
        // Memuat model
        $this->load->model('DatabaseTest_model');
        
        // Mengambil data dari database
        $data = $this->DatabaseTest_model->get_data();
        
        // Menampilkan data di view
        echo '
';
        print_r($data);
        echo '
'; } } 

Buat file model di application/models/DatabaseTest_model.php:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class DatabaseTest_model extends CI_Model {

    public function __construct()
    {
        parent::__construct();
        // Memuat database
        $this->load->database();
    }

    public function get_data()
    {
        // Query untuk mengambil data
        $query = $this->db->query("SELECT * FROM your_table_name");
        return $query->result();
    }
}

Gantilah your_table_name dengan nama tabel yang sesuai dengan database Anda.

Sekarang, coba akses controller ini melalui browser dengan mengunjungi URL:

http://localhost/index.php/DatabaseTest

Jika semuanya dikonfigurasi dengan benar, Anda akan melihat hasil query dari database PostgreSQL yang ditampilkan di halaman browser.

4. Menggunakan Query Builder di CodeIgniter 3

Setelah mengonfigurasi koneksi database, Anda dapat mulai menggunakan fitur query builder di CodeIgniter 3 untuk mengelola data di PostgreSQL. CodeIgniter 3 menyediakan berbagai metode untuk bekerja dengan database, seperti select(), insert(), update(), dan delete(), yang memudahkan Anda dalam mengelola data.

4.1. Contoh Query Select:

Untuk mengambil data dari database menggunakan query builder, Anda bisa menggunakan metode select() dan get():

$this->db->select('*');
$query = $this->db->get('your_table_name');
$data = $query->result();

4.2. Contoh Query Insert:

Untuk menyisipkan data ke dalam tabel, Anda bisa menggunakan metode insert():

$data = array(
    'column1' => 'value1',
    'column2' => 'value2'
);
$this->db->insert('your_table_name', $data);

4.3. Contoh Query Update:

Untuk memperbarui data, Anda bisa menggunakan metode update():

$data = array(
    'column1' => 'new_value1'
);
$this->db->where('column2', 'value2');
$this->db->update('your_table_name', $data);

4.4. Contoh Query Delete:

Untuk menghapus data, Anda bisa menggunakan metode delete():

$this->db->where('column1', 'value1');
$this->db->delete('your_table_name');

5. Kesimpulan

Menggunakan PostgreSQL dengan CodeIgniter 3 sangatlah mudah jika Anda mengikuti langkah-langkah pengaturan yang benar. Dimulai dengan instalasi PostgreSQL, pembuatan database dan pengguna, lalu mengonfigurasi koneksi database di CodeIgniter, Anda dapat dengan mudah mengelola data melalui aplikasi Anda. Selain itu, CodeIgniter 3 menyediakan fitur query builder yang memudahkan pengelolaan data dengan PostgreSQL, baik untuk query SELECT, INSERT, UPDATE, maupun DELETE.

Dengan mengikuti panduan ini, Anda dapat memulai proyek pengembangan aplikasi web dengan PostgreSQL dan CodeIgniter 3 yang lebih efisien dan dapat diskalakan.

 

 

Dadang Heksa

Itaque quidem optio quia voluptatibus dolorem dolor. Modi eum sed possimus accusantium. Quas repellat voluptatem officia numquam sint aspernatur voluptas. Esse et accusantium ut unde voluptas.

8 Comments

Georgia Reader Reply

Et rerum totam nisi. Molestiae vel quam dolorum vel voluptatem et et. Est ad aut sapiente quis molestiae est qui cum soluta. Vero aut rerum vel. Rerum quos laboriosam placeat ex qui. Sint qui facilis et.

Aron Alvarado Reply

Ipsam tempora sequi voluptatem quis sapiente non. Autem itaque eveniet saepe. Officiis illo ut beatae.

Lynda Small Reply

Enim ipsa eum fugiat fuga repellat. Commodi quo quo dicta. Est ullam aspernatur ut vitae quia mollitia id non. Qui ad quas nostrum rerum sed necessitatibus aut est. Eum officiis sed repellat maxime vero nisi natus. Amet nesciunt nesciunt qui illum omnis est et dolor recusandae. Recusandae sit ad aut impedit et. Ipsa labore dolor impedit et natus in porro aut. Magnam qui cum. Illo similique occaecati nihil modi eligendi. Pariatur distinctio labore omnis incidunt et illum. Expedita et dignissimos distinctio laborum minima fugiat. Libero corporis qui. Nam illo odio beatae enim ducimus. Harum reiciendis error dolorum non autem quisquam vero rerum neque.

Sianna Ramsay Reply

Et dignissimos impedit nulla et quo distinctio ex nemo. Omnis quia dolores cupiditate et. Ut unde qui eligendi sapiente omnis ullam. Placeat porro est commodi est officiis voluptas repellat quisquam possimus. Perferendis id consectetur necessitatibus.

Nolan Davidson Reply

Distinctio nesciunt rerum reprehenderit sed. Iste omnis eius repellendus quia nihil ut accusantium tempore. Nesciunt expedita id dolor exercitationem aspernatur aut quam ut. Voluptatem est accusamus iste at. Non aut et et esse qui sit modi neque. Exercitationem et eos aspernatur. Ea est consequuntur officia beatae ea aut eos soluta. Non qui dolorum voluptatibus et optio veniam. Quam officia sit nostrum dolorem.

Kay Duggan Reply

Dolorem atque aut. Omnis doloremque blanditiis quia eum porro quis ut velit tempore. Cumque sed quia ut maxime. Est ad aut cum. Ut exercitationem non in fugiat.

Leave a Reply

Your email address will not be published. Required fields are marked *