Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/12/2012, 14:02
Avatar de Lerolero
Lerolero
 
Fecha de Ingreso: junio-2012
Mensajes: 18
Antigüedad: 11 años, 11 meses
Puntos: 0
Guardar imagen sql server

Hola, tengo el siguiente codigo
Código vb:
Ver original
  1. 'Se declaran variables para la consulta
  2.        Dim Consulta As String
  3.         Dim ds As New DataSet
  4.  
  5.         Dim foto As Byte() = ImageToByteArray(pct_imagencaptura.Image)
  6.         'Dim cadena As String = Convert.ToBase64String(foto)
  7.  
  8.         'Se crea la consulta sql para ingresar un nuevo registro
  9.        Consulta = " INSERT FOTOPLACA_TAB "
  10.         Consulta = Consulta + "("
  11.         Consulta = Consulta + "FOTOPLACA_ID,"
  12.         Consulta = Consulta + "FOTOPLACA_AUTORIZACIONID,"
  13.         Consulta = Consulta + "FOTOPLACA_PLACAID,"
  14.         Consulta = Consulta + "FOTOPLACA_IMAGEN,"
  15.         Consulta = Consulta + "FOTOPLACA_FECHA"
  16.         Consulta = Consulta + ") VALUES ( "
  17.         Consulta = Consulta + "" + "NEXT VALUE FOR FOTOPLACA_SEC" + "" + ", "
  18.         Consulta = Consulta + "" + G_IDAUTORIZACION + "" + ", "
  19.         Consulta = Consulta + "" + G_IDPLACA + "" + ", "
  20.         Consulta = Consulta + "" + foto + "" + ", "
  21.         Consulta = Consulta + "" + "GETDATE()" + "" + " "
  22.         Consulta = Consulta + ")"
  23.  
  24.         'EJECUTAR EL INSERT
  25.        Try
  26.             'Se ejecuta la consulta pasandole la cadena
  27.            ADONet_SQLExcute(Consulta)
  28.         Catch ex As Exception
  29.             MsgBox(ex.Message)
  30.         End Try
  31.         ds.Dispose()

Estoy intentando ingresar una imagen en la base de datos, pero al intentar convertir en string el array de byte, saca error.


Codigo que ejecuta la consulta
Código vb:
Ver original
  1. Public Sub ADONet_SQLExcute(ByRef ADO_Sql As String)
  2.         'EJECUTA UN SQL EXECUTE A LA BASE DE DATOS
  3.        'REQUIERE UNA CADENA SQL Y CONEXION ABIERTA
  4.        Dim oledbAdapter As OleDbDataAdapter
  5.         Dim ds As New DataSet
  6.         oledbAdapter = New OleDbDataAdapter(ADO_Sql, cnn)
  7.         oledbAdapter.Fill(ds)
  8.         oledbAdapter.Dispose()
  9.         ds.Dispose()
  10.     End Sub


He visto muchos ejemplos, pero casi todos son con sqlcommand y yo solo lo quiero hacer con el dataset.