Ver Mensaje Individual
  #3 (permalink)  
Antiguo 14/03/2012, 08:48
Avatar de jhodmar
jhodmar
 
Fecha de Ingreso: febrero-2012
Ubicación: Medellin
Mensajes: 52
Antigüedad: 12 años, 2 meses
Puntos: 1
De acuerdo Respuesta: Guardar y cargar Campo Imagine con sql y VB.net

Ola Aquaventus....

bueno ya he avanzado un poco en este tema y si logro guardar mi imagen en BD

En un boton llamado "bntGuardarImagenBD" tengo este codigo
Cita:
'Guardar imagen en la bd, es mejor realizarlo con sqlClient y con parámetros @ o con procedimiento almacenado
Dim cnn As New OleDbConnection(cadenaConexion)
Dim curFileName As String = ""

Try
Dim openD As OpenFileDialog = New OpenFileDialog
openD.Filter = "JPG(*.jpg)|*.jpg|PNG(*.png)|*.png|GIF(*… *.Png, *.Gif, *.Tiff, *.Jpeg, *.Bmp)|*.Jpg; *.Png; *.Gif; *.Tiff; *.Jpeg; *.Bmp|Todos|*.*"
Dim filtro As String = openD.Filter
openD.Title = "Archivo de Imagen"
If openD.ShowDialog() = Windows.Forms.DialogResult.OK Then
curFileName = openD.FileName
Else
Exit Sub
End If

Dim fsImage As FileStream
fsImage = New FileStream(curFileName, FileMode.Open)
Me.pbImage.Image = Image.FromStream(fsImage)
Dim ms As New MemoryStream
Me.pbImage.Image.Save(ms, Me.pbImage.Image.RawFormat)
Dim arrImage() As Byte = ms.GetBuffer

Dim cmd As New OleDbCommand("update Imagenes set ParaImagen = ?", cnn)
cnn.Open()
With cmd
.Parameters.Add(New OleDbParameter("@img", OleDbType.VarBinary, arrImage.Length)).Value = arrImage
.ExecuteNonQuery()
End With
Catch ex As Exception
MsgBox(ex.Message)
Finally
cnn.Close()
End Try
End Sub
NOta: en la linea ( Dim cmd As New OleDbCommand("update Imagenes set ParaImagen = ?", cnn))
le mando ? por que si asigno directamente el objeto como tal me vota error

posteriormente quiero volver a cargarla dependiendo de un filtro traer la imagen correspondiente aun no lo he logrado!!! mas que cargarlo es cuestion de logica aplica a mi funcionamiento...

Escucho Sugerencias, correcciones o mejoras a mi codigo!!!

como esta realmente la imagen en BD:
(0xFFD8FFE000104A46494600010201000000000000FFE0001 C4........) y muchisimos caracteres mas!!!

Te agradezco cualquier Ayuda!!