Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Timage y Base de datos (https://www.clubdelphi.com/foros/showthread.php?t=59429)

einarcito 27-08-2008 00:48:46

Timage y Base de datos
 
Hola tengo una pregunta como puedo hacer para almacenar en una base de datos una imagen???? estoy realizando un sistema y necesito de tal manera q cuando este posicionado en un cierto registro me muestre en un Timage dicha imagen ya sea de una persona, articulo , etc. GRACIAS

Caral 27-08-2008 02:21:44

Hola
Me parece que lo mas conveniente seria que NO pusieras las imágenes en la base de datos.
Las imágenes ocupan mucho espacio y pueden alentar el mismo programa.
Te recomendaría que colocaras las imágenes en un archivo y sacarlas de ahí, es lo mismo, solo que mucho mas rápido.
Por cierto; Que base de datos usas?.
Saludos

poliburro 27-08-2008 02:25:38

Asi se carga

Código Delphi [-]
          Parameters.ParamByName('PI_BFoto').LoadFromFile(PSRutImg,ftBlob);
        ExecProc;

Así la descargo

Código Delphi [-]

 Var
   LDmDAtos: TDmDatos;  // Instancia de la conexión
   LsMensaje: String;   // Mensaje de estado devuelto por el método
   LmsImagen: TADOBlobStream;
Begin
If Not LdmDAtos.AdsDatos.Fields[26].IsNull Then
  Begin
    LmsImagen := TADOBlobStream.Create(TBlobField(AdsDatos.Fields[26]),bmRead);
    LmsImagen.SaveToFile(ExtractFilePath(Application.ExeName) + 'foto.jpg');
    ImgFoto.Bitmap.LoadFromFile(ExtractFilePath(Application.ExeName) + 'foto.JPG')
  End
Else
  ImgFoto.Bitmap.LoadFromFile('sinfoto.JPG');
End;


Por cierto lo que dice caral es correcto, dependiendo del motor evalua guardarlas en el disco duro.

Saludos

einarcito 27-08-2008 03:58:01

la verdad eso queria preguntar obviamente no me hice entender oseaaa a esas imagenes las necesito tener en una carpetas en algun directorio especifico? otra cosaa esta sentencia que me dejo se me hace un poco complicada no tendria q ir en ese caso la ruta de dicha imagen??? GRACIAS

Parameters.ParamByName('PI_BFoto').LoadFromFile(PSRutImg,ftBlob);
ExecProc;

Delphius 27-08-2008 04:43:04

Cita:

Empezado por einarcito (Mensaje 309598)
la verdad eso queria preguntar obviamente no me hice entender oseaaa a esas imagenes las necesito tener en una carpetas en algun directorio especifico? otra cosaa esta sentencia que me dejo se me hace un poco complicada no tendria q ir en ese caso la ruta de dicha imagen??? GRACIAS

Parameters.ParamByName('PI_BFoto').LoadFromFile(PSRutImg,ftBlob);
ExecProc;

einarcito ese código que expones se emplea en el caso de que se guarde la imagen en algún campo de una tabla.

Si se trata de guardar la imagen en un directorio es como tu dices: basta con guardar el directorio o path completo de la imagen. Y en este caso, bastará con leer el campo como cualquier otro campo STRING.

Saludos,

dalsim 10-10-2008 02:53:45

yo no se si estoy en que parte en otro universo
 
pero ni siquiera puedo compilar un timagen1 me manda error que me falta ImagingComponents; en uses

tambein quiero guardar la ruta de la imagen en una base de datos pero primero quiero compilar una en modo de diseño para verla en ejecusion que estoy haciedno mal tengo delphi 2007

che 10-10-2008 18:10:29

Timagen
 
Saludos, bueno aqui estan los pasos:
1.Jala el componente Image que se encuentra en la Paleta Additional.
2.Ubiquese en el Object Inspector, ahi encontrara la opción Picture.
3.Aparecera el Picture Editor, presione Load y busque su imagen y dele ok.
4.compile y listo.
Saludos

dalsim 10-10-2008 18:12:49

he hecho eso y el problema esque me aparece
 
el mensaje que arriba muestro en mi comentario anterior gracias

marcoev 10-10-2008 20:07:29

buenas tardes, el componente TImage se encuentra dentro de la unidad ExtCtrls, verifica que este en tu uses, si el problema continua, elimina el componente TImage y vuelve a agregarlo a tu forma, espero y con esto se resuelva tu problema.

un consejo para cuando guardes tus imágenes, lo que yo hago es que en la base de datos solo guardo el nombre de la imagen no así el path, el path lo guardo en un archivo ini o en una tabla aparte, esto por si al archivo de imágenes lo van a utilizar desde diferentes equipos y puede que el path sea diferente para cada uno, de esta forma podrás cambiar el path para cada equipo y podrías ver las imágenes sin problemas.


La franja horaria es GMT +2. Ahora son las 07:12:27.

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