cara menyimpan gambar visual basic, koding menyimpan gambar vb, menyimpan gambar ke database visual basic
Pada tutorial Visual Basic kali ini Admin Sisco25.com akan Membahas mengenai Coding Menyimpan Gambar Visual Basic Database Access. Jika teman-teman membuat Project Vb.net dengan menggunakan Database Access, maka Extensinya nanti harus Menggunakan ACCDB.
Mengapa Demikian, Karena Extension tersebut digunakan untuk Ms.Access 2007 keatas (2007,2010,2013,2016).
Oke kali ini kita akan langsung ke topik pembahasan, ikuti tutorialnya baik-baik.

http://www.sisco25.com/

Cara Menyimpan Gambar ke Database Access dengan VB.Net.


Berikut ini langkah-langkah Menyimpan Gambar di Vb.Net Database Access.ACCDB :

1. Membuat Form Visual Basic.Net


Silahkan buka Visual Studio anda, Klik File - New - Project.


berikut keterangan gambar diatas :

  1. Klik Visual Basic
  2. Pilih Windows Form Application
  3. Buatlah Nama Project contoh : Tutorial Menyimpan Gambar , kemudian simpan sesuai keinginan teman-teman.
  4. Klik OK

Jika sudah  maka muncul seperti gambar dibawah :



Secara default, maka akan muncul Form1, anda tidak perlu merubah nama form, anda langsung membuat design Form1 seperti gambar dibawah ini :


Property Formnya seperti berikut :

Object Name Text
Form 1 Form 1[ TutorialKoding ]MenyimpanGambar
Label 1 Label 1 Nim
Label 2 Label 2 Nama
Label 3 Label 3 Foto
TextBox 1 txt_nim -
TextBox 2 txt_nama -
Button 1 btn_simpan Simpan
Button 2 btn_hapus hapus
Button 3 btn_clear clear
Button 4 btn_browse browse
Button 5 BhapusGambar hapus
DataGridView DgvMahasiswa -
PictureBox PicPhoto -
OpenFileDialog OfdPhoto -

Setelah membuat design form1 seperti gambar diatas, jika sudah maka tahap 1 sudah selesai, selanjutnya silahkan ikuti langkah ke 2.


2.Membuat Database dan Tabel Dengan Access ACCDB


Buatlah Database dan Tabel Dengan Access ACCDB dengan nama : sisco.accdb kemudian simpan di Folder bin > Debug (di dalam Project Vb.Net anda).
Setelah itu buatlah Table dengan Nama : Sisco25 (contoh) seperti gambar berikut :



pastikan data Table sudah sesuai seperti gambar di atas, Jika sudah, kita lanjut ke langkah ke 3.

3.Membuat Coding Modul, Simpan dan Hapus dengan VB.Net


Pada langkah ke 3 ini, pertama-tama kita harus Membuat Koneksi Database Access dan VB.NET yaitu dengan menggunakan sebuah MODUL.

pertama Klik Project > Add Module > Add lalu Tuliskan Kodingnya sebagai berikut :

Imports System.Data.OleDb
Module Module1
    Public Conn As OleDbConnection
    Public da As OleDbDataAdapter
    Public ds As DataSet
    Public cmd As OleDbCommand
    Public rd As OleDbDataReader
    Public Str As String

    'digunakan untuk menampung perintah 
    Public Query As String
    Public Int As Integer
    Public DT As DataTable
    Public record As New BindingSource

    Public Sub Koneksi()
        Str = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Application.StartupPath & "\sisco.accdb"
        Conn = New OleDbConnection(Str)
        If Conn.State = ConnectionState.Closed Then
            Conn.Open()
        End If
    End Sub
End Module

Jika sudah kita save, Maka Kita berhasil Membuat Modul untuk koneksi database.
Selanjutnya kita masuk kembali ke FORM 1 dan Lanjut ke koding Utama.

Koding Utama VB.NET Access ACCDB


Imports System.Data.OleDb
Imports System.IO
Public Class Form1
    Dim Picture As Integer
    Dim P As Integer
    Sub Clear()
        'mengkosongkan textbox dan picturebox
        txt_nim.Clear()
        txt_nama.Clear()
        picPhoto.Image = Nothing
    End Sub
    Sub TampilGrid()
        'memanggil gridview database ms.access sesuai nama table yang kita buat
        'disini saya membuat nama sisco25 pada table saya dan membuat koneksi pada table tsb
        Call Koneksi()
        da = New OleDbDataAdapter("SELECT Nim AS [Nim], NAMA AS [Nama], PHOTO AS [Photo] FROM sisco25 ORDER BY NIM ASC", Conn)
        ds = New DataSet
        da.Fill(ds, "sisco25")
        dgvMahasiswa.DataSource = ds.Tables("sisco25")
        dgvMahasiswa.Columns(0).Width = 200
        dgvMahasiswa.Columns(1).Width = 200
        dgvMahasiswa.Columns(2).Width = 200
    End Sub
    'mengconvert image menjadi format png
    Public Function ConvertImage(ByVal myImage As Image) As Byte()
        Dim mstream As New IO.MemoryStream
        myImage.Save(mstream, System.Drawing.Imaging.ImageFormat.Png)

        Dim myBytes(mstream.Length - 1) As Byte
        mstream.Position = 0
        mstream.Read(myBytes, 0, mstream.Length)

        Return myBytes
    End Function
    Private Sub btn_browse_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btn_browse.Click
        'ofdPhoto adalah nama dari open file dialog
        ofdPhoto.Filter = "JPG|*.JPG|BMP|*.BMP|GIF|*.GIF|PNG|*.PNG"
        ofdPhoto.RestoreDirectory = True
        ofdPhoto.ShowDialog()
        If ofdPhoto.FileName = "" Then Exit Sub
        'picPhoto adalah nama dari Picturebox
        picPhoto.ImageLocation = ofdPhoto.FileName
    End Sub
    Private Sub BhapusGambar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BhapusGambar.Click
        'untuk membatalkan gambar yg di pilih
        picPhoto.Image = Nothing
    End Sub
    Private Sub dgvMahasiswa_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgvMahasiswa.CellContentClick
        On Error Resume Next
        Dim i As Integer
        i = Me.dgvMahasiswa.CurrentRow.Index
        With dgvMahasiswa.Rows.Item(i)
            Me.txt_nim.Text = .Cells(0).Value
            Me.txt_nama.Text = .Cells(1).Value

        End With
    End Sub
    Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
        'memanggil procedure bersih
        'memanggil gridview dan membuat koneksi
        Call Clear()
        Call TampilGrid()
        Call Koneksi()
    End Sub 

Koding Simpan Data VB NET Access ACCDB


Langkah selanjutnya adalah membuat koding simpan ke database.

Private Sub btn_simpan_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btn_simpan.Click
        'mengecek apakah data sudah terisi semua
        If txt_nim.Text = "" Or txt_nama.Text = "" Then
            MsgBox("Data Mahasiswa belum lengkap", MsgBoxStyle.Exclamation, "Peringatan")

        Else
            Dim CMD As OleDbCommand
            Dim vImage As Byte() = ConvertImage(picPhoto.Image)
            Call Koneksi()

            Dim Simpan As String = "insert into sisco25 values ('" & txt_nim.Text & "','" & txt_nama.Text & "',@photo)"

            CMD = New OleDbCommand(Simpan, Conn)
            CMD.Parameters.Add(New OleDb.OleDbParameter("@photo", vImage))
            CMD.ExecuteNonQuery()
            'pesan bahwa data telah tersimpan
            MsgBox("Simpan data sukses...!", MsgBoxStyle.Information, "Perhatian")
        End If
        'memanggil procedure bersih
        Call TampilGrid()
        Call Clear()
        txt_nim.Focus()

    End Sub 

jika selesai, langkah selanjutnya buat Koding Hapus data dari VB.NET Access ACCDB.


Koding Hapus Data VB.NET Access ACCDB


Langkah terakhir adalam membuat Koding Hapus Database dari VB.net

Private Sub btn_hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_hapus.Click
        Call Koneksi()
        If txt_nim.Text = "" Then
            MsgBox("Kode Barang belum diisi")
            txt_nim.Focus()
        Else
            If MessageBox.Show("Yakin akan dihapus..?", "", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.Yes Then
                Call Koneksi()
                cmd = New OleDbCommand("Delete * From SISCO25 where NIM='" & txt_nim.Text & "'", Conn)
                cmd.ExecuteNonQuery()
                Call TampilGrid()
                Call Clear()
                txt_nim.Focus()
            End If
            Call TampilGrid()
        End If
    End Sub
End Class 

Demikianlah Tutorial yanng singkat ini Tentang, Cara Menyimpan Gambar ke Database Access VB.Net.
Teman-teman bisa Mengcopy koding di atas dan langsung mempraktekan.
Semoga Postingan ini dapat bermanfaat  membantu teman-teman semua, dan jangan lupa Share dan beri komentar dibawah ini. Ikuti terus Tutorial tentang VB.NET atau tutorial-tutorial lainnya.

Cisco

Cisco

Terima kasih telah mengunjungi Sisco25.com , semoga tulisan ini dapat memberi hal yang bermanfaat sebagai informasi buat teman-teman semua.

Post A Comment:

0 comments: