Menyimpan bitmap ke database MS Acces dengan VB.Net





Kita akan menyimpan file bitmap ke database Ms Acces dan kemudian menampilkannya ke form,scenarionya :

  1. pada gambar paling bawah adalah pada saat form diload
  2. kemudian kita klik ambil gambar maka tampilan gambar seperti pada form atas
  3. klik save untuk menyimpannya ke database
  4. file disimpan dalam type byte
  5. klik open untuk menampilkan gambar yang disimpan

-----------------------------------------------------------------

Open file dialog filter:Bmp Files(*.bmp)*.bmpGif Files(*.gif)*.gifJpg Files(*.jpg)*.jpg

Tombol Ambil gambar_clik :

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
OpenFileDialog1.ShowDialog()
PictureBox1.Image = Image.FromFile(OpenFileDialog1.FileName)
Exit Sub
End Sub

-----------------------------------------------------------------

Tombol save_clik :

Private Sub btnsave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsave.Click
Dim fs As FileStream = New FileStream(OpenFileDialog1.FileName, FileMode.Open, FileAccess.Read)
Dim s As String = TextBox1.Text
Dim r As BinaryReader = New BinaryReader(fs)
Dim FileByteArray() As Byte = r.ReadBytes(fs.Length)
Dim sql As String = "INSERT INTO Images (Filename,Photo) VALUES (?,?)"
Dim cmd As New System.Data.OleDb.OleDbCommand(sql, conn)
cmd.Parameters.Add("@Filename", System.Data.OleDb.OleDbType.VarChar).Value = TextBox1.Text
cmd.Parameters.Add("@Photo", System.Data.OleDb.OleDbType.Binary).Value = FileByteArray
conn.Open()
cmd.ExecuteNonQuery()
MessageBox.Show("Image Succesfully inserted !", "Image Save and Read", MessageBoxButtons.OK, MessageBoxIcon.Information)
conn.Close()
End Sub

-----------------------------------------------------------------
Tombol open_clik :

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim sql As String = "SELECT Photo FROM Images WHERE FileName='" & TextBox1.Text & "'"
conn.Open()
Dim objcom As New OleDbCommand(sql, conn)
rad = objcom.ExecuteReader
rad.Read()
Dim gambar() As Byte = CType(rad.Item("photo"), Byte())
Dim ms As MemoryStream = New MemoryStream(gambar)
Dim hslgambar As Drawing.Image = Bitmap.FromStream(ms)
PictureBox1.Image = New Bitmap(hslgambar)
Exit Sub
End Sub

----------------------------------------------------------
Tombol Delete_click :

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
On Error GoTo fix
Dim fn As String = InputBox("Enter name to delete")
Dim sql As String = "DELETE FROM Images WHERE FileName='" & fn & "'"
conn.Open()
Dim cmd As OleDbCommand = New OleDbCommand(sql, conn)
cmd.ExecuteNonQuery()
MessageBox.Show("Image Succesfully deleted !", "Image Save and Read", MessageBoxButtons.OK, MessageBoxIcon.Information)
conn.Close()
fix:
Exit Sub
End Sub

0 komentar: