Visual Basic.NET - imagen en sql

   
Vista:

imagen en sql

Publicado por Ivan Troya (7 intervenciones) el 20/09/2007 23:48:15
Hola con todos,
Lo que quiero hacer es grabar y leer imagenes en sql 2005 y tengo el siguiente codigo.

Dim OtraFila As DataRow
OtraFila = dsCatCod.Tables("Imagenes").Rows(0)
'Establecer los datos nuevos
OtraFila("Cedula_identidad") = Me.TextBox1.Text
OtraFila("foto") = TablaNavegar.Image2Bytes(Me.PictureBox1.Image)

'actualizo
Dim sql1 As String = ""

sql1 = "update tabla_foto set cedula_identidad = '" & OtraFila("cedula_identidad") & "',foto=" & OtraFila("foto") & " where cedula_identidad ='" + Me.Label5.Text + "'"

Using con As New SqlConnection(conneccion)
Dim command As New SqlCommand(sql1, con)
command.Connection.Open()
command.ExecuteNonQuery()
End Using

Al ejecutar el update me sale un erro en & "',foto=" & OtraFila("foto") y me dice que es por convercion de datos, no se como guardar una imagen en la base sql, o como pasar una variable tipo datarow a la base.

Saludos
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:imagen en sql

Publicado por Harold V. (411 intervenciones) el 21/09/2007 05:42:05
Hola:

Aqui tienes un ejemplo de como guardar imagenes en SQL y como recuperarlas.....

'Guardar imagen
Private Sub cmdSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdSave.Click

Dim img As Byte() = SaveImage(PictureboxImagen.Image)
Dim guardardatos As String = "Insert into TuTabla (NOMBRE,APELLIDO,Imagen) values ('" & Me.txt_nombre.Text & "','" Me.txt_apellido.Text & "', @Imagen)"

Dim Mycommand As New SqlCommand(guardardatos, TuConexion)
Mycommand.CommandType = CommandType.Text

Dim parImagen As SqlParameter = New SqlParameter("@imagen", SqlDbType.VarBinary, img.Length)
parImagen.Value = img
Mycommand.Parameters.Add(parImagen)

End Sub

'Para mostrar la imagen en tu picturebox (esto va dentro de tu boton mostrar)
If Not DataSet.Tables(0).Rows(EncRow).Item("IMAGEN").ToString = String.Empty Then
PictureboxImagen.Image = LoadImage(CType(DataSet.Tables(0).Rows(EncRow).Item("IMAGEN"), Byte()))
End If
''''''''''''''''''''''''''''''''''''''''''''

Function LoadImage(ByVal imageData As Byte()) As Image
Try
Dim imageStream As New IO.MemoryStream(imageData)
Dim imageObject As Image
imageStream.Flush()
imageObject = Image.FromStream(imageStream)
imageStream.Close()
Return imageObject
Catch ex As Exception
MsgBox("Error al cargar imagen.")
Return Nothing
End Try
End Function

Function SaveImage(ByVal imageObject As Image) As Byte()
Try
Dim imageStream As New IO.MemoryStream
Dim imageData As Byte()
imageObject.Save(imageStream, System.Drawing.Imaging.ImageFormat.Jpeg)
imageStream.Flush()
imageData = imageStream.GetBuffer()
Return imageData
Catch ex As Exception
Return Nothing
MsgBox("Error al guardar imagen.")
End Try
End Function
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:imagen en sql

Publicado por Ivan Troya (7 intervenciones) el 21/09/2007 16:55:08
Ok , muchas gracias todo me funciono de marabilla
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