VFP Mysql, error al grabar archivos a la base
Publicado por byrpa (1 intervención) el 01/04/2012 06:56:11
Buenas tardes, estoy tratando de grabar un archivo de imagen a la base de datos Mysql por medio de VFP9. Aun no he tenido exito, aca pongo el codigo para ver si alguien ya hizo esto y me pueda orientar. Cuando reviso la consulta en el campo archivo= me abre las comillas simples y un monton de caracteres ascii, pero me da error al grabar el archivo. Sera problema de la base o del codigo. Gracias por su ayuda.
LOCAL bDocumento AS BLOB
bDocumento=(0h) && Inicializamos la Variable
*bDocumento=FILETOSTR(thisform.text2.value) &&esta caja se podia poner la ruta y el archivo
bDocumento=FILETOSTR("c:\telefono.jpg")
*Grabación de registro
TEXT TO cCadena TEXTMERGE NOSHOW
INSERT INTO adjuntos SET
descripcion='<<thisform.text1.Value>>',
archivo='<<bDocumento>>'
ENDTEXT
*sqlconexion() es la cadena de conexion que funciona perfecto.
cConexion=sqlconexion() &&retorna 1 si hay conexion de lo contrario 0 o -1
IF cConexion>0
nconsulta=SQLEXEC(cConexion,cCadena)
IF nconsulta>0
wait window "Consulta exitosa..." timeout .30
SQLDISCONNECT(cConexion)
ELSE
*Este el error que me da.
MESSAGEBOX("Error 3003: No se pudo realizar la consulta. Verificar consulta",16,"Error")
QUIT
Endif
ELSE
MESSAGEBOX("Error 3000: No hay conexion a la base, revise servidor.",16,"Error")
quit
ENDIF
thisform.Release
Return
LOCAL bDocumento AS BLOB
bDocumento=(0h) && Inicializamos la Variable
*bDocumento=FILETOSTR(thisform.text2.value) &&esta caja se podia poner la ruta y el archivo
bDocumento=FILETOSTR("c:\telefono.jpg")
*Grabación de registro
TEXT TO cCadena TEXTMERGE NOSHOW
INSERT INTO adjuntos SET
descripcion='<<thisform.text1.Value>>',
archivo='<<bDocumento>>'
ENDTEXT
*sqlconexion() es la cadena de conexion que funciona perfecto.
cConexion=sqlconexion() &&retorna 1 si hay conexion de lo contrario 0 o -1
IF cConexion>0
nconsulta=SQLEXEC(cConexion,cCadena)
IF nconsulta>0
wait window "Consulta exitosa..." timeout .30
SQLDISCONNECT(cConexion)
ELSE
*Este el error que me da.
MESSAGEBOX("Error 3003: No se pudo realizar la consulta. Verificar consulta",16,"Error")
QUIT
Endif
ELSE
MESSAGEBOX("Error 3000: No hay conexion a la base, revise servidor.",16,"Error")
quit
ENDIF
thisform.Release
Return
Valora esta pregunta


0