ADOdb is a suite of database libraries that allow you to connect to multiple databases in a portable manner. We currently support MySQL, Oracle, Microsoft SQL Server, Sybase, Sybase SQL Anywhere, Informix, PostgreSQL, FrontBase, SQLite, Interbase (Firebird and Borland variants), Foxpro, Access, ADO, DB2, SAP DB and ODBC
Ketika kita membangun aplikasi berbasis web yang dinamis, semisal sistem informasi manajemen atau yang lebih sering dikenal dengan sebutan SIM, maka tidak pelak dibutuhkan sebuah bahasa pemrograman dan database. Dan dalam hal ini akan dibahas salah satu komponennya yaitu komunikasi bahasa PHP dengan database MySQL. Untuk melakukan manipulasi data pada database, maka sudah disediakan fungsi-fungsi dalam PHP, namun akan lebih praktis lagi jika fungsi-fungsi yang terpisah itu disusun dalam sebuah fungsi yang dapat dipanggil secara berulang-ulang. Dan fungsi-fungsi ini kita bungkus dalam sebuah class, sehingga dalam penggunaannya kita tinggal mengincludekannya saja.
Dan inilah yang dilakukan oleh ADOdb, namun lebih dari itu ia mendukung tidak hanya satu database saja.
Secara sederhana ADOdb ini adalah sebuah layer tambahan yang menjembatani berbagai database – MySQL, Oracle, MSQL, Sybase, Informix, PostgreSQL, FrontBase, SQLite, Interbase, Foxpro, Access, ADO, DB2, SAP DB dan ODBC – dengan bahasa pemrograman PHP, sehingga dengan mudah kita dapat menggunakan dan beralih database sesuai yang kita perlukan. Secara skematis hal ini dapat digambarkan di bawah ini.
Jika PHP telah menyediakan fungsi-fungsi manipulasi untuk masing-masing database, maka ADOdb berperan sebagai Abstraction layer seperti terlihat pada gambar di atas. Dalam mengaplikasikannya kita gunakan contoh database dengan nama adodb dan tabel agama_ref dengan database MySQL. Untuk instalasi Apache, MySQL dan PHP anda dapat menggunakan XAMP, WAMP, atau bahkan menginstallnya satu persatu. Di sini saya gunakan WAMP.
Nah, di atas kita sudah memiliki sebuah database adodb dan tabel agama_ref dengan 5 data di dalamnya, yang selanjutnya akan kita gunakan dalam artikel ini.
Kita akan mencoba membuat program PHP dengan memanfaatkan ADOdb untuk menampilkan data dari database yang telah dibuat. Maka secara sederhana, file nya adalah sebagai berikut dan kita beri nama file ini contoh.php.
Sesuai isi file contoh.php di atas, kita pakai beberapa fungsi ADOdb, diantaranya adalah :
1. Mengincludekan ADOdb ke dalam program yang kita buat [baris ke-2].
2. Mendeklarasikan kelas ADOdb dengan parameter mysql sebagai databasenya [baris ke-3].
3. Memanggil fungsi connect dengan memberikan parameter host, user, password dan database yang digunakan, dalam hal ini akan menjalankan mysql_connect dan mysql_select_db [baris ke-4].
4. Menjalankan query SQL, untuk mengambil semua data dari tabel agama_ref, dalam hal ini akan menjalankan mysql_execute [baris ke-5].
5. Untuk mendapatkan hasil berupa array 2 tingkat [baris ke-6].
6. Kemudian baris ke-8 sampai 12 adalah untuk menampilkan data yang telah didapatkan.
Maka jika dijalankan dalam browser akan didapatkan hasil sebagai berikut :
Dengan menggunakan ADOdb ini, jika kita kemudian akan melakukan migrasi dari MySQL ke PostgreSQL atau oracle atau bahkan database lainnya, maka kita tinggal mengganti baris ke-3 [nama database yang digunakan] dan ke-4 [fungsi untuk melakukan koneksi] dan file kita masih dapat memberikan hasil yang sama dan berjalan dengan baik.
Beberapa fungsi yang sering saya gunakan dalam manipulasi database, antara lain :
1. Melacak id terakhir yang dimasukkan dalam database secara autoincrement, untuk memanggilnya digunakan fungsi $db−>Insert_ID();
2. Melakukan transaction, untuk mengesekusi beberapa query atau membatalkannya jika terdapat beberapa kekeliruan. Fungsi yang digunakan $db−>BeginTrans(); kemudian beberapa query dan diakhiri dengan $db−>CommitTrans(); atau $db−>RollbackTrans();
3. Melakukan insert, update dan delete dengan fungsu $db−>Execute();
Sebagai catatan, transaction hanya dapat diterapkan pada tabel dengan tipe innodb. Jika anda hanya menggunakan ADOdb untuk database MySQL, maka ada baiknya jika hanya menyertakan file-file yang memang dipakai saja, diantaranya adalah
- adodb.inc.php
- adodb-lib.inc.php
- adodb-time.inc.php
- drivers/adodb-mysql.inc.php
- license.txt (untuk alasan legal)
- adodb-php4.inc.php
- adodb-iterator.inc.php
Anda dapat mengexplore lebih jauh fungsi-fungsi yang disuport oleh ADOdb dengan mendownload sourcenya di sini atau dapat didownload dari internet untuk mendapatkan versi terakhinya.
Namun saya juga telah mengembangkan sebuah class yang dapat melakukan fungsi-fungsi di atas untuk database mysql dan sqlite. Jika anda tertarik dapat anda download di sini.
Di dalamnya terdapat file contoh untuk mamanfaatkan class tersebut.


admin_math
Sep 10, 2008 @ 06:22:49
maaf jika isi pesan berikut mengganggu aktivitas kamu.. aku cuma mau kasih tau aja, ada sebuah situs social bookmarking yang berisi kumpulan berita-berita menarik yang paling update diseluruh indonesia,dan memang situs ini berbasis bahasa indonesia… klo nggak keberatan tolong cek situs ini yah.. semoga bermanfaat..
>>> http://www.lintasberita.com
coba di share aja semua tulisan km di situs itu ,mudah2an bisa membantu naikkan traffic blog ini ,keep up the good post ok.. btw.. ever thought bout adding lintasberita’s widget?? cek disini aja yah
>>> http://www.lintasberita.com/tools.php
thanks…. sory klo keliatannya spamming.. but seriously… im just helping you out here…
pemula
Jan 09, 2009 @ 19:57:04
thanks banget,
mas sula, bisa kasih contoh sederhana aplikasi database ga ??
ada login, menu treeview, proses insert, update, delete, serta pencarian.
Thanks ya
migrasioss.web.id » sqlite dan cms
Feb 26, 2009 @ 23:42:55
neng ucrit
Mei 12, 2010 @ 09:56:24
keren banget, gamblang dan ada contohnya
yantho
Agu 18, 2010 @ 03:01:14
mas mohon bantuannya. gimana classnya jika saya menggunakan server:localhost, dbname:snortdb, usernm:root, psw:root. karena setelah saya mengikuti langkah2 di atas adodbnya tidak mau jalan. terima kasih….
Shofiq Sulaiman
Agu 18, 2010 @ 10:29:33
Muncul pesan error apa mas ?
yantho
Agu 24, 2010 @ 18:59:15
setelah di panggil lewat web browser, semua script PHPnya mucul d layar…..
Shofiq Sulaiman
Agu 25, 2010 @ 15:12:55
Mungkin karena di code PHP nya menggunakan tag buka hanya “<?" saja, coba ganti dengan "<?php".
Coba cek file php.ini dan cari "short_open_tag" dia On atau Off. Kalo On berarti bisa pakai short open tag yaitu “<?".
Oks, semoga mengatasi masalahna…
yantho
Sep 20, 2010 @ 19:14:10
ma kasih buat penjelasannya di atas mas. MAsalahnya sekarang adodb tidak bisa membaca nama database. keterangan memang succses, tapi jika di scriptnya nama databasenya di hapus keterngannya masih succses. Tapi jika user atau psw mysqlnya di ganti baru muncul error. itu settingan apanya yang kurang mas??
Shofiq Sulaiman
Sep 20, 2010 @ 21:10:55
Itu terjadi karena memang ADODB tidak mengecek keberadaan database.
Koneksi database MySQL dengan PHP, prosesnya hampir sama dengan ketika kita melakukan operasi MySQL di command promt.
1. Melakukan koneksi, dalam code PHP dilakukan dengan :
mysql_connect($host, $user, $pass);
dan ternyata ada pengecekan atas keberhasilan koneksi yang dilakukan
2. Memilih nama database yang dipakai,
mysql_select_db($db, $koneksi);
dan di ADODB tidak ada pengecekan keberadaannya
Jadi wajar saja, ketika nama database tidak ada, tidak mengeluarkan pesan error. Untuk lebih jelasna Mas Yantho bisa mendownload kode simpelnya di sini http://www.sulaiman.web.ugm.ac.id/upload/Database.rar