Visual Basic.NET - Grabar una imagen en BD SQL

 
Vista:

Grabar una imagen en BD SQL

Publicado por Shania (16 intervenciones) el 15/09/2004 09:14:46
Hola a todos!

Me gustaría saber cómo grabar una imagen en una base de datos de SQL Server. No quiero grabar el path porque funcionará en red y a veces no coincidirá éste con su dirección real.
He conseguido pasar a Bytes la imagen que el usuario deja en un PictureBox pero ahora no sé cómo grabarla en la base de datos, mi intención es guardarla en el campo Foto de la tabla Clientes realizando una INSERT pero me da error, ¿alguien me puede ayudar?

Muchas gracias y un saludo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Grabar una imagen en BD SQL

Publicado por Shania (16 intervenciones) el 15/09/2004 11:18:10
Hola de nuevo!
He creado un procedimiento almacenado para insertar la imagen y parece que funciona, digo "parece" porque si abro la tabla para ver el contenido del campo Foto lo único que pone es <binary>.
Ahora lo que quiero es leer ese campo y poner el contenido en el Picture Box. He buscado por ahí y encontré un código pero no me funciona os lo pongo a ver si vosotros me podéis ayudar:

Dim sqlDA As SqlClient.SqlDataAdapter
sqlDA = New SqlClient.SqlDataAdapter("SELECT Foto FROM Clientes WHERE CodCliente=" & Codigo, vg.ConexionSql)

Dim cmd As New SqlClient.SqlCommandBuilder(sqlDA)
Dim ds As New DataSet
sqlDA.Fill(ds, "Tabla")
Dim c As Integer = ds.Tables("Tabla").Rows.Count

If c > 0 Then
Dim byteBLOBData(-1) As [Byte]

'En esta fila da error :
byteBLOBData = CType(ds.Tables("Tabla").Rows((c - 1))("Foto"), [Byte]())

Dim stmBLOBData As New System.IO.MemoryStream(byteBLOBData)

MostrarFoto = Image.FromStream(stmBLOBData)

End If

El error es el siguiente: "La conversión especificada no es válida"

El campo "foto" es de tipo varbinary. En fin, a ver si se os ocurre algo.

Muchas gracias y un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Grabar una imagen en BD SQL

Publicado por Edgar (1501 intervenciones) el 15/09/2004 14:18:25
Hola

leete este artículo... te puede ser de mucha ayuda

http://www.elguille.info/colabora/puntoNET/mack_imagenesBD.htm

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Grabar una imagen en BD SQL

Publicado por Shania (16 intervenciones) el 15/09/2004 16:03:23
Hola Edgar!
Ya había mirado ese artículo, pero está en C#, lo pasé a vb.net pero no me funcionaba, no sé si es que se me pasó algo por alto al hacer la conversión o qué, pero me salía el mismo error que con el código que he puesto en mi anterior post.
¿se te ocurre algo más?
Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar