Tutorial Database dengan Delphi tambah edit hapus tanpa coding Part 2

Koneksi database

Seperti pada tutorial programming umumnya langkah awal membuat aplikasi/software database adalah mengkoneksikan antara aplikasi dengan database.

Di tutorial ini saya menggunakan delphi versi XE 10.1 Berlin versi starter yang bisa anda dapatkan secara gratis di situs resminya Embarcadero.

Sebelum melangkah lebih jauh, , perlu saya jelaskan di sini bahwa tutorial yang saya berikan adalah programming yang menggunakan konsep OOP.  Artinya anda akan di beri panduan menggunakan modul-modul/unit-unit yang reusable, class satu dapat menurunkan class lainnya sehingga dapat digunakan berbagai macam proyek/pekerjaan tanpa harus mengcopy paste lagi.

Buka Delphi anda lalu pilih file->new->DataModule.  Pastikan dahulu anda sudah menginstall komponen zeos DBO.  Untuk cara installnya silahkan anda cari di google.

Kalau sudah akan keluar tampilan seperti biasa yaitu sebuah data modul kosong.  Taruh komponen Zconnection di data modul tersebut, sehingga keluar tampilan seperti ini:



Jika sudah selesai, tekan tombol save, simpan data modul tersebut dalam folder global.  Artinya nanti semua aplikasi bisa mengakses unit tersebut.  Untuk lebih mudahnya nama unit/file tersebut kita namai udmconnparent.pas.  Sedang komponen data modulnya kita namai dmconnparent, dan komponen koneksi Zeos kita namai con1.

Karena unit ini bersifat global maka langkah yang pertama adalah membuat settingan yang bersifat global pula.
Apapun database anda,agar terkoneksi pasti memerlukan beberapa informasi sebagai berikut:
1.  User
2.  Password
3.  Nama Database
4.  Host
5. Port

Karena semua database memerlukan hal tersebut diatas maka kita perlu menyediakan informasi yang berkaitan dengan hal tersebut.  Adapun langkah-langkahnya adalah sebagai berikut:

1.  Membaca dari inifile

Ini tidak harus, karena anda bisa memasukkan informasi tentang database anda ke registry, tetapi kita ambil langkah mudahnya menggunakan inifile.

Tambahkan uses System.IniFiles lalu function getConfigIni di bagian public. 

function Tdmconnparent.getConfigIni: TiniFile;
var
  ini: TiniFile;
begin
  ini := TiniFile.Create(extractFilepath(paramstr(0))+ 'config.ini');
  result := ini;
end;


Lalu tambahkan script berikut pada event beforeconnect di komponen Zeos koneksi anda.

procedure Tdmconnparent.con1BeforeConnect(Sender: TObject);
var
  ini: TiniFile;
begin
  ini := getConfigIni;
  con1.Database := ini.ReadString('connection', 'database', '');
  con1.Port := ini.ReadInteger('connection', 'port', 0);
  con1.HostName := ini.ReadString('connection', 'host', 'localhost');
  con1.User := ini.ReadString('connection', 'user', '');
end;
2.  Buat prosedur open koneksi di bagian public.

procedure Tdmconnparent.openConnection;
begin
  try
    con1.Connect;
  except
    on E: Exception do
    begin
     Raise Exception.Create('Error koneksi '+e.message);
    end;

  end;
end;
Untuk lebih jelasnya silahkan melihat 2 potongan gambar berikut.