FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
No graba imagen en Firebird
Tenog un formulario con un TImage en el que puedo seleccionar el fichero de imagen a asignar para luego grabarlo en una tabla Firebird. Supongamos que el TImage está así:
Un vez cargado dicho TImage para grabarlo en la tabal hago esto: Código:
for (nItem = 0; nItem < this->ComponentCount; nItem ++) { Source = this->Components[nItem]; [...] fPersona->Query->Close(); if (Source->ClassNameIs("TImage")) { TImage *Imagen = static_cast<TImage*>(Source); TMemoryStream *msImagen = new TMemoryStream; (Imagen->Picture->Bitmap)->SaveToStream(msImagen); msImagen->Seek(0, soFromBeginning); if (!lPrueba && msImagen->Size == 0) continue; if (msImagen == 0) fPersona->Query->SQL->Text = "DELETE FROM Instalacion WHERE Etiqueta = :Campo"; else { if (lPrueba) fPersona->Query->SQL->Text = "UPDATE Instalacion SET Imagen = :Imagen WHERE Etiqueta = :Campo"; else fPersona->Query->SQL->Text = "INSERT INTO Instalacion (Etiqueta, Imagen) VALUES (:Campo, :Imagen)"; fPersona->Query->ParamByName("Imagen")->LoadFromStream(msImagen, ftBlob); } fPersona->Query->ParamByName("Campo")->AsString = Source->Name; } [...] try { fPersona->Query->ExecSQL(); fPersona->Query->Transaction->Commit(); } catch(...) { Screen->Cursor = crArrow; fPersona->Query->Transaction->Rollback(); Mensaje(-1, "Se ha producido un error en la actualización de los datos.¦" + ExtractFileName(AnsiString(__FILE__)) + FormatFloat("' - '0", __LINE__), "Volver"); LisSitSelectItem(NULL, NULL, false); return; } } |
#2
|
||||
|
||||
Hola.
Usando Firebird y estando el campo 'IMAGE' definido así,
de este modo guarda correctamente el contenido del TImage : Código PHP:
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#3
|
||||
|
||||
¡Perfecto! Muchas gracias.
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
A pesar de la excepción, el registro se graba | Angel.Matilla | Firebird e Interbase | 4 | 17-11-2015 20:21:43 |
BDEAdmin no graba el idapi32.cfg en Windows 7 | Matorral | Conexión con bases de datos | 6 | 07-12-2010 11:04:32 |
Por que no graba en Win.ini | alquimista | API de Windows | 11 | 23-04-2008 00:20:01 |
query no Graba , se cierra | juanmaster | Tablas planas | 9 | 12-12-2006 23:52:21 |
lookup + dbgrid: no graba | jonmendi | Conexión con bases de datos | 4 | 12-01-2006 08:21:53 |
|