Dalam jaman
sekarang sesuatu yang ringkas sesuatu yang memudahkan banyak yang mencari dan
dibutuhkan. Untuk itu sekarang dalam penyimpanan dokumen-dokumen banyak sudah
bergeser ke penyimpanan ke database. Sudah tidak berlaku lagi menyimpan dokumen
dalam berbentuk fisik. Memang dokumen fisik memang masih sangat di butuhkan,
tetapi bagaimana susahnya dalam mencari dokumen dan waktu yang dihabiskan. Penyimpanan dokumen dengan berbentuk
gambar ini sangat menguntukan karena tidak bisa di ubah isi dokumen tersebut,
bisa dicopy dalam berbentuk jpg. Keuntungan lainnya adalah tempat yang
dibutuhkan tidak banyak tempat yang dibutuhkan tetapi dibalik membutuhkan space
hardisk atau memori yang besar di server kita atau database kita. Berikut ini
cara menyimpan gambar ke dalam database :
1.
Dalam proses menyimpanan gambar
pasti kita harus menentukan gambar mana yang akan kita pilih. Untuk itu kita
memakai komponen CommonDialog. Berikut cara mencari gambar dengan komponen
CommonDialog :
Private Sub Command5_Click()
‘Image komponen yang digunakan untuk menampilkan gambar yang kita pilih di VB
Image1.Visible =
True
‘Propertise filter berfungsi untuk mefilter
atau mensortir file apa yang bisa di tampilkan atau extenon jpg atau bmp
CommonDialog1.Filter
= "image (*.jpg)|*.jpg|*.bmp|*.bmp"
CommonDialog1.ShowOpen
‘Memberikan posisi atau alamat dimana file
gambar yang kita pilih
Label1.Caption =
CommonDialog1.FileName
a =
CommonDialog1.FileName
‘menampilkan gambar ke yang kita pilih dengan
mengunakan komponen image1
Image1.Picture =
LoadPicture(a)
End Sub
2.
Setelah mengetahui alamat file yang kita pilih untuk kita ubah dari jpg
ke binary atau untuk proses penyimpanan ke dalam databasenya caranya sebagai
berikut :
Private Sub simpan_gambar()
NAMA =
Trim(Label1.Caption)
mstream.Type =
adTypeBinary
If
Len(Label1.Caption) > 0 Then
If mnul <> "T" Then
mstream.Open
End If
mstream.LoadFromFile (NAMA)
rs.Open "select * from Daftarwisuda
where NPM='" & Text2.Text & "'", _
Data, adOpenKeyset, adLockOptimistic
'rs.Open "select * from t_calonmhs
where mhregistrasi='" & Text1.Text & "'", conn,
adOpenKeyset, adLockPessimistic
rs.Fields("poto").Value =
mstream.Read
rs.Update
rs.Close
mstream.Close
End If
End Sub
Sebagai catatan
bahwasannya dalam menyimpan gambar, yang terlebih dahulu ada adalah record yang
menyimpan gambar tersebut. Jadi dapat disimpulkan bahwa gambar bisa di masukan
ke dalam database dengan cara mengupdate record bukan meninsert record.
Mstream harus di
deklarasikan terlebih dahulu di sebuah modul, dengan cara sebagai berikut :
Public Data,
Data1 As New ADODB.Connection
Public rs As New
ADODB.Recordset
Public rec As
New ADODB.Recordset
Public sql,
sqljum, posisi As String
Public brs,
kolom As Integer
Public mstream As ADODB.Stream
Public Sub koneksikan()
Set mstream = New ADODB.Stream
Set Data = New
ADODB.Connection
Set Data1 = New
ADODB.Connection
Data.Open
"Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security ……..”
End Sub
3.
Untuk menampilkan kembali
gambar yang tersimpan di database kemudian di tampilkan ke vb sebagai berikut :
Private Sub Text2_Change()
sql =
"Select * from Mahasiswa where npm='" & Trim(Text2) & "'
"
Set rec =
Data.Execute(sql, , adCmdText)
With rec
If Not .EOF Then
Text1 = !NAMA
Text7 = !IPK
Text3 =
!tgllahir
Text4 = !ALAMAT
Text5 =
!TELPRMHHP
Text6 = !ORTU
If IsNull(!poto)
Then
Image1.Visible =
False
Else
Image1.Visible =
True
‘proses mengubah gambar dari database yang
berbentuk binery ke jpg
mstream.Type = adTypeBinary
mstream.Open
‘membuat binery ke jpg
mstream.Write
!poto
‘menyimpan dalam bentuk file jpg
mstream.SaveToFile
App.Path & "\sapto.jpg", adSaveCreateOverWrite
‘Menampilkan gambar ke image1
Set
Image1.Picture = _
LoadPicture(App.Path
& "\sapto.jpg")
mstream.Close
End If
End With
End If
End Sub
Utamankan dalam
mencoba sintak ini adalah paham bukan di hafal. Anda mengentik sintak di atas
pasti ada yang error karena anda belum paham dan anda coba satu persatu setiap
kegiatannya, yaitu yang pertama buat ambil photo, kedua menyimpan photo, dan
terakhir mengembalikan ke jpg