Genzo newbie just share =) Genzo noob just share: Koneksi Ke Database Saat Run-Time
selamat datang di blog tutorial saya ,blog ini di buat sederhana untuk memudahkan anda dalam membaca dan belajar :D .keep calm and enjoy =) . /yusufgenzo

Koneksi Ke Database Saat Run-Time

Kali ini saya ingin berbagi tentang cara koneksi ke database (Ms. Access) saat run-time pada pemrograman Delphi. Run-time artinya saat program dijalankan, bukan pada saat perancangan (design time). Keuntungannya program yang kita buat lebih dinamis dan kita bisa melakukan perubahan pada koneksinya saat program sedang berjalan.
Sebagai contoh buat sebuah database menggunakan Ms. Access tentunya, dan jangan lupa tambahkan beberapa sampel data didalamnya. Supaya lebih afdhol, tambahkan password pada database tersebut. Setelah itu buka Delphi anda dan buat sebuah palikasi baru. Pastikan anda menyimpan programnya satu folder dengan database. Untuk koneksi ke databasenya, kita akan menggunakan ADO.
Tambahkan komponen-komponen dibawah ini pada form anda. Yang didalam tanda kurung adalah nama tab dimana komponen tersebut berada.
  • ADOConnections (ADO)
  • ADOTable (ADO)
  • DataSource (Data Access)
  • DBGrid (Data Controls)
Properti ‘name’ dari masing-masing komponen tidak perlu diganti, biarkan saja nama defaultnya. Arahkan properti ‘Connection’ dari ADOTable1 ke 'ADOConnections1', kemudian untuk komponen DataSource1 pilih ADOTable1 pada properti ‘DataSet’ dan untuk DBGrid1 pilih DataSource1 pada properti 'DataSource'. Nah sekarang semua komponen sudah saling terhubung, tapi kok datanya belum muncul pada DBGrid? Ya memang begitu karena kita belum mengkoneksikannya dengan database. Koneksi baru akan dilakukan saat program dijalankan. Untuk itu tambahkan script berikut pada event 'OnCreate' form anda
procedure TForm1.FormCreate(Sender: TObject);
const
namadb = 'data.mdb';
passdb = 'localhost/blog';
tabel = 'tb_barang';
begin
ADOConnection1.ConnectionString :=
'Provider=Microsoft.Jet.OLEDB.4.0;' +
'Data Source=' + ExtractFilePath(application.ExeName) + namadb + ';' +
'Persist Security Info=False;' +
'Jet OLEDB:Database Password=' + passdb;
ADOConnection1.LoginPrompt:=false;
ADOConnection1.Connected := True;
ADOTable1.TableName:=tabel;
ADOTable1.Active:=true;
end;
Perhatikan pada script diatas terdapat 3 konstanta masing-masing 'namadb' adalah nama database anda, 'passdb' adalah password database, dan 'tabel' adalah nama tabel yang ada di database. Jadi anda perlu merubah nilainya sesuai dengan database anda.
Karena lokasi database berada satu folder dengan program, maka pada bagian data source tambahkan fungsi 'ExtractFilePath(application.ExeName)' untuk menghasilkan path dari file exe program berada. Dengan begitu dimanapun program diletakkan asalkan berada satu folder dengan databasenya maka koneksinya akan tetap mengarah ke database tersebut.
Coba jalankan program anda. Jika data yang ada dalam database muncul pada DBGrid berarti anda berhasil…