Sql Veritanına Image Kaydetmek

Merhaba arkadaşlar, bu makalemizde sql veritabanımıza resim kaydedeceğiz. Formunuza 1 adet PictureBox, 2 adet Button ekleyin. Açıklamalar kod kısmında verilmiştir.





Şekil 1




Şekil 2



Şekil 3

Imports System.Data.SqlClient

Imports System.IO

Public Class Form1

Dim dosya As OpenFileDialog = New OpenFileDialog()

Private Sub btnAc_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAc.Click

dosya.InitialDirectory = "C:\"

dosya.Title = "Resim Seç"

dosya.FilterIndex = 1

dosya.Filter = ("Jpeg Resim Dosyası (*.jpg)|*.jpg|Gif Resim Dosyası (*.gif)|*.gif|Bmp Resim Dosyası(*.bmp)|*.bmp|Tüm Dosyalar(*.*)|*.*")

If dosya.ShowDialog() = DialogResult.OK Then

Dim ad As String = ""

ad = dosya.FileName

'Resimi pictureboxta gösterimini sağlıyoruz

pbox1.Image = Image.FromFile(ad)

pbox1.SizeMode = PictureBoxSizeMode.StretchImage

Label1.Text = dosya.SafeFileName

End If

End Sub

Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click

Dim str As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\image.mdf;Integrated Security=True;User Instance=True"

Dim baglan As SqlConnection

baglan = New SqlConnection(str)

Dim dosyaAdi As String

'resimin bulunduğu yeri tanımlıyoruz.

dosyaAdi = dosya.FileName

If File.Exists(dosyaAdi) Then

Dim id As Integer = 1

'resimi byte cinsinden okutup içeriğini alıyoruz.

Dim icerik As Byte() = ImageToStream(dosyaAdi)

baglan.Open()

'resimimizin veritabanına girişini yapıyoruz.

Dim komut As New SqlCommand("insert into images (id,resim) values ( @id,@resim)", baglan)

komut.Parameters.AddWithValue("@id", id)

komut.Parameters.AddWithValue("@resim", icerik)

komut.ExecuteNonQuery()

baglan.Close()

MsgBox("Girilen resim veritabanına başarıyla kaydedildi.")

Else

MsgBox(dosyaAdi & " bulunamadı! ")

End If

End Sub

Private Function ImageToStream(ByVal fileName As String) As Byte()

'memorystream ile tampon bellek oluşturuyoruz.

Dim ms As New MemoryStream()

git:

Try

Dim image As New Bitmap(fileName)

'resim dosyasını kaydediyoruz.

image.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg)

Catch ex As Exception

GoTo git

End Try

Return ms.ToArray()

End Function

End Class


Bir makalenin daha sonuna geldik. Bir sonraki makalede görüşmek dileğiyle. Hoşçakalın. Bahadır ŞAHİN

About Bahadır Şahin

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.

0 comments:

Öne Çıkan Yayın

GridView da Seçili Satırı DetailsView da Göstermek

Merhaba arkadaşlar bu makalemizde GridView nesnesi ile birlikte DetailsView nesanesini birlikte kullanacağız. GridView da seçili satırın de...