Imagenes en Oracle 7
Buenos dias a todos, os agradeceria que me echaseis una mano, porque no consigo solucionar el siguiente tema:
1. Tipo de campos en Oracle 7 para almacenar una imagen jpg. 2. Como la almaceno y recupero desde delphi. Gracias todos.:rolleyes: |
guardar y recuperar imagenes
Intenta con un campo blob de oracle.
Para guardarlo puedes probar con el tipo Stream de Delphi. Aqui te envio la funcion que guarda la imagen, seria mas o menos asi function guardarImagen( NombreImagen: String; Data: TStream): Boolean; var F: TFileStream; begin F := TFileStream.Create(nombreImagen, fmCreate); try F.CopyFrom(Data, 0 ); Result:= True; except Result:= false; end; F.Free; end; Para instanciarla es: guardarimagen('nombre.jgp',Query.CreateBlobStream(Query.FieldByName('IMAGEN'), bmRead)); Espero que te sirva. Saludos. |
En oracle 7, me parece que el tipo adecuado es Long Raw.
Hasta luego. ;) |
hola
tengo un problema similiar, yo guardo la imagen de la siguiente forma pero no se si esta bien..
tabla1.insert; tabla1.FieldByName('Imagen').LoadFromFile('c:\ruta\imag.jpg',ftmemo); tabla1.post; esto me funciona, pero mi problema es cuando quiero mostrar esta imagen en un Timage.. no me da resultado....:confused: var bimp : TBitmap; ms : TMemoryStream; Begin Image1.Visible := True; bimp := TBitmapCreate; ms := TMemoryStream.Create; EmployFOTOGRAFIA.SaveToStream(ms); bimp.LoadFromStream(ms); Image1.Picture.Assign(bimp); ms.Free; bimp.Free; end; :confused: ayudame porfavor.. gracias, |
si la imagen que grabas es un jpeg, por que queres recuperarlo como bmp??
Lo normal sería recuperarlo como jpeg, no te parece?
A tu código le he añadido una clausula try/except para garantizar que se libere siempre la memoria, y además lo he publicado con la etiqueta delphi que debieras usar para publicar trozos de código... ¿notas la diferencia?. Saludos. |
hola,
lo he hecho mo me dijiste, pero ahora el erro que me desplega es: JPEG Error #42..... quiero Preguntarte algo.. si yo guardo la imagen como bmp en mi DB, seria posible recuperarla y mostrarla en el TImage:confused: ?.. Gracias, |
Si es posible almacenarlas en bmp, y también es posible almacenarlas en jpeg.
Según un par de resultados de mi búsqueda, aparentemente el error #42 es por razones de memoria... te recomiendo investigar y probar también por ese lado. Hasta luego. ;) |
La franja horaria es GMT +2. Ahora son las 22:42:36. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi