Kolom 1: index dengan type int
Kolom 2: data_text dengan type varchar(100)
Kolom 3: data_angka dengan type int
Kolom 4: data_binary dengan type blob
kemudian desain form pada delphi dengan komponen
- ZConnection1,
- ZTable1,
- DataSource1,
- DBGrid1,
- 3 buah DBEdit, masing-masing untuk
- index,
- data_text
- data_angka,
- 6 button yang masing-masing
- button untuk menambah database,
- button untuk menyimpan data ke dalam database,
- button untuk mengambil gambar yang akan diiputkan ke dalam database,
- button untuk menghapus databse,
- button untuk membaca dan menampilkan gambar,
- button untuk membaca dan menyimpan ke komputer lokal
- Image1 untuk menapilkan gambar
- OpenDialog1
- SaveDialog1
hasilnya seperti berikut
Pada Object Inspector Zconnetion1 isikan databasename, user, password, hostname dan protocol seperti pada gambar berikut
pada ZTable1 isikan Connection dengan Zconnection1 dan pilih tabel yang hendak diakses,
pada DataSource1 isikan dataset denan ZTable1
pada DBGrid isikan datasource dengan DataSurce1
pada DBEdit1 isikan datasource dengan DataSource1 dan DataField dengan index begitu pula untuk DBEdit2 dimana DataField diisi dengan data_text dan DBEdit3 dimana DataField diisi dengan data_angka
kemudian klik 2 kali pada button 1 untuk insert data ke dalam database dengan script berikut :
procedure TForm1.Button1Click(Sender: TObject); begin ztable1.Insert; end;
pada button 2 untuk menyimpan data ke dalam database
procedure TForm1.Button2Click(Sender: TObject); begin ztable1.Post; end;
pada Button3 untuk menghapus data dari database
procedure TForm1.Button3Click(Sender: TObject); begin ztable1.Delete; end;
pada button4 untuk membuka file gambar yang akan diiputkan ke dalam database
procedure TForm1.Button4Click(Sender: TObject); var a:TStream; f:TFileStream; begin if opendialog1.Execute then begin f:=TFileStream.Create(opendialog1.FileName,fmopenread); a:=ztable1.CreateBlobStream(ztable1.FieldByName('data_binary'),bmwrite); try a.CopyFrom(f,f.Size); finally f.Free;a.Free; end; end; end;
pada button5 isikan script berikut dan jangan lupa tambahkan JPEG pada Uses di atas untuk dapat membuka file JPG
procedure TForm1.Button5Click(Sender: TObject); var a:TStream; jpg:TJpegImage; begin a:=ZTable1.CreateBlobStream(ZTable1.FieldByName('data_binary'),bmread); jpg:=TJpegImage.Create; try jpg.LoadFromStream(a); image1.Picture.Assign(jpg); finally a.Free;jpg.Free; end; end;
Pada button6 isikan script berikut untuk menyimpan gambar dari database PhpMyAdmin menjadi file ke dalam komputer lokal
procedure TForm1.Button6Click(Sender: TObject); var a:TStream; f:TFileStream; begin if savedialog1.Execute then begin a:=ZTable1.CreateBlobStream(ZTable1.FieldByName('data_binary'),bmread); f:=TFileStream.Create(savedialog1.FileName,fmcreate or fmopenwrite); try f.CopyFrom(a,a.Size); finally a.Free; f.Free; end; end; end;
dan jika sukses eksekusi hasilnya sebagai berikut
gan ini menggunakan teknik blob stream yah ?
BalasHapustentu saja. menurut saya ini cara termudah dalam menyimpan file apapun dalam bentuk binary, termasuk gambar. :)
Hapussoalnya kalau menggunakan blob stream ane gak paham
BalasHapussaya mencoba menjelaskan Stream secara sederhana di http://tutorial-delphi.blogspot.co.id/2015/10/cara-memahami-stream-pada-delphi.html
Hapussemoga bermanfaat
gan kl imagenya dari webcame gmn gan?.trimakasih sblmnya
BalasHapuskok video gk bisa di download ?
BalasHapusyoutube punya kebijakan sendiri, videonya tidak bisa didownload. kalo mau download googling aja cara download video youtube. banyak ko situs yang menyediakan layanan download video dari youtube, contohnya http://www.clipconverter.cc/
Hapusmudah-mudahan bermanfaat... :)
gan kenapa pas gue mau masukin kode button1 nya ada tulisan [Error] Unit1.pas(36): Undeclared identifier: 'ztabel1' ?
BalasHapusgan kenapa pas saya mau masukin kode button1 ada tulisan [Error] Unit1.pas(36): Undeclared identifier: 'ztabel1' mohon bantuannya gan ?
BalasHapuso. jelas error itu terjadi karena anda belum memasukkan komponen ztable dari zeos. component tersebut ada di tab zeos
Hapusanda download ZEOSlib di https://sourceforge.net/projects/zeoslib/ lalu install komponen tersebut ke dalam delphi
Hapusgan kenapa error mysql has gone away
BalasHapus