Einzelnen Beitrag anzeigen

Benutzerbild von geskill
geskill

Registriert seit: 17. Feb 2007
Ort: NRW
420 Beiträge
 
Delphi 2010 Professional
 
#3

AW: Binärdaten speichern (blob)

  Alt 9. Okt 2011, 13:39
Es ist eigentlich keine so gute Idee ein ganzes Bild in einer DB abzusichern. Besser wäre es, wenn du das Bild in einem Verzeichnis speicherst, davon den MD5 oder so nimmst und es so benennst. Dann schreibst du in die DB nur den MD5 Wert.

Ansonsten würde ich es so probieren:
Delphi-Quellcode:
var
  StringStream: TStringStream;
begin
  StringStream := TStringStream.Create('');
  with StringStream do
    try
      Position := 0;
      Image1.Picture.Graphic.SaveToStream(StringStream);

      // diesen Wert in die DB speichern: StringStream.DataString
    finally
      Free;
    end;
Wenn du das Bild von einem TFileStream hast funktioniert es genauso. Das Laden einfach umgekehrt mit WriteString(); den Wert aus der DB in den TStringStream schreiben und dann den Stream in das Image oder eben den Filestream speichern.
Sebastian
  Mit Zitat antworten Zitat