dulu gue ude pernah posting, gue posting ulang deh.
1. buat form dengan satu tombol command,dan picture box.
2. copy dan paste coding dibawah ini di "(General)" deklarasi.
3. simpan dulu (buat folder untuk contoh aplikasi ini),supaya
app.path nya jalan
4. buat folder di dalam folder ini, "gambar" dan "hasil gambar"
5. buat database accessnya dengan struktur
field name | Data Type
nama | Text
photo | OLE Object
6. insert satu contoh datanya misal nama = coba, untuk field photo dikosongkan
7. siapkan satu contoh gambarnya misal namanya "test.jpg",
tidak musti file jpg bisa semua file
8. trus jalanin deh
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim mstream As ADODB.Stream
Private Sub Command1_Click()
'berhubung proses ini dilakukan dengan perintah Update,
'maka sebelum meng update (proses yg digunakan untuk
'insert gambar adalah update bukan insert),
'field nama nya sudah harus terisi (melakukan insert data).
'kita misalkan namanya 'coba'
Memasukan_Data_Gambar "coba", App.Path & "\gambar\test.jpg"
'untuk membuktikan kalau sudah benar menyimpannya
Mengambil_Data_Gambar "coba", "coba.jpg", App.Path & "\hasil gambar\"
End Sub
Private Sub Memasukan_Data_Gambar(ByVal strNama As String, _
strFullPathPic As String)
Set cn = New ADODB.Connection
'struktur database test.mdb :
'field name | data type
'nama | Text
'photo | OLE Object
cn.Open "Provider = Microsoft.Jet.OLEDB.4.0;Data Source= " & _
App.Path & "\test.mdb;Persist Security Info=True"
Set rs = New ADODB.Recordset
'harus dilakukan perintah select dulu, supaya posisi recordnya
'menuju ke data yg mau di update
rs.Open "Select * from tblcustomer where nama = '" & strNama & _
"'", cn, adOpenKeyset, adLockOptimistic
'menggunakan ADODB.Stream, makanya di references project
'di pilih "Microsoft ActiveX Data Objects 2.5 Object Library"
Set mstream = New ADODB.Stream
mstream.Type = adTypeBinary
mstream.Open
'misal data gambarnya ada di folder aplikasi ini
'dan di sub folder gambar
'contoh App.Path & "\gambar\test.jpg"
mstream.LoadFromFile strFullPathPic
rs.Fields("photo").Value = mstream.Read
rs.Update
rs.Close
cn.Close
End Sub
Private Sub Mengambil_Data_Gambar(ByVal strNama As String, _
ByVal strNamaFileBaru As String, strFullPathTemp As String)
Set cn = New ADODB.Connection
cn.Open "Provider = Microsoft.Jet.OLEDB.4.0;Data Source= " & _
App.Path & "\test.mdb;Persist Security Info=True"
Set rs = New ADODB.Recordset
rs.Open "Select * from tblcustomer where nama = '" & strNama & _
"'", cn, adOpenKeyset, adLockOptimistic
Set mstream = New ADODB.Stream
mstream.Type = adTypeBinary
mstream.Open
mstream.Write rs.Fields("photo").Value
'gambar dibuat di folder aplikasi di dalam
'sub folder "hasil gambar"
'contoh App.Path & "\hasil gambar\"
'gambar dari database musti di buat file gambarnya dulu
'baru bisa di tampilkan, nama file dan ext nya
'bebas (coba.jpg,coba.gif)
'makanya kita harus menyimpan info ext filenya,kalau tidak
'mau bisa kita hardcode sendiri (kan cuman untuk temporary doang)
mstream.SaveToFile strFullPathTemp & _
strNamaFileBaru, adSaveCreateOverWrite
'ini untuk melihat hasil dari database
Picture1.Picture = LoadPicture(strFullPathTemp & _
strNamaFileBaru)
Picture1.Refresh
rs.Close
cn.Close
End Sub
semoga bermanfaat ....
---------------------------------
From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Bagus
Wicaksono
Sent: Monday, July 09, 2007 11:37 AM
To: Indoprog
Subject: [indoprog-vb] Masih mengenai Simpan Gambar di Ms Accsess
Teman-teman dan Master-master vb saya mohoon benar bantuan dan pencerahannya,
saya benar-benar lieer..
Saya diminta membuat data karyawan dikantor dengan menginputkan foto masing
karyawan.. saya menggunakan VB 6, Ms Access
Gambar fotonya ingin saya simpan di databasenya saja, Saya mohon bantuan dan
pencerahannya...
Misalnya saya ada 1 form berisi : objek
- Command (name: simpan)
- Command(name:tampil)
- Picture
berikut adalah source code untuk koneksi ke databasenya :
----------------------------------------------------------
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim strsql As String
Dim mstream As ADODB.Stream
Sub koneksi()
Set cn = New Connection
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source="+app.path+"\data.mdb;Persist Security Info=False"
cn.Open
End Sub
Sub rectabel(strsql As String)
Set rs = New Recordset
rs.CursorLocation = adUseClient
rs.Open strsql, con, adOpenKeyset, adLockOptimistic
End Sub
----------------------------------------------------------
Bagaimana untuk proses penyimpanan datanya ya..
Terimakasih banyak ya..
Bagus
---------------------------------
Fussy? Opinionated? Impossible to please? Perfect. Join Yahoo!'s user panel and
lay it on us.
[Non-text portions of this message have been removed]
#ygrp-mlmsg { FONT-SIZE: small; FONT-FAMILY:
arial,helvetica,clean,sans-serif}#ygrp-mlmsg TABLE { }#ygrp-mlmsg SELECT {
FONT: 99% arial,helvetica,clean,sans-serif}INPUT { FONT: 99%
arial,helvetica,clean,sans-serif}TEXTAREA { FONT: 99%
arial,helvetica,clean,sans-serif}#ygrp-mlmsg PRE { FONT: 100% monospace}CODE
{ FONT: 100% monospace}#ygrp-mlmsg { LINE-HEIGHT: 1.22em}#ygrp-text {
FONT-FAMILY: Georgia}#ygrp-text P { MARGIN: 0px 0px 1em}#ygrp-tpmsgs
{ CLEAR: both; FONT-FAMILY: Arial}#ygrp-vitnav { FONT-SIZE: 77%; MARGIN:
0px; PADDING-TOP: 10px; FONT-FAMILY: Verdana}#ygrp-vitnav A { PADDING-RIGHT:
1px; PADDING-LEFT: 1px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px}#ygrp-actbar {
CLEAR: both; MARGIN: 25px 0px; COLOR: #666; WHITE-SPACE: nowrap; TEXT-ALIGN:
right}#ygrp-actbar .left { FLOAT: left; WHITE-SPACE: nowrap}..bld {
FONT-WEIGHT: bold}#ygrp-grft { PADDING-RIGHT: 0px; PADDING-LEFT: 0px;
FONT-SIZE: 77%; PADDING-BOTTOM: 15px; PADDING-TOP: 15px; FONT-FAMILY:
Verdana}#ygrp-ft { PADDING-RIGHT: 0px; BORDER-TOP: #666 1px solid;
PADDING-LEFT: 0px; FONT-SIZE: 77%; PADDING-BOTTOM: 5px; PADDING-TOP: 5px;
FONT-FAMILY: verdana}#ygrp-mlmsg #logo { PADDING-BOTTOM: 10px}#ygrp-vital
{ PADDING-RIGHT: 0px; PADDING-LEFT: 8px; MARGIN-BOTTOM: 20px;
PADDING-BOTTOM: 8px; PADDING-TOP: 2px; BACKGROUND-COLOR: #e0ecee}#ygrp-vital
#vithd { FONT-WEIGHT: bold; FONT-SIZE: 77%; TEXT-TRANSFORM: uppercase;
COLOR: #333; FONT-FAMILY: Verdana}#ygrp-vital UL { PADDING-RIGHT: 0px;
PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 2px 0px; PADDING-TOP:
0px}#ygrp-vital UL LI { CLEAR: both; BORDER-RIGHT: #e0ecee 1px solid;
BORDER-TOP: #e0ecee 1px solid; BORDER-LEFT: #e0ecee 1px solid; BORDER-BOTTOM:
#e0ecee 1px solid; LIST-STYLE-TYPE: none}#ygrp-vital UL LI .ct {
PADDING-RIGHT: 0.5em; FONT-WEIGHT: bold; FLOAT: right; WIDTH: 2em; COLOR:
#ff7900; TEXT-ALIGN: right}#ygrp-vital UL LI .cat { FONT-WEIGHT:
bold}#ygrp-vital A { TEXT-DECORATION: none}#ygrp-vital A:hover {
TEXT-DECORATION: underline}#ygrp-sponsor #hd { FONT-SIZE: 77%; COLOR:
#999}#ygrp-sponsor #ov { PADDING-RIGHT: 13px; PADDING-LEFT: 13px;
MARGIN-BOTTOM: 20px; PADDING-BOTTOM: 6px; PADDING-TOP: 6px; BACKGROUND-COLOR:
#e0ecee}#ygrp-sponsor #ov UL { PADDING-RIGHT: 0px; PADDING-LEFT: 8px;
PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px}#ygrp-sponsor #ov LI {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 77%; PADDING-BOTTOM: 6px;
PADDING-TOP: 6px; LIST-STYLE-TYPE: square}#ygrp-sponsor #ov LI A { FONT-SIZE:
130%; TEXT-DECORATION: none}#ygrp-sponsor #nc { PADDING-RIGHT: 8px;
PADDING-LEFT: 8px; MARGIN-BOTTOM: 20px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px;
BACKGROUND-COLOR: #eee}#ygrp-sponsor .ad { PADDING-RIGHT: 0px; PADDING-LEFT:
0px; PADDING-BOTTOM: 8px; PADDING-TOP: 8px}#ygrp-sponsor .ad #hd1 {
FONT-WEIGHT: bold; FONT-SIZE: 100%; COLOR: #628c2a; LINE-HEIGHT: 122%;
FONT-FAMILY: Arial}#ygrp-sponsor .ad A { TEXT-DECORATION: none}#ygrp-sponsor
.ad A:hover { TEXT-DECORATION:
underline}#ygrp-sponsor .ad P { MARGIN: 0px}o { FONT-SIZE:
0px}..MsoNormal { MARGIN: 0px}#ygrp-text TT { FONT-SIZE: 120%}BLOCKQUOTE
{ MARGIN: 0px 0px 0px 4px}..replbq { }
---------------------------------
Sekarang dengan penyimpanan 1GB
http://id.mail.yahoo.com/
[Non-text portions of this message have been removed]