Necesito gaurdar un BMP nen un campo BLOB en una tabla Mysq

Post Reply
User avatar
busmatic
Posts: 51
Joined: Fri Jun 30, 2006 6:56 pm
Contact:

Necesito gaurdar un BMP nen un campo BLOB en una tabla Mysq

Post by busmatic »

Un saludo listeros.

Ando detras hace dias de como se guarda un archivo BMP dentro de un campo BLOB en una tbala Mysql.

Algun ejempl funciona el xhar agradeceria mucho.

Gracias a Montones desde ya.

_ Chacon
Busmatic de CR.
Frafive
Posts: 189
Joined: Wed Apr 05, 2006 9:48 pm

Post by Frafive »

Hola

Yo lo estoy haciendo con eagle de la siguiente forma y funciona de maravilla , en el campo blob puede guardar cualquier cosa.



oTb:=TMsQuery():New(::oDataBase)
cImagen:=oTb:ReadFromFile(cFoto)

cInsert:= "INSERT INTO `fotos` (`cfoto`,`codigo`,`ctexto`) VALUES "
cInsert +="('"+cImagen+"','"+str(nCodigo)+"','"+alltrim(cTexto)+"');"

::oDataBase:Execute(cInsert)
User avatar
busmatic
Posts: 51
Joined: Fri Jun 30, 2006 6:56 pm
Contact:

No compañero funciona en , gracias de todas maneras

Post by busmatic »

Utilizo Tmysql y estube utilizando una rutinas de quintanilla que me ha ayudado.
el utiliza Eagle 1 y Tmysql y algo no funca.

Alguuine ma que haya logrado implementarlo.
gracias

Busmatic
_ Chacon.
ricardog
Posts: 149
Joined: Tue Oct 11, 2005 3:10 pm

Post by ricardog »

Yo hago lo siguiente:

En la base de datos, el campo de la imagen lo genero como LONGTEXT, y para guardar y leer las imagenes hago lo siguiente:
ACTIVATE DIALOG oDlg CENTERED

if ! lContinuar; return(nil); endif

cPath=cGetFile("*.jpg;*.bmp",'Seleccione la imagen deseada')
cTemp = '.\bitmaps\temp001.tmp'

FMimeEnc(cPath,cTemp) //Esta es la función que nos ayuda agrabar la imagen como texto

if file(cTemp)
cMemo=memoread(cTemp)
cMemo=STRTRAN(cMemo,CRLF,'')

::oRsImagenes:AddNew()

TRY

::oRsImagenes:Fields("IdCliente"):Value := ::Id
::oRsImagenes:Fields("IdDocto"):Value := oSolicitud:IdDocto
::oRsImagenes:Fields("Descripcion"):Value := cNomSol
::oRsImagenes:Fields("Imagen"):Value := cMemo
::oRsImagenes:Update()
ferase(cTemp)
msginfo('Imagen salvada !', oApp:cEmpresa)
Catch oErr
Msginfo( 'La Imagen no puede ser agregada a la base de datos !',oApp:cEmpresa )
End
else
Msginfo( 'La Imagen no pudo ser guardada en la base de datos !',oApp:cEmpresa )
endif
osolicitud:End()
//::oRsImagenes:Requery()
Return Self

METHOD AbreImagen() CLASS TCliente //Para abrir una imagen GRABADA en la BD
local cMemo:='',cTemp:=''

SysRefresh()
CursorWait()

cMemo := ::oRsImagenes:Fields("imagen"):Value

if !empty(cMemo)

cTemp = '.\Bitmaps\temp002.tmp'

MEMOWRIT(cTemp,cMemo)

if file(cTemp)

cTemp2 = '.\Bitmaps\temp003.JPG'

FMimeDec(cTemp,cTemp2) //Esta es la funcion que nos permite leer la imagen en la base de datos

if file(cTemp2)

ShellExecute(GetActiveWindow(),"open",cTemp2)

else
MsgAlert("No ha sido posible leer la imagen de la base de datos" ,oApp:cEmpresa)
endif
else
MsgInfo("No existe la imagen del documento" ,oApp:cEmpresa)
endif
else
MsgInfo("No es posible abrir la imagen del Documento" ,oApp:cEmpresa)
EndIf
SysRefresh()
CursorArrow()


Return Self
Espero que te sea util.

Saludos
Ricardo E. Guardado Flores
Guadalajara, Jalisco Méx.
Post Reply