Autor Tema: OOOOtra vez guardado de imágenes  (Leído 53 veces)

0 Usuarios y 1 Visitante están viendo este tema.

pedroesca

  • Megabyte
  • ***
  • Mensajes: 206
  • Reputación: +19/-0
  • "El conocimiento es libre"
    • Ver Perfil
OOOOtra vez guardado de imágenes
« en: Abril 19, 2017, 08:16:15 pm »
Buenas a todos!!!! pareciera ser un tema de "nunca acabar" esto, pero bueno. El tema es que siempre usé este code para guardar las imagenes en la BD y siempre me funcionó de mil maravillas (aclaro que me ayudaron ustedes acá), pero siempre usé como Base de datos a ACCESS; ahora pasé hace un tiempo a MySql y cuando quiero utilizar esta rutina para guardar una imagen, me tira un error que dice: "Información de columna de clave insuficiente para realizar la operación Update o Refresh". Aclaro por las dudas que la consulta se genera bien, el tipo de datos es LongBlob, etc.

El código es el siguiente.
Código: [Seleccionar]
Public Sub SAVE_IMAGE(Path_IMAGE As String, Tabla As String, ID_Campo As String, ID_VALUE As Long, Campo As String)
On Error GoTo ERR_HANDLER:
    Dim i As Integer
   
    If Len(Dir(Path_IMAGE)) = 0 Then
       MsgBox "Ruta de Archivo inválida", vbExclamation, "Aviso"
       Exit Sub
    End If
   
    Open Path_IMAGE For Binary Access Read As #1
    lngLengh = LOF(1)
    If lngLengh = 0 Then
       Close
       Exit Sub
    End If
    intChunks = lngLengh \ 1024
    intFragment = lngLengh Mod 1024
    ReDim arrImagen(intFragment)
    Get 1, , arrImagen()
    '''''''''
    OpenRECORDSET "SELECT " & Campo & " From " & Tabla & " Where " & ID_Campo & "=" & ID_VALUE, ESCRITURA, Rs
    Rs(Campo).AppendChunk arrImagen()
       
    ReDim arrImagen(1024)
    For i = 1 To intChunks
        Get 1, , arrImagen()
        Rs(Campo).AppendChunk arrImagen()
    Next i
    Rs.Update
    Rs.Close
    Close
ERR_HANDLER:
    If Err.Number = 0 Then
        Exit Sub
    Else
        MsgBox "Se ha producido un error (" & Err.Number & " -- " & Err.Description & ") Es posible que la imagen no se haya guardado", vbOKOnly + vbCritical, "Error"
        Close
        Err.Clear
    End If
End Sub

Existe alguna diferencia al guardar en MySql?
"Si yo tengo una idea, tú otra, y la compartimos, ambos tendremos DOS ideas"

pedroesca

  • Megabyte
  • ***
  • Mensajes: 206
  • Reputación: +19/-0
  • "El conocimiento es libre"
    • Ver Perfil
Re:OOOOtra vez guardado de imágenes
« Respuesta #1 en: Abril 20, 2017, 10:53:07 am »
SOLUCIONADO: el problema era a nivel Base de Datos, ya que solo traía UN SOLO campo e intentaba actualizarlo con el valor de la imagen, no me permite eso MySql, pero al traer dos campos y actualizar el correspondiente, anda de lujo.

Saludos.
"Si yo tengo una idea, tú otra, y la compartimos, ambos tendremos DOS ideas"