PDO (PHP Data Objects)

 

TUGAS 2

PEMROGRAMAN BASIS DATA

PMI 1414

PDO (PHP Data Objects)

Ahad 15


Dosen Pengampu :

Eko Win Kenali, S.Kom., M.Cs

 



Di Susun Oleh :

                                    NAMA            : Ahmad Fajar Irawan

                                    NPM               : 19753004

 

MANAJEMEN INFORMATIKA

JURUSAN EKONOMI DAN BISNIS

POLITEKNIK NEGERI LAMPUNG

2021


KATA PENGANTAR

 

Puji syukur kehadirat Allah SWT, atas segala limpahan rahmat, nikmat dan karunia-Nya yang tak ternilai dan tak dapat dihitung. Saya dapat menyusun dan membuat laporan ini. Laporan ini disusun untuk memenuhi tugas mata kuliah  Pemrograman Basis Data.

Dalam membuat laporan ini masih jauh dari kata sempurna. Untuk itu, saya menghaturkan maaf jika ada kesalahan dalam laporan ini. Pembaca bisa membuat keputusan yang dapat memberikan kritikan dan sarannya untuk saya agar di kemudian hari saya bisa membuat laporan yang lebih semprurna lagi.

Akhir kata, saya ucapkan terima kasih kepada berbagai pihak yang telah dapat membantu dalam pembuatan laporan ini.

 

Sekampung Udik, 21 Juni 2021

 


 

PDO (PHP Data Objects)

A.    Pengertian

PDO (PHP Data Objects) adalah interface universal yang disediakan PHP untuk “berkomunikasi” dengan database server. Istilah “interface universal” berarti bahwa PDO tidak terikat dengan aplikasi database tertentu. Apabila saat ini menggunakan database MySQL dan dikemudian hari bermigrasi menggunakan PostgreSQL, selanjutnya hanya tinggal mengganti cara pemanggilan awal PDO dan seluruh kode program yang ada bisa langsung digunakan untuk database baru. Kondisi ini berbeda jika menggunakan mysql extension atau mysqli extension. Kedua extension ini hanya bisa bekerja dengan database MySQL. Karena alasan inilah banyak sebaiknya kita mulai beralih menggunakan PDO dibandingkan mysqli. Secara teknis, apabila menggunakan mysql atau mysqli extension, PHP langsung berhubungan dengan MySQL Server, tetapi jika menggunakan PDO, maka aplikasi tidak berhubungan langsung dengan database, tetapi hanya sebagai “interface”.

PDO bekerja dengan metode yang disebut ‘data-access abstraction layer’. Artinya, apapun jenis database server yang digunakan, kode PHP yang ditulis akan tetap sama. PDO menyediakan “abstraction layer” untuk berkomunikasi dengan database server. Untuk dapat menggunakan PDO, programer harus mengakses menggunakan object. PDO tidak menyediakan cara penulisan procedural style seperti mysqli atau mysql extension.

 

B.     Jenis Database Server

Jenis Database Server yang didukung PDO (PHP versi 5.6)

-          CUBRID

-          MS SQL Server

-          Firebird

-          IBM

-          Informix

-          MySQL

-          MS SQL Server

-          Oracle

-          ODBC and DB2

-          PostgreSQL

-          SQLite

-          4D

Dapat dilihat bahwa PDO mendukung banyak aplikasi database populer seperti: Oracle, Microsoft SQL Server, dan PostgreSQL. Dengan membuat kode PHP menggunakan PDO, secara tidak langsung kita juga membuka kemungkinan untuk menggunakan database server selain MySQL, sehingga menjadi lebih fleksibel.

 

C.    Mengaktifkan PDO Extension

PDO Extension telah aktif secara “default” pada PHP versi 5.1 keatas, tetapi tidak semua database driver bisa digunakan. Dengan kata lain, untuk alasan performa, PHP me-nonaktifkan beberapa driver database seperti Oracle atau PostgreSQL di dalam PDO. Untuk melihat driver database apa saja yang telah aktif dan bisa langsung digunakan, bisa menggunakan fungsi (lebih tepatnya: static method) PDO::getAvailableDrivers():

<?php

print_r(PDO::getAvailableDrivers());

?>

 

Ketika perintah diatas dijalankan pada PHP 5.6, berikut adalah hasil yang didapat: Array ( [0] => mysql [1] => sqlite )

 

D.    Memilih Data

Mengambil data menjadi array atau objekData diperoleh melalui ->fetch(), sebuah metode dari handle pernyataan Anda. Sebelum memanggil fetch, yang terbaik adalah memberi tahu PDO bagaimana Anda ingin data diambil. Anda memiliki pilihan berikut:

-          PDO::FETCH_ASSOC: mengembalikan sebuah array yang diindeks dengan nama kolom

-          PDO::FETCH_BOTH (default): mengembalikan sebuah array yang diindeks dengan nama kolom dan nomor

-          PDO::FETCH_BOUND: Menetapkan nilai kolom Anda ke variabel yang ditetapkan dengan metode ->bindColumn()

-          PDO::FETCH_CLASS: Menetapkan nilai kolom Anda ke properti kelas bernama. Ini akan menciptakan properti jika properti yang cocok tidak ada

-          PDO::FETCH_INTO: Memperbarui instance kelas bernama

-          PDO::FETCH_LAZY: Menggabungkan PDO::FETCH_BOTH/PDO::FETCH_OBJ, membuat nama variabel objek saat digunakan

-          PDO::FETCH_NUM: mengembalikan sebuah array yang diindeks dengan nomor kolom

-          PDO::FETCH_OBJ: mengembalikan sebuah objek anonim dengan nama properti yang sesuai dengan nama kolom

Pada kenyataannya, ada tiga hal yang akan mencakup sebagian besar situasi: FETCH_ASSOC, FETCH_CLASS, dan FETCH_OBJ. Untuk mengatur metode fetch, sintaks berikut digunakan:

1.      FETCH_ASSOC

Jenis fetch ini membuat array asosiatif, diindeks berdasarkan nama kolom. Ini harus cukup familiar bagi siapa saja yang telah menggunakan ekstensi mysql/mysqli.

2.      FETCH_OBJ

Jenis fetch ini menciptakan objek kelas std untuk setiap baris data yang diambil

3.      FETCH_CLASS

Properti objek Anda ditetapkan SEBELUM constructor dipanggil. Ini penting. Metode fetch ini memungkinkan Anda untuk mengambil data secara langsung ke dalam kelas yang Anda pilih. Bila Anda menggunakan FETCH_CLASS, properti objek Anda ditetapkan SEBELUM constructor dipanggil. Baca lagi, ini penting. Jika properti yang cocok dengan nama kolom tidak ada, properti tersebut akan dibuat (sebagai public) untuk Anda. Ini berarti jika data Anda memerlukan transformasi setelah keluar dari database, ini bisa dilakukan secara otomatis oleh objek Anda saat setiap objek dibuat.

Sebagai contoh, bayangkan sebuah situasi dimana alamat tersebut perlu dikaburkan sebagian untuk setiap record.


DAFTAR PUSTAKA

Envatotuts, 2020, “Mengapa Anda Harus Menggunakan PHP PDO untuk Akses Database”, https://code.tutsplus.com/id/tutorials/why-you-should-be-using-phps-pdo-for-database-access--net-12059 , di akses pada 15 juni 2021

Duniailkom, 2014, “Tutorial PHP MySQL Part 19: Pengertian PDO dan Cara Mengaktifkan PDO (PHP Data Objects)” https://www.duniailkom.com/tutorial-php-mysql-pengertian-pdo-dan-cara-mengaktifkan-pdo-php-data-objects/ , di akses pada 15 Juni 2021


politeknik negeri lampung


Komentar

Postingan populer dari blog ini

Cara Download dan Instal Aplikasi Enterprise Architect 8 Versi 15.2 Tahun 2020 (19753004-AhmadFajarIrawan_MI3A)

SQUENCE DIAGRAM STUDI KASUS PT. BANDI CAR

UJIAN PRAKTIK (STUDI KASUS PARKIRAN MOBIL)