Category Archives: Tutotrial Delphi 7

Manajemen Transaksi pada Delphi 7 dengan MySQL

Manajemen Transaksi pada Delphi 7 dengan MySQL

Di program ini untuk koneksi ke MySQL menggunakan komponen ZeosDBO, Anda bisa donwload dari http://sourceforge.net/projects/zeoslib/
ZeosDBO adalah komponen sebagai perantara koneksi (driver) untuk Borland Delphi, C++ Builder dan Kylix. Karena disajikan dalam kode program (source code), maka Anda harus mengkompilasi sendiri. Adapun Anda bisa kompilasi dengan baberapa bahasa pemrograman yang Anda sukai antara lain:

  • Delphi 5 – 7 and 9
  • Lazarus (FreePascal)
  • C++ Builder 5 – 6
  • Kylix 2 – 3

ZeosDBO bisa dikoneksikan ke beberapa database Server antara lain adalah :

  • MySQL 3.20 – 5
  • PostgreSQL 6.5 – 8.x
  • Firebird 1.0 – 1.5
  • Interbase 5.0 – 7.5
  • Microsoft SQL Server 7, 2000
  • Sybase ASE 12.0, 12.5
  • Oracle 9i
  • SQLite 2.8

    Latihan

    Buatlah Struktur Tabel berikut

    CREATE TABLE mhs (
    no_mhs char(4) DEFAULT NULL,
    nama char(25) DEFAULT NULL,
    alamat char(25) DEFAULT NULL
    ) ENGINE=InnoDB;

    CREATE TABLE `jurusan` (
    `no_mhs` char(4) DEFAULT NULL,
    `kode` char(2) DEFAULT NULL
    ) ENGINE=InnoDB;

    Rancangan Form seperti gambar berikut :

    Setting Properti

    Program di Tombol Simpan Klik

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    // query menjalankan transakasi //
    ZQuery3.Close;
    ZQuery3.SQL.Clear;
    ZQuery3.SQL.Add(‘START TRANSACTION;’);
    ZQuery3.ExecSQL;

    // menyimpan ke tabel mhs
    ZQuery2.Close;
    ZQuery2.SQL.Clear;
    ZQuery2.SQL.Add(‘INSERT INTO mhs VALUES(:no,:nama,:alamat)’);
    ZQuery2.ParamByName(‘no’).AsString :=Edit1.Text;
    ZQuery2.ParamByName(‘nama’).AsString :=Edit2.Text;
    ZQuery2.ParamByName(‘alamat’).AsString:=Edit3.Text;
    try
    ZQuery2.ExecSQL;
    except
    MessageDlg(‘Ada kesalahan Gagal Menyimpan di tabel MHS’, mtInformation, [mbOk],0);
    // jika ada kesalahan penyimpan tabel mhs dibatalkan //
    // keluar dari procedure //
    ZQuery3.Close;
    ZQuery3.SQL.Clear;
    ZQuery3.SQL.Add(‘ROLLBACK;’);
    ZQuery3.ExecSQL;
    exit;
    end;
    //menyimpan di tabel jurusan//

    ZQuery2.Close;
    ZQuery2.SQL.Clear;
    ZQuery2.SQL.Add(‘INSERT INTO jurusan VALUES(:no,:kode)’);
    ZQuery2.ParamByName(‘no’).AsString :=Edit1.Text;
    ZQuery2.ParamByName(‘kode’).AsString :=Edit4.Text;
    try
    ZQuery2.ExecSQL;
    except
    MessageDlg(‘Ada kesalahan Gagal Menyimpan di tabel Jurusan’, mtInformation,[mbOk],0);
    // jika ada kesalahan penyimpan semua dibatalkan //
    // keluar dari procedure //

    ZQuery3.Close;
    ZQuery3.SQL.Clear;
    ZQuery3.SQL.Add(‘ROLLBACK;’);
    ZQuery3.ExecSQL;
    exit;
    end;
    MessageDlg(‘Data sudah disimpan ‘, mtInformation,
    [mbOk],0);

    // ketikan menjalankan perinta try tidak ada kesalahan //
    // menjalankan perintah COMMIT untuk menyimpan /
    // secara permanen//

    ZQuery3.Close;
    ZQuery3.SQL.Clear;
    ZQuery3.SQL.Add(‘COMMIT;’);
    ZQuery3.ExecSQL;

    // perbaharui tampilan tabel//
    ZQuery1.Open;

    end;

Koneksi Foxpro Ke Delphi

Untuk mengakses tabel bisa lewat database atau direktori dimana file dbf ditempatkan contoh sederhana seperti pada gambar berikut :

Buatlah DSN dengan lewat BDEAdministrator,.

bde

Hubungkan komponent ADOConnection lewat properti ConnectionString sperti gbr berikut :

bde2

Hubungkan komponent ADDOQuery lewat properti Connection : diisi ADDOConnection1 di atas tadi

Lengkapi dengan komponen DataSource, DBNavigator, DBGrid hasi seperti gambar berikut :

bde3