| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
rivo Lt JG

Registrado: 13 Mar 2004Mensajes: 72Ubicación: Asturias (España)
|
Publicado: Sab 14 May, 2005 1:07 am Asunto: Sacar imagen jpg de una base de datos |
|
|
Hola he conseguido insertar una imagen jpg en una base de datos utilizando el interbase, pero ahora tengo un problema y es que no soy capaz de sacarla y poder verla, pera insertarla he hecho esto :
| Código: |
Table1->Open();
Image1->Picture->LoadFromFile("C:\\escanciando.jpg");
TJPEGImage *jpg = new TJPEGImage();
TMemoryStream *msImagen = new TMemoryStream;
jpg->LoadFromFile("C:\\escanciando.jpg");
jpg->SaveToStream(msImagen);
msImagen->Seek(0,soFromBeginning);
Query1->ParamByName("imagen")->LoadFromStream(msImagen,ftBlob);
Query1->ExecSQL();
|
un saludo! |
|
| Volver arriba |
|
 |
LordNemesis Master


Registrado: 31 Dic 2003Mensajes: 340Ubicación: México
|
Publicado: Dom 15 May, 2005 1:12 am Asunto: |
|
|
Hola... yo ya he hecho eso, no tengo memorizado el codigo pero es mas o menos asi:
| Código: |
TJPEGImage *jpg = new TJPEGImage();
TMEmoryStream *stream = new TMemoryStream();
Query1->Open();
((TBlobField*)Query1->FieldByName("CampoFoto"))->SaveToStream(stream);
stream->Seek(0,soFromBegin);
jpg->LoadFromStream(stream);
Image1->Picture->Assign(jpg);
delete jpg;
delete stream;
|
Mas o menos por ahi va, si por alguna razon no te sale, juega un poco con el codigo, pero ahi esta la solucion  _________________ Dirección Municipal de Informática
H. Ayuntamiento de Tijuana
Arriba Lopez Obrador !!!
Los Mexicanos Merecemos Respeto !!! |
|
| Volver arriba |
|
 |
rivo Lt JG

Registrado: 13 Mar 2004Mensajes: 72Ubicación: Asturias (España)
|
Publicado: Dom 15 May, 2005 1:56 am Asunto: |
|
|
Muchas gracias funciono perfectamente , solo tube que cambiar dos cosas, donde daba error, pero eran dos tonterias, el codigo final que puse fue este :
| Código: |
TJPEGImage *jpg = new TJPEGImage();
TMemoryStream *stream = new TMemoryStream();
Query2->Open();
((TBlobField*)Query2->FieldByName("imagen"))->SaveToStream(stream);
stream->Seek(0,soFromBeginning);
jpg->LoadFromStream(stream);
Image1->Picture->Assign(jpg);
delete jpg;
delete stream;
|
|
|
| Volver arriba |
|
 |
Invitado Invitado
|
Publicado: Mie 26 Oct, 2005 10:55 pm Asunto: Re: Sacar imagen jpg de una base de datos |
|
|
Hola tengo problemas al guardar unaimagen en BD e interbase me base en el codigo que dejate aqui:
| Código: |
DataModule1->tblCover->Open();
Img->Picture->LoadFromFile(opnCovers->FileName);
DBImage1->Picture->LoadFromFile(opnCovers->FileName);
TJPEGImage *jpg = new TJPEGImage();
TMemoryStream *msImagen = new TMemoryStream;
jpg->LoadFromFile(opnCovers->FileName);
jpg->SaveToStream(msImagen);
msImagen->Seek(0,soFromBeginning);
DataModule1->qryCover->ParamByName("IMG_FOTO")->LoadFromStream(msImagen,ftBlob);
DataModule1->qryCover->ExecSQL();
|
me marca error "qryCover: Parameter 'IMG_FOTO' not foud" Alguien me puede ayudar??
de antemano Graciass. |
|
| Volver arriba |
|
 |
Buildero Master


Registrado: 23 Dic 2003Mensajes: 523Ubicación: Puebla, México
|
Publicado: Mie 26 Oct, 2005 11:21 pm Asunto: |
|
|
| Cita: |
DataModule1->qryCover->ParamByName("IMG_FOTO")->LoadFromStream(msImagen,ftBlob);
|
ParamByName??.
Estas tratando de asignar una imagen como parametro? Si es asi, debes delarar el parámetro y asignar el tipo.
No sé cual es la instrucción SQL, per por tu siguiente linea de código
| Código: |
DataModule1->qryCover->ExecSQL();
|
deduzco que es una instrucción UPDATE...
Si no estas trabjando con parámetros, la instrucción podría ser...
| Código: |
DataModule1->qryCover->FieldByName("IMG_FOTO")->LoadFromStream(msImagen,ftBlob);
|
Y en lugar de:
| Código: |
DataModule1->qryCover->ExecSQL();
|
Debe ser...
| Código: |
// La instrucción SQL debe ser del tipo SELECT ...
DataModule1->qryCover->Post();
|
_________________ Quien hace una pregunta teme parecer un ignorante durante cinco minutos, quien no pregunta se mantiene ignorante toda la vida. |
|
| Volver arriba |
|
 |
Cesar C. Salazar Gonzalez Master


Registrado: 01 Oct 2002Mensajes: 2155Ubicación: San Cristóbal de Las Casas, Chiapas
|
|
| Volver arriba |
|
 |
|