Kamis, 01 November 2012

Akses MySQL menggunakan Delphi dengan ZEOSDBO

compas dari web http://khalishahazzahra.blogspot.com/2011/06/akses-mysql-menggunakan-delphi-dengan.html

Sebelumnya telah saya bahas bagaimana mengakses Database MySQL Menggunakan Lazarus dengan ZEOSDBO. Sekarang kita akan mencoba mengakses Database MySQL menggunakan Delphi dengan ZEOSDBO.

Berikut langkah instalasi ZeosDB secara umum (saat ini saya menggunakan Delphi 2007 untuk Delphi versi lain pasti tidak jauh beda)
1. Buka aplikasi MySQL dan Buat database dengan nama 'latihan' dengan perintah :
               create database latihan;
2. Buka database 'latihan' dengan perintah :
                \u latihan

3. Buat table dalam database latihan. 
                   create table jurusan(
              kd_jur varchar(5) PRIMARY KEY,
              nm_jur varchar(30)
        );

4. Selanjutnya download ZEOSDBO dihttp://www.ziddu.com/download/15692423/ZEOSDBO-6.6.6-stable.rar.htmlEkstrak file ZEOSDBO-6.6.6-stable.rar. di drive 'C:\ZEOSDBO-6.6.6-stable'misalnya.
5. Buka aplikasi Delphi dan install component ZEOSDBO pada dengan cara klik menu File open
Pilih file 'C:\ZEOSDBO-6.6.6-stable\packages\delphi11\ZComponentDesign.dpk' - Open
6. Install component ZComponent dengan cara klik kanan pada Project ZComponent - install.
 jika tidak ada masalah, akan tampil dialog konfirmasi :


7. Selanjutnya tutup semua project yang aktif dengan cara klik menu File - close all dan tambahkan component pada delphi dengan cara klik menu Component - Install Packages ....

8. Tampil jendela dibawah ini klik tombol Add.

9. Pilih file 'ZComponentDesign110.bpl' di directory 'C:\Documents and Settings\All Users\Documents\RAD Studio\5.0\Bpl'


 klik OK

10. Hasilnya, akan ditambahkan tab baru di Tool Palette dengan nama 'Zeos Access' yang tampak pada gambar berikut :

11. Sekarang kita sudah dapat menggunakan component Zeos dalam aplikasi kita. Untuk mengawali program, buat Applikasi baru dengan cara File - New - VCL Form Application - Delphi for Win32.

12. Pada form baru yang tampil, tambahkan componnent dan atur propertiesnya seperti table berikut :

Object
Properties
Value
TZConnection
( tab Zeos Access )
AutoCommit
Database
HostName
LoginPrompt
Password
Port
Protocol
User
Connected
True
Latihan
Localhost
False
Ichwan
3306
Mysql-5
Root
True
TZTable
( tab Zeos Access )
Connection
TableName
Zconnection1
Jurusan
TdataSource
( tab Data Access )
DataSet
Ztable1
Tlabel
( tab Standard )
Caption
Kode Jurusan
Tlabel
( tab Standard )
Caption
Nama Jurusan
Tedit
( tab Standard )
Name
MaxLength
text
5
txtkd
TEdit
( tab Standard )
Name
MaxLength
text
30
txtnm
TBitbtn
( tab Additional )
Caption
Baru
TBitbtn
( tab Additional )
Caption
Simpan
TBitbtn
( tab Additional )
Caption
Hapus
TBitbtn
( tab Additional )
Caption
Keluar
DBGrid
( tab Data Controls)
DataSource
Datasource1
 Atur tampilan formnya seperti berikut :
 13. Tampilkan field table dalam component ZTable1 dengan cara double klik pada Ztable1, akan tampil jendela berikut :
Klik kanan Pada dialog field ZTable - Add all Fields. hasilnya :

14. Deklarasikan 2 Procedure baru pada blok Private dengan nama :
                    procedure kosong;
        procedure tampil;
15. Lengkapi body procedurenya dengan :
        procedure TForm1.kosong;
        begin
          txtkd.Clear;
          txtnm.Clear;
          txtkd.SetFocus;
        end;

        procedure TForm1.tampil;
        begin
          txtkd.Text:=ZTable1kd_jur.AsString;
          txtnm.Text:=ZTable1nm_jur.AsString;
        end;  

16. Isikan procedure pada onCreate milik form dengan cara Double klik di area form yang kosong, atau dengan cara double klik pada Events OnCreate milik Form.
Lengkapi Perintahnya :
    
    procedure TForm1.FormCreate(Sender: TObject);
    begin
       ZTable1.Open;
    end;
 
Perintah diatas akan membuka table pada saat form akan dijalankan.

17. Procedure OnShow milik Form.Untuk mengosongkan kotak isian pada saat form dijalankan.

    procedure TForm1.FormShow(Sender: TObject);
    begin
       kosong;
    end;

18. Procedure OnClick milik Tombol Baru

    procedure TForm1.BitBtn1Click(Sender: TObject);
    begin
       kosong;
    end; 

19. Procedure OnClick milik Tombol Simpan

    procedure TForm1.BitBtn2Click(Sender: TObject);
    begin
      if ZTable1.Locate('kd_jur', txtkd.Text, [loCaseInsensitive]) then
         ZTable1.Edit
      else
        ZTable1.Append;
      ZTable1['kd_jur']:=txtkd.Text;
      ZTable1['nm_jur']:=txtnm.Text;
      Try
        ZTable1.Post;
        kosong;
      except
        ShowMessage('Gagal Simpan');
        Exit;
      end;
    end;   

20. Procedure OnClick milik Tombol Hapus

    procedure TForm1.BitBtn3Click(Sender: TObject);
    begin
      if MessageDlg('Apakah anda yakin data ini akan dihapus ?',mtConfirmation,[mbYes,mbNo],0)=mrYes then
     if ZTable1.Locate('kd_jur', txtkd.Text, [loCaseInsensitive]) then begin
        ZTable1.Delete;
        kosong;
     end;

    end;   

21. Procedure OnClick milik Tombol Keluar 

    procedure TForm1.BitBtn5Click(Sender: TObject);
    begin
      close;
    end; 

22. Procedure onDblClick milik DBGrid

    procedure TForm1.DBGrid1DblClick(Sender: TObject);   begin      tampil;    end;

23. Simpan Project dengan cara klik menu File - save all.
Dialog pertam adalah dialog simpan Unit form, beri nama project dengan Unit1.pas - Save

Dialog kedua adalah dialog simpan Project, beri nama project dengan Zeos_MySQL - Save
 Jalankan aplikasi dengan cara tekan tombol F9 pada Keyboard. Jika tidak ada masalah, akan tampil form berikut :

jika ada pesan berikut :

Project zeos_MySQL.exe raised exception class EZSQLException with message 'Requested database driver was not found', maka sesuaikan isi Protocol milik ZConnection1 dengan database dan versi database yang anda pergunakan.


Source code Aplikasi diatas  bisa di download dihttp://www.ziddu.com/download/15695339/Delphi_zeos_Mysql.rar.html
Berikut Source code Selengkapnya.


unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, ZAbstractRODataset, ZAbstractDataset, ZAbstractTable, ZDataset,
  Grids, DBGrids, StdCtrls, Buttons, ZConnection;

type
  TForm1 = class(TForm)
    ZConnection1: TZConnection;
    Label1: TLabel;
    Label2: TLabel;
    txtkd: TEdit;
    txtnm: TEdit;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    DBGrid1: TDBGrid;
    ZTable1: TZTable;
    DataSource1: TDataSource;
    ZTable1kd_jur: TStringField;
    ZTable1nm_jur: TStringField;
    procedure FormCreate(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure DBGrid1DblClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
  private
    procedure kosong;
    procedure tampil;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
  kosong;
end;

procedure TForm1.BitBtn2Click(Sender: TObject);
begin
  if ZTable1.Locate('kd_jur', txtkd.Text, [loCaseInsensitive]) then
     ZTable1.Edit
  else
    ZTable1.Append;
  ZTable1['kd_jur']:=txtkd.Text;
  ZTable1['nm_jur']:=txtnm.Text;
  Try
    ZTable1.Post;
    kosong;
  except
    ShowMessage('Gagal Simpan');
    Exit;
  end;
end;

procedure TForm1.BitBtn3Click(Sender: TObject);
begin
 if MessageDlg('Apakah anda yakin data ini akan dihapus ?',mtConfirmation,[mbYes,mbNo],0)=mrYes then
     if ZTable1.Locate('kd_jur', txtkd.Text, [loCaseInsensitive]) then begin
        ZTable1.Delete;
        kosong;
     end;
end;

procedure TForm1.BitBtn4Click(Sender: TObject);
begin
  close;
end;

procedure TForm1.DBGrid1DblClick(Sender: TObject);
begin
  tampil;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  ZTable1.Open;
end;

procedure TForm1.FormShow(Sender: TObject);
begin
  kosong;
end;

procedure TForm1.kosong;
begin
  txtkd.Clear;
  txtnm.Clear;
  txtkd.SetFocus;
end;

procedure TForm1.tampil;
begin
  txtkd.Text:=ZTable1kd_jur.AsString;
  txtnm.Text:=ZTable1nm_jur.AsString;
end; 

end.


Selamat Mencoba
ini lagi cari ilmu pemrogramaan delphi 

0 komentar:

Posting Komentar

 
- ,