Ok.. ti posso allegare una funzione che recuperare l'immagine dal Database , recupera una lista delle immagini del database e l'altra come caricare l'immagine sul Database :
'Funzione che carica l'immagine nel Database
Private Sub CaricaImgData()
Dim cn As New SqlConnection(strCn)
Dim cmd As New SqlCommand("INSERT INTO BLOBTest (BLOBData) " & _
"VALUES (@BLOBData)", cn)
Dim strBLOBFilePath As String = _
"C:\Users\DAVIDE\Pictures\Img\1-1.png"
Dim fsBLOBFile As New FileStream(strBLOBFilePath, _
FileMode.Open, FileAccess.Read)
Dim bytBLOBData(fsBLOBFile.Length() - 1) As Byte
fsBLOBFile.Read(bytBLOBData, 0, bytBLOBData.Length)
fsBLOBFile.Close()
Dim prm As New SqlParameter("@BLOBData", SqlDbType.VarBinary, _
bytBLOBData.Length, ParameterDirection.Input, False, _
0, 0, Nothing, DataRowVersion.Current, bytBLOBData)
cmd.Parameters.Add(prm)
cn.Open()
cmd.ExecuteNonQuery()
cn.Close()
End Sub
Recupera la lista delle Immagine del Database :
'Funzione che recupera la lista delle immagini dal Database
Private Function RecuperaImgData() As List(Of Image)
Dim cn As New SqlConnection(strCn)
Dim cmd As New SqlCommand("SELECT BLOBID, " & _
"BLOBData FROM BLOBTest ORDER BY BLOBID", cn)
Dim da As New SqlDataAdapter(cmd)
Dim ds As New DataSet()
Dim img As List(Of Image) = New List(Of Image)
da.Fill(ds, "BLOBTest")
Dim c As Integer = ds.Tables("BLOBTest").Rows.Count
While (c > 0)
Dim bytBLOBData() As Byte = _
ds.Tables("BLOBTest").Rows(c - 1)("BLOBData")
Dim stmBLOBData As New MemoryStream(bytBLOBData)
img.Add(Image.FromStream(stmBLOBData))
c = c - 1
End While
Return img
End Function
Recupera immagine in base all'id del record nel Database :
Codice SQL come è creata la tabella Demo :
CREATE TABLE BLOBTest
(
BLOBID INT IDENTITY NOT NULL,
BLOBData IMAGE NOT NULL
)
Aggiungere anche la stringa di connessione, modificarla in base al vostro server sql
Link Utili :
http://www.dreamincode.net/forums/topic/103960-save-and-retrieve-images-with-sql-server/
http://www.codeproject.com/Articles/437937/Save-and-Retrieve-Image-from-a-SQL-Server-Database
Se vuoi ti allego anche il file Demo che ho creato.
N.B. : Ricuperata l'immagine tu la puoi adattare tranquillamente alla grandezza che vuoi.
Saluti Davide,
Blog ImaginSystems
http://blogs.dotnethell.it/imaginsystems
http://www.imaginsystems.it
http://www.alpacasrl.it