Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Bild in Paradox Tabelle speichern & wieder laden... (https://www.delphipraxis.net/147209-bild-paradox-tabelle-speichern-wieder-laden.html)

Flodding 3. Feb 2010 19:31

Datenbank: Paradox • Version: 7,0 • Zugriff über: TQuery

Bild in Paradox Tabelle speichern & wieder laden...
 
Guten Abend alle miteinander...

irgendwie hab ich mich in ne sache verheckselt und komm da nicht mehr so ganz raus alleine :(

ich hab ein in TImage angezeigtes Bild (jpg, jpeg, bmp oder tga) in meine Datenbank gespeichert mittels:

Delphi-Quellcode:
    if not img_MyStonesPicture.Picture.Bitmap.Empty then begin // is überhaupt was drin im Bild?
      BildStrom := TMemoryStream.Create;
      try
        img_MyStonesPicture.Picture.Bitmap.SaveToStream(BildStrom); // Kühlschrank auf, Kuh rein..
        Query1.ParamByName('MyStonePicture').LoadFromStream(BildStrom,ftBlob); // Kuh raus, Elefant rein
      finally
        BildStrom.Free; // Aufräumen
      end;
    end else begin    // wenn Bild leer, dann brauchen wir auch
                       // keine Bilddaten in DB zu schreiben...
      Query1.ParamByName('MyStonePicture').Value := NULL; // damit das funzt, unit Variants
                                                          // einbinden - da is NULL deklariert!
    end;

Query1.Prepared := True;
Query1.ExecSQL;
nun hab ich das problem, dass ich auf alle daten des datensatzes zugreifen kann, bis auf das bild.

ich habs in etwa so versucht in meheren variationen:

Delphi-Quellcode:
BildStrom := TBlobstream;

BildStrom := TBlobStream.Create(Table1.FieldValues['StonePicture'] as TBlobField,bmRead);

img_MyStonesPicture.Picture.Bitmap.LoadFromStream(BildStrom,ftBlob);

BildStrom.Free;
Danke für jede Antwort im Voraus...

MFG

Floddy


EDIT:::

Lösung gefunden :D

Delphi-Quellcode:
Bildstrom:=Query1.CreateBlobStream(Query1.FieldByName('StonePicture'), bmRead);
img_MyStonesPicture.Picture.Bitmap.LoadFromStream(BildStrom);


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:37 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz