Kamis, 29 Agustus 2013

KONEKSI DATABASES MYSQL PADA DELPHI 7

Database MySQL merupakan sistem basis data gratisan yang cukup handal, banyak digunakan baik personal maupun instansi, dalam aplikasi berbasis internet, intranet maupun lokal. Tidak sedikit programmer yang membuat aplikasi database memakai MySQL sebagai basis datanya.
Dalam aplikasi database yang dibangun dengan Borland Delphi 6, untuk mengakses database MySQL kamu bisa menggunakan semua komponen database seperti ADO, BDE maupun dbExpress. Koneksi database MySQL dengan komponen BDE tidak jauh berbeda dengan komponen ADO atau dbExpress. Sebagai contoh download Connect MySQL Source Code, ekstrak dalam komputer kamu dan buka dengan Delphi. Source code untuk aplikasi ini memakai database linked, buat dulu database tersebut sekalian driver ODBC-nya, caranya baca kembali artikel Membuat Driver ODBC untuk Database MySQL
Koneksi dengan komponen ADO
Biasanya koneksi database dengan ADO melalui driver ODBC, komponen yang digunakan tidak sebanyak jika dengan komponen dbExpress, perhatikan gambar di bawah ini
Komponen TADOConnection berfungsi untuk koneksi dengan sumber data, bisa langsung dari file databasenya (misalnya database Ms Access) atau melalui driver ODBC. Pastikan driver ODBC untuk database MySQL telah dibuat, dan untuk mengubah koneksinya klik ganda komponen bernama adocConnMySQL sehingga muncul kotak dialog seperti di bawah ini, klik tombol Build.. kemudian lakukan langkah-langkahnya
Untuk menguji koneksi bisa dilakukan atau tidak tekan tombol Test Connection, jika berhasil akan muncul pesan “Test connection succeeded“.
Pada source code, perintah koneksi dengan komponen ADO dieksekusi ketika pengguna meng-klik menu koneksi -> ODBC-ADO, dan dikodekan dalam prosedur miODBCClick seperti di bawah ini
procedure TfmConnMySQL.miODBCClick(Sender: TObject);
begin
  if sqlcConnMySQL.Connected = True then
    sqlcConnMySQL.Close;

  dsCustomer.DataSet:= tbCustomer;
  dsOrders.DataSet:= tbOrders;
  Series1.DataSource:= tbOrders;

  adocConnMySQL.Open;
  if adocConnMySQL.Connected = True then
  begin
    tbCustomer.Open;
    tbOrders.Open;
    fmConnMySQL.Caption:= 'Koneksi Database MySQL dengan ODBC-ADO';
  end;
end;
Karena aplikasi ini bisa koneksi database dengan menggunakan dua komponen, yaitu komponen ADO dan dbExpress, salah satu komponen harus di-disconnect. Komponen sqlcConnMySQL, fungsinya sebagai media koneksi dengan komponen dbExpress, jika dalam kondisi connect maka di’tutup’ dulu. Untuk menampilkan data hasil koneksi dengan ADO, pastikan property DataSet dari komponen TDBGrid, dsCustomer dan dsOrders, diisi dengan komponen TADOTable yang bersesuaian. Setelah itu baru koneksi dengan komponen adocConnMySQL dilakukan berikut komponen TADOTable-nya.
Koneksi dengan komponen dbExpress
Klik ganda komponen sqlcConnMySQL, di layar monitor akan muncul kotak dialog seperti gambar di bawah.. kemudian coba klik tombol Test Connection, disimbolkan dengan tanda ‘conteng’
Jika muncul pesan seperti di atas, artinya Borland Delphi kamu belum bisa koneksi langsung dengan database MySQL. Cari file dbexpmys.dll, biasanya di C:\Program Files\Borland\Delphi6\Bin, kemudian copy file tersebut ke C:\Windows\system. Tekan tombol Continue jika muncul pesan “You’ll need to provide administrator permission to copy to this folder“. Setelah itu buka file dbxdrivers.ini, di folder C:\Program Files\Common Files\Borland Shared\DBExpress, dengan notepad. Bagian di bawah [MYSQL] harus seperti berikut, biasanya sih sama..
[MYSQL]
GetDriverFunc=getSQLDriverMYSQL
LibraryName=dbexpmys.dll
VendorLib=LIBMYSQL.dll
BlobSize=-1
Database=DBNAME
ErrorResourceFile=
HostName=ServerName
LocaleCode=0000
Password=password
User_Name=user
Perhatikan pada kode VendorLib=LIBMYSQL.dll, artinya di system kamu harus ada file dll tersebut, file ini sudah saya sertakan pada source code yang tadi kamu download. Copy file libmySQL.dll ke folder C:\Windows\system, jika muncul pesan “You’ll need to provide administrator permission to copy to this folder” tekan tombol Continue.
Sekarang klik ganda lagi komponen sqlcConnMySQL, dan tekan tombol Test Connection. Pesan “Succesfully Connected” seharusnya muncul di layar monitor kamu. Mulai sekarang Borland Delphi kamu sudah bisa koneksi langsung dengan database MySQL, dan bisa membuat aplikasi lain dengan komponen dbExpress tanpa melakukan langkah-langkah di atas.
Seperti koneksi dengan komponen ADO, untuk koneksi dengan komponen dbExpress juga menggunakan menu. Source code-nya pun tidak jauh berbeda
procedure TfmConnMySQL.midbExpressClick(Sender: TObject);
begin
  if adocConnMySQL.Connected = True then
    adocConnMySQL.Close;

  dsCustomer.DataSet:= cdsCustomer;
  dsOrders.DataSet:= cdsConnDetail;
  Series1.DataSource:= cdsConnDetail;

  sqlcConnMySQL.Open;
  cdsCustomer.Active:= sqlcConnMySQL.Connected;
  fmConnMySQL.Caption:= 'Koneksi Database MySQL dengan dbExpress';
end;
Menampilkan data dari database MySQL dalam grafik
Tema ini sebenarnya sudah dibahas dalam artikel Menampilkan Database dalam Grafik, kamu bisa baca kembali artikel ini. Bedanya, kali ini diletakkan dalam tab tersendiri, tab grafik, dan karena ada dua jenis koneksi maka nilai property DataSource dari komponen Series1 ditentukan dalam prosedur miODBCClick dan midbExpressClick.
Sedikit tambahan biasanya setiap saya membuat aplikasi yang melibatkan komponen untuk akses data, misal TADOTable atau TClientDataset, saya selalu memastikan komponen-komponen ini dalam keadaan tidak aktif ketika aplikasi ini di’tutup’. Sehingga memory komputer terbebaskan dan tidak dipenuhi oleh operasi yang sudah tidak diperlukan lagi. Perintah ini dikodekan dalam events OnClose pada form fmConnMySQL
procedure TfmConnMySQL.FormClose(Sender: TObject;
 var Action: TCloseAction);
begin
  adocConnMySQL.Close;
  tbCustomer.Close;
  tbOrders.Close;
  sqlcConnMySQL.Close;
  cdsCustomer.Close;
  cdsConnDetail.Close;
end;
Nuwun..
Daftar download untuk artikel ini:
1. Connect MySQL Source Code - 73.87 kB

Tidak ada komentar:

Posting Komentar