Delphi merupakan rapid programming dimana terdapat banyak komponen-komponen add-in yang dapat ditambahkan di delphi. komponen-komponen tersebut ada yang gratis maupun berbayar, contoh salah satu komponen delphi yang telah terbundle secara rapi adalah jedi dengan alamat referensi http://www.delphi-jedi.org/.
Di tutorial ini saya akan membahas salah satu komponen gratisan yang digunakan sebagai konektor untuk menghubungkan aplikasi dengan database, fasilitasnya cukup komplit karena dapat menghandle koneksi mulai dari MySQL sampai Oracle. komponen ini dapat didownload di http://sourceforge.net/projects/zeoslib, penggunaannya pun sangat mudah dan tidak memerlukan banyak waktu untuk melakukan koneksi dengan database. dalam penggunaannya, zeos tidak memerlukan ODBC (Open Database Connectivity). untuk masalah kehandalan, zeos dapat dikatakan cukup handal sebagai komponen konektor database, selain itu para pengembang zeos juga masih selalu aktif untuk melakukan perubahan-perubahan versi yang dapat dikatakan bahwa zeos sendiri masih hidup.
Untuk melakukan koneksi dengan zeos, terlebih dahulu kita harus menginstall zeos di delphi, karena saya memakai delphi 2009 . sebagai informasi bahwa walaupun zeos yang didownload ada package untuk delphi 2009 tetapi pada kenyataanya masih belum dapat diinstall di delphi 2009, untuk itu bagi para pengguna delphi 2009 dapat mendownload package zeos yang telah dimodif disini http://rapidshare.com/files/237345412/zeosdbo2009.7z . untuk menginstallnya sebagai berikut, buka delphi lalu pilih “ZeosDBO_D2009.groupproj” (untuk delphi 2009 link yang telah saya sediakan), ZComponent.dpk(untuk delphi 7). lalu untuk delphi 2009 akan muncul pada window project manager(lokasi default panel sebelah kanan), akan muncul jendela baru project manager untuk delphi 7. khusus untuk delphi 7, silahkan pilih package untuk delphi 6 karena apabila anda memilih package delphi 7 maka akan timbul pesan error tidak dapat diinstall, hal ini terjadi pada setiap versinya dan saya selaku penulis tidak mengetahui kenapa hal ii tidak terjamah oleh para pengembang zeos. Untuk delphi 2009 pilih salah satu dpk lalu klik kanan dan pilih menu Compile All From Here dan setelah selesai meng-compile klik kanan lagi dan klik install, untuk delphi 7 klik install dan apabila berhasil akan muncul kotak dialog yang menunjukkan bahwa penginstallan telah selesai dijalankan seperti gambar berikut :

Setelah selesai melakukan proses penginstallan, arahkan library path delphi ke dalam direktori zeos, untuk delphi 7 dapat dilakukan dengan memilih menu Tools->Environment Options lalu pilih tab library dan tekan tombol yang menunjukkan library path dan akan muncul kotak diaog dan klik tombol dengan caption “…” lalu arahkan ke direktori <Folder Zeos>packagesdelphi6build lalu tekan OK dan klik tombol Add (apabila terdapat salah langkah mohon maaf karena saya tidak menggunakan delphi 7 lagi jadi langkah-langkah tersebut hanya sebatas ingatan saya saja
).untuk Delphi 2009 pilih tools->Options dan pilih menu dari treeview yang bernama Library – Win32 setelah itu klik tombol yang ada di area library path dan tekan tombol “…” lalu arahkan ke direktori <Folder Zeos>packagesdelphi2009 lalu klik OK dan klik tombol Add. Zeos untuk dapat berfungsi dengan baik memerlukan library MySQL yaitu libmysql yang dapat didownload di link ini , letakkan kedua LibMySQL tersebut di direktori Windows (default : C:Windows).
Apabila telah benar-benar selesai melakukan penginstallan zeos secara menyeluruh seperti langkah-langkah di atas maka selanjutnya adalah mengimplementasikan koneksi aplikasi dengan MySQL menggunakan komponen zeos yang telah terinstall. buka project baru dan pilih komponen TZConnection dan TZQuery yang terdapat di bagian Zeos Access . List komponen Zeos 2009 adalah sebagai berikut :

Untuk membuat aplikasi terkoneksi dengan database, kita gunakan TZConnection sebagai pusat koneksi dengan database, kali ini saya akan memberi contoh bagaimana mengkoneksikan zeos dengan database MySQL. berikut ini adalah skemanya :

Gambar di atas adalah skema koneksi antara Zeos dengan MySQL. untuk mengimplementasikannya, kita akan mengkoneksikan zeos dengan database bawaan MySQL yaitu bernama “mysql” untuk itu tempelkan komponen TZConnection ke dalam form baru dan set propertinya sebagai berikut :
- User : root <atau sesuai dengan konfigurasi user MySQL anda>
- Protocol : mysql
- Port : 3306 <atau sesuai dengan konfigurasi port MySQL anda>
- HostName : Localhost <bisa diisi dengan IP komputer>
- Database : mysql<contohnya>
- Connected : True
Apabila Connected dapat True dan tidak ada pesan error maka selamat anda telah berhasil mengkoneksikan aplikasi dengan MySQL dengan baik tetapi apabila tidak maka silahkan periksa kembali settingan yang anda buat apakah telah sesuai atau belum. Untuk mengetes apakah telah benar-benar terkoneksi atau belum kita tambahkan TZQuery ke dalam form lalu set properti seperti berikut :
- Name : qAct <biar sesuai dengan koding yang akan saya contohkan>
- Connecton : ZConnection1 <sesuai dengan nama yang anda buat pada komponen TZConnection>
Lalu tambahkan komponen TDataSource ke dalam aplikasi dan set properti seperti berikut :
- Name : dsAct
- DataSet : qAct
Lalu tambahkan juga komponen TDBGrid ke dalam form dan set properti DataSource menjadi dsAct, untuk melakukan aksi pengaksesan kita tambahkan Button dengan properti Name menjadi btnTampil, rancangan Formnya adalah sebagai berikut :

dan terakhir berikan kode pada event OnClick milik btnTampil sebagai berikut :
procedure TForm1.btnTampilClick(Sender: TObject);
begin
with qAct do
begin
Close;
SQL.Text := 'SELECT * FROM help_category';
Open;
end;
end;
Lalu coba jalankan aplikasi dengan menekan tombol pada keyboard F9 dan apabila telah berjalan tekan tombol Tampilkan dan apabila telah benar maka akan keluar data pada grid yaitu sebagai berikut :

Catatan :
Ada 2 method yang harus diperhatikan dalam zeos, yaitu ketika kita menampilkan data struktur perintah TZQuery adalah sebagai berikut :
with ZQuery1 do
begin
Close;
SQL.Text := 'Perintah SQLnya';
Open; //digunakan untuk penampilan data
end;
Tetapi apabila kita ingin melakukan entry data (insert,update,delete) maka struktur perintah TZQuery adalah sebagai berikut :
with ZQuery1 do
begin
Close;
SQL.Text := 'Perintah SQLnya';
Execute; //digunakan untuk Entry data
end;
Untuk lebih jelasnya, anda dapat mendownload hasil project disini
Sekian dulu tutorial penggunaan zeos untuk koneksi aplikasi dengan MySQL semoga tutorial ini berguna bagi temen-temen sekalian.
Like this:
One blogger likes this post.
mas, ada tutorial lain gak
soal penggunaan zeos,
masih perlu pencerahan nie…
penggunaan zeos di bagian mana yg sulit…dijabarkan aja ntar klo perlu tak buatin postingannya dsni.
aku sebenere belum ada dasar di databasenya mas
bukan di mysqlnya. tp di penggunaaan delphinya
kemaren diberi tahu teman soal penggunaan
zQuery.append untuk menambah
zQuery.post untuk simpan
zQuery.edit untuk edit
zQuery.delete untuk delete
padahal kadang, aku baca2 di internet ada cara2 lain
jadi bingung diriku. aku harus belajar dari mana. aku baca di buku malah pake yang fieldbyname. yang bener yang mana mas?
aku ada ebook delphi, tapi rata2 bahasa inggris semua dan itubun udah level tinggi.
pake yang
hmm…itu bisa digunkan tapi klo awal2 belajar mulailah dengan literatur yg tepat, dalam hal ini penggunaan ZQuery apabila saya cenderung lebih suka sbg contoh :
with ZQuery1 do
begin
Close;
SQL.Text := ‘INSERT INTO nmtabel(field1,field2)VALUES(“‘ + ed1.Text + ‘”,”‘ + ed2.Text + ‘”)’;
ExecSQL;
end;
yah seperti itulah…jadi langsung tembak sintak SQLnya…untuk FieldByName lebih saya gunakan untuk pengambilan data saja…tapi mungkin sesuai dengan kebutuhan juga…mungkin dapat lihat di http://programminglearning.wordpress.com/2009/05/15/delphi-penyimpanan-data-ke-database-secara-massal/ untuk contoh penggunaan ZQuery.
ok mas, aku juga td cari refrensi soal memasukkan data ke combobox pake yang itu. sql.add() itu. cuman belum mudeng bener bedanya apa sama yang diajarin temenku, dengan fieldbyname, fieldvalues dkk. mbok nek kalo ada ebooknya aku dibagi mas. pusing juga baca buku tapi gak cocok. aku ada buku pake ado (access). padahal aku pengene belajar langsung mysql aja.
btw, langsung menuju ke tkp
pak, saya sudah melakukan install zeosdbo_2009
saat selesai tidak ada keterangan error. sama seperti screenshot yang ada. ketika menggunakan tzconnection waktu memilih protocol ada keterangan abstract error. Kenapa ya? belum saya coba install ulang zoesnya.
thanks
@chandra: kadang2 error tsb memang ditemukan,mungkin lom terlalu sempurna dalam transform ke delphi 2009…apabila ada waktu and lom release versi revisinya saya akan mncoba memperbaikinya…
Mas saya ingin tanya setelah saya install zeos saya mencoba program simpan massal settelah saya run selalu ada tulisan” File not found:’ZConnection.dcu. Karena baru dan ingin belajar delphi jadi ingin tahu sebabnya??
Terima Kasih
itu krena path library blum diarahkan,klo pke delphi 7 di Tools->Environment Options->Library->Library Path klik tombol di samping kanan lalu tambahkan path komponen zeos yang terinstall (biasanya cukup di [$FOLDERZEOS]\Packages\Delphi$\Build\
sudah mas,setelah saya tambahkan pathnya ga tau yang mana punya Delphi 2009 setelah ngga minta file ZConnection.dcu jadi saya tambahkan semua folder yg ada di dalam ZEOSDBO2009. Tapi sekarang setelah menekan conected True selalu ada tulisan Abstract Error. Trus gimana mas??
Terima Kasih
mas,,mau tanya..
kenapa ya klo saya menuliskan syntak selain
“select * from nama_tabel” pasti minta ZDbcPostgreSqlUtils.pas..
mohon petunjuknya..
terima kasih..
komponen Zeos tersebut belum sempurna dalam konversi ke Delphi 2009. ini terjadi karena perubahan tipe data Char yang dalam versi sebelumnya UTF8 (1 byte), sekarang menjadi unicode Char (2 byte). Akibat dari itulah banyak terjadi kesalahan fatal pada saat mengakses driver databasenya.
saya sendiri memakai zeos untuk membuka platform sqlite. banyak sekali terjadi error.
yup tepat sekali, apalagi founder zeos tidak mempunyai cukup dana utk membeli lisensi D2009, wah sungguh disayangkan apabila terhenti developmentnya…ayo yang pake zeos donasi dunk, hehhehehe…
mau tanya nih master…apa bedanya pake Zeos sama dbExpress???toh hasilnya sama ja kan???emg apa sih kelebihan Zeos??..mksh untuk jwbn nya,he..
hmm…klo gw sih cenderung ke zeos karena tidak perlu repot2 setting ODBC ke client(DBExpress pake ODBC g ya, gw lupa…hehhehehe) and dalam penggunaannya jg tidak repot, multi DB lagi, bisa database dari sqllite sampe oracle
.
Walah bang tagor eh maap,he… bang tigor..dbExpress juga g perlu pake ODBC… gw nanya gt krn g prnah pake Zeos,hi..hi.. mau nyoba ah..th`x ya ^__^
hihihihi…sorry DBExpress dah g pernah pke lagi jd lupa sistem kerjanya…but ttep gw lbih recommended ke zeos.
silakan deh coba, ada program yang saya gratisin, make zeoslib, tapi saya kebetulan nggak punya D2009, hanya ada D7.
jamin, bikin aplikasi jadi cepet!
salam bahagia
oh ya, klo boleh sharing dunk D2009. aq nggak ada kartu kredit jadi nggak bisa beli D2009 ataupun D2010 online!
salam bahagia
wah syang sekali saya g menyediakan software baj*kan
sepertinya banyak deh yang dah di cra*k D2009, coba aja search di google
mksudnya suruh nyoba, nyoba apa y
mungkin ini bisa bantu tutorial tentang Eabstracterror http://delphirewo.blogspot.com/2009/10/eabstracterror.html
Aku dah berhasil install ZEOSDBO-6.6.5-stable pd delphi 6. Tapi ketika aku konek dg suatu table maka selalu gagal. Kenapa ya? Anehnya ketika ku drop tablename property nya mau muncul daftar namanya (logikaku berarti kan koneksinya tlh jalan). Tapi ketika ku aktifkan (active:=true), maka muncul error : Unknown Mysql data type!
NB: Aq pakai WampServer Version 2.0, dimana situ ada mysql versi 5.1.36, Apache Version : 2.2.11 ,PHP Version : 5.3.0
Apa aq perlu buat user baru ya? Sebab dalam koneksiku ku set sbb:
Database: adi
hostname= localhost
port=0
protocol=mysql
password=
user=root
apa ada yg salah mas? Tolong dong dijawab, OK. Thx B4
Saya sebagai newbie untuk urusan Zeos, bbrapa saat yg lalu saya install Zeos Lib 6.6.5 – stable, waktu instalasi (saya kira) so far so good aja, namun pas di coba buat program kecil muncul error sebagai berikut:
None of the dinamic libraries can be found : libmysql51.dll, libmysql50.dll, libmysql.dll
Sebelumnya saya nggak menyerah begitu saja, saya coba install di PC2 yang laen berikut juga saya coba pada OS yg berbeda ( Windows 7 dan Windows XP ) hasilnya : SAMA
Terus terang, saya mohon bantuannya untuk pencerahaan bagi saya seorang Newbie….terima kasih
itu berarti anda harus menyertakan libmysql.dll di direktori system32 ato satu direktori dengan aplikasi.file ini bisa didonlot di
http://www.dll-files.com/dllindex/dll-files.shtml?libmysql
Misi Om…
tp klo enggak ya…gax apa2. sekian permohonan ini saya sampaikan kepada anda, terima kasih.
saya mo minta tlg, klo ada boleh minta tutorial atau modul tentang membuat database delphi 7 & mysql 5 gax?
saya baru belajar2 bikin database & masih kesulitan dengan masalah koneksi delphi – mysqlnya…
klo bisa tlg kirim ke email saya ya
semoga tambah sukses
saya mau nanya…..
misalnya ada database khs dengan menggunakan delphi….
terus saya mau onlinekan dengan menggunakan php&mysql…
apakah untuk mengambil field beserta datanya bisa menggunakan zeos juga?untuk menkonversi data di delphi ke mysql….. mohon pencerahannya…..
terima kasih
aplikasi desktop tp online dengan zeos?bisa saja,tinggal mainkan konfigurasi zeos saja.
mas, mau nanya…
saya punya stored procedure di mysql tanpa paramater, untuk “call stored procedure” dengan zstoredproc bisa nggak mas?, tolong penjelasannya….
terima kasih
kenapa tidak memakai ZQuery aja?komponen itu memang untuk zstoreprocedure.apa ada masalah dengan komponen itu?
terdapat beberapa error,
klo yang tanpa parameter sudah teratasi tapi, yang dengan parameter error,
ni syntak dan error nya:
with s_query do
begin
Close;
SQL.Text := ‘call proc_save’;
ParamByName(‘NIP’).Value := ‘ednik.Text’;
ParamByName(‘nama’).AsString := ‘ednama.Text’;
ExecSQL;
First;
end;
errornya :
s_query: Parameter ‘NIP’ not found,
padahal di stored proc database saya udah ada
“CREATE DEFINER = ‘root’@'localhost’ PROCEDURE `proc_save`(
IN nip INTEGER(14),
IN nama VARCHAR(30),”, tolong bantuannya mas, terimakasih…
Ass Wr Wb
Salam Sejahtera Semuanya..
Maaf bro..ikut nimbrung nih..
koq Komponent Zlib tuk konek MySQl yg pake Procedure g mau..y..gmn..??
Mas…maaf sebelumnya,
saya punya masalah nih Mas..
saya punya DataBase misal 4 kolom..nah yang 2 kolom rencananya insert dari server yg 2 dari Client (saya pake MySQL 5,Delphi 7,dan Zeos Connection)..
kalau dari Komp Client insert nya kok g mau y mas??padahal udah pake banyak cara insert..
cuma karna hanya insert 2 dari 4 kolom saya pake ‘WHERE nama_kolom1= ‘+ edit1.text;
supaya insertnya g melenceng dari 4 kolom tadi…
mungkin mas punya cara insert lain…mohon bantuannya,
makasih…
barang kali bersedia bisa kirim lewat email saya(gh_oce_ne@yahoo.com) atau bls langsung dsini jg gpp.
mkasih banyak mas…
Zeos emang TOP..i luv poll
)
hihihihi…
Tambah masalah nich boss, saya coba tanya ke google, tanya di forum FB , belum nemu jawabnya .
Termasuk saya coba uprek property dan event milik zquery dan ztable.
Masalahya begini, Ketika kolom di mysql terisi kata ‘ MERAH’ oleh client lain, maka form delphi yang berwarna merah di komputer saya akan close.
jika client lain mengisi biru , maka form saya yang berwarna biru akan bekerja.
saya coba AFTERINSERT kok tidak respon, saya coba onchange di datasource malah langsung kerja saat di RUN……..waduh..waduh….
salam kenal mas………..
saya baru ajah ambil zeos n selesai install, terus saya praktekean.. tetapi koq error ya…
apa ada ada salah / kurang pada saat install ????
zeos di aktifkan pada saat event on show di from
procedure TfrmLogin.FormShow(Sender: TObject);
begin
ZConnection1.HostName := ’192.168.0.1′;
ZConnection1.Database := ‘dbToko’;
ZConnection1.Protocol := ‘mysql’;
ZConnection1.Connect;
end;
errornya.
Source File not Found : ZPlainLoader.pas
Path to source file
ZplainLoader.pas
mohon pencerahannya..
trim’s
itu path librarynya lum terdaftar,pake delphi 7?coba di Tools->Environment Options trus masuk ke tab “Library” dan tambahkan path zeos disitu,biasanya ada di folder (klo ga salah) [Zeos Dir]\Packages\Delphi[versinya]
Semua uda aku praktekin master tapi kok masih error ya…
errornya seperti ini :
[Fatal Error] uMain.pas(7): File not found: ‘ZSysUtils.dcu’
link download libmysqlnya uda mati..mohon diperbaiki dong master.., saya cari di google cuma ketemu satu yaitu libmysql.dll, aku taruh di C:/WINDOWS..
Mohon pencerahannya master….
sudahkah anda menambahkan library path ke delphi anda???
di versi 7 ada di tools->environment…(lupa nama tepatnya)
di versi setelahnya ada di tools->options trus masuk ke menu delphi options->library
tambahkan path komponen zeos disitu.
link libmysql akan saya update hari ini.terima kasih telah memberitahukannya
Mas, saya udah ikuti saran diatas.
saya pake mysql 5.5.
ketika di koneksikan ada pesan error ‘Application violation at address 0000000′.
itu kenapa ya?
terus kenapa kalo pake dbexpress dia slalu ada tulisan ‘Failure to connect: can’t found libmysql.dll’
bisa kasih tutor untuk ngebenerinnya gak mas?
tolong bales ya, secepatnya.
soalnya saya ada deadline tugas kuliah nih..
Salam kenal Pak Tigor. Mohon bantuan Pak Tigornya nih..
Saya udah download contoh program bapak, yang pake database MySql, tabel help_category. Ketika saya run, saya tekan tombol tampilkan, lalu saya ubah data dikolom ‘name’ trus pindah ke baris berikutnya, lalu saya tekan Tampilkan lagi. (semua ok dan perubahan data saya berhasil).
Yang saya tanyakan, kenapa ketika saya ubah sumber tabelnya dari database lain dan berhasil ditampilkan, tapi ketika merubah recordnya kok gak berhasil??
Terima kasih sebelumnya atas bantuannya
tanks om artikelnya…ana cari2 ketemu juga nih….
wah link buat downloadnya mati tuh. ada yang mo bantu idupin gak?