Simpan dan Tampilkan Gambar VB.NET Database SQL Server

Menyimpan gambar dan menampilkan kembali gambar di form VB.NET menggunakan database MySQL server memungkinkan programer vb.net dengan memanfaatkan namespace system.IO untuk mengupload image dan menampilkannya kembali pada PictureBox di visual basic NET, Images yang akan kita simpan ke database SQl Server hanya berisi data type biner, jadi sebelum menyimpan gambar kita harus mengkonversinya terlebih dahulu kedalam bentuk Byte. Bagaimana cara pembuatannya? simak terus tutorial vb.net berikut.
Simpan dan Tampilkan Gambar

Membuat Database SQL Server

Buatlah database baru di sql server dan beri nama "SaveImage",  buat nama table "tbl_images" dan beberapa column, diantaranya "id_gambar","nama" dan "gambar", buat kamu yang belum bisa membuat database di sql server bisa melihat tutorial kami sebelumnya tentang CRUD VB.NET (Create,Read,Update,Delete) Database SQL Server, atau bisa juga langsung dengan mengupdate database baru kamu dengan Script sql berikut :
CREATE TABLE [dbo].[tbl_images](
[nama] [varchar](50) NULL,
[gambar] [image] NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
Lihat gambar untuk lebih jelasnya :
membuat database sql server
Jika membuat database sql servernya sudah siap, lanjut kita akan membuat aplikasi vb net menggunakan visual studio, buka visual studionya ya.

Membuat Aplikasi Menyimpan dan Memunculkan Images Vb.NET

Buatlah project baru dan beri nama "SimpanGambar", pada form1.vb ubah menjadi "frmSimpanGambar.vb" dan desain tampilan gambar kamu kira - kira seperti berikut :

simpan gambar di vb net

Membuat Koneksi ke SQL Server

Buatlah sebuah module koneksi yang berfungsi untuk menghubungkan aplikasi dengan database SQL Server, dan beri nama "mdlKoneksi.vb".
Imports System.Data.SqlClient
Module mdlKoneksi
Public konek As SqlConnection
Sub konekDB()
Try
konek = New SqlConnection _
("Data Source=DESKTOP-5VBP3C9\SQLEXPRESS;" _
+ "Initial Catalog=namadatabase;Integrated Security=True")
konek.Open()
Catch ex As Exception
MsgBox("konek Kedatabase Bermasalah, " _
+ "Periksa koneksi Jaringan Anda")
End Try
End Sub
End Module
Penjelasan :
sesuaikan nama database dengan database sql server kamu.

Selanjutnya pada Frmsimpangambar.vb import namespace sqlclient dan system I/O
Imports System.Data.SqlClient
Imports System.IO

Sub Tampilkan data Ke DataGridView

    Sub TampilkanData()
konekDB()
Dim dA As SqlDataAdapter = New SqlDataAdapter _
("SELECT nama,gambar FROM tbl_images", konek)
Dim dS As DataSet = New DataSet
dS.Clear()
dA.Fill(dS, "tbl_images")
DataGridView1.DataSource = (dS.Tables("tbl_images"))
dA.Dispose()
konek.Close()
End Sub
Penjelasan :
Untuk menampilkan nama dan gambar dari database sql server ke datagridview,

Code Tombol Browse Images

disini saya menggunakan class opendialog, tambahkan opendialog ke form kamu dan tuliskan code berikut :
    Private Sub Button1_Click(sender As Object, e As EventArgs) _
Handles Button1.Click
If OpenFileDialog1.ShowDialog() =
Windows.Forms.DialogResult.OK Then
PictureBox1.BackgroundImage =
Image.FromFile(OpenFileDialog1.FileName)
PictureBox1.BackgroundImageLayout =
ImageLayout.Zoom
End If
End Sub
Penjelasan :
OpenDialog berguna untuk mengambil gambar dari computer dan menampilkannya di PictureBox

Code Tombol Simpan Images
    Private Sub Button2_Click(sender As Object, e As EventArgs) _
Handles Button2.Click
If TextBox1.Text = "" Then
MsgBox("Isikan nama Gambar")
Else
konekDB()
Dim CMD As SqlCommand
Dim SQL As String
SQL = "INSERT INTO tbl_images VALUES(@nama, @gambar) "
CMD = New SqlCommand(SQL, konek)
CMD.Parameters.AddWithValue("@nama", TextBox1.Text)
Dim MemoryStream As New MemoryStream
PictureBox1.BackgroundImage.Save(MemoryStream,
PictureBox1.BackgroundImage.RawFormat)
Dim Dgambar As Byte() = MemoryStream.GetBuffer
Dim Images As New SqlParameter("@gambar", SqlDbType.Image)
Images.Value = Dgambar
CMD.Parameters.Add(Images)
CMD.ExecuteNonQuery()
MsgBox("Gambar Berhasil Disimpan")
TextBox1.Clear()
CMD.Dispose()
konek.Close()
TampilkanData()
End If
End Sub
Penjelasan :
Ketika tombol simpan ditekan dan nama file (textbox1.text) tidak kosong maka akan menyimpan nama dan gambar ke database Sql Server kemudian akan menutup koneksi serta akan memanggila kembali sub TampilkanData() untuk meload kembali images yang barusan kamu simpan.

Code Form_Load

    Private Sub frmSimpanImages_Load(sender As Object, e As EventArgs) _
Handles MyBase.Load
TampilkanData()
End Sub
Akan otomatis menampilkan data ke DataGridView saat aplikasi pertama di Load.

Aplikasi simpan dan menampilkan Images ke DataGridView ini sangat sederhana, kamu bisa mengedit sesuai kebutuhan kamu, selamat belajar ya.