Hot Penyimpanan Gambar Ke Dalam Database
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
Selamat mencoba dan mudah-mudah bermanfaat.