Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi JPG in MySQL DB (https://www.delphipraxis.net/46762-jpg-mysql-db.html)

mgapski 31. Mai 2005 07:19

Datenbank: mySQL • Version: 3.23.58 • Zugriff über: Zeos

JPG in MySQL DB
 
Einen schönen Guten Morgäääähn,

ich hab ein Problem damit, ein Bild (egal ob bmp oder jpg) in
meiner DB zu speichern.
Es gibt hier zwar eine Menge Beispiele, jedoch beziehen die sich
alle auf IB oder andere DBs... hab leider keins für mySQL gesehn :(
(Sollte ich das übersehn haben, dann würd ich mich über nen Link zum
Thema freuen)

Also, ich bin so weit:
Delphi-Quellcode:
procedure SaveImage(Bild: TImage; Feldname: String);
begin
    qrMain.SqL.Text:='INSERT INTO `test` (`Image`)'+
                                               'VALUES (:as0);';
               qrMain.ParamByName('as0').AsBlob := Bild;
    qrMain.ExecSql;
end;
Das hab ich mir aus den ganzen Beiträgen zusammen gebaut...
Ist das wenigstens ansatzweise richtig.. oder liege ich total
daneben?

Würde mich über ein bisl Hilfe freuen :thumb:

MfG,cYa usw. Ich

alcaeus 31. Mai 2005 07:23

Re: JPG in MySQL DB
 
Hallo mgapski,

hast du den Code probiert? Funktioniert er? Wenn nicht, was fuer Fehler treten auf?
Ohne diese Infos ist es schwer eine Loesung zu finden.
Ausserdem weiss ich im Moment nicht ob es bei MySQL3 schon BLOBs gab. Beim 4er gibts die, ueberpruef das evtl.

Greetz
alcaeus

mgapski 31. Mai 2005 07:44

Re: JPG in MySQL DB
 
Ich hab den code probiert und er tut´s nicht... wird wohl daran liegen:
Delphi-Quellcode:
  qrMain.ParamByName('as0').AsBlob := Bild;
Der fehler ist der, das ich "Bild" nicht asBlob speichern kann (AsBlob will nen String)...
Kann natürlich auch sein das mein Ansatz total daneben ist.. ich
hab keine Ahnung ob ich das überhaupt richtig angehe...

Ich hab in meiner DB natürlich ein Feld om typ Blob (Image) erstellt

MfG,cYa usw. Ich

Sharky 31. Mai 2005 07:45

Re: JPG in MySQL DB
 
Hai mgapski,

leider habe keine Zeit für ein Beispiel :cry:
Aber suche mal im Forum nach Hier im Forum suchenCreateBlobStream. Ich glaube das könnte dein Problem lösen.

SubData 31. Mai 2005 08:31

Re: JPG in MySQL DB
 
Vielleicht hilft dir das hier:

Delphi-Quellcode:
 (Tbl.FieldByName('BIN') as TBlobField).LoadFromFile(Datei);

franktron 31. Mai 2005 08:47

Re: JPG in MySQL DB
 
Guck lieber mal in die MySQL Doku da wahr nämlich was mit MySQL 3.xx und Blobs leider weis ich nicht mehr was

Ansonsten geht das so (habs mit MySQL 4.xx Versucht)

Delphi-Quellcode:
Stream:=TMemoryStream.Create;
SQL.TEXT='UPDATE xxx SET blob=:bild';
Stream.LoadFormFile('Bild.bmp');
SQL.ParamByName('bild').LoadFromStream(Stream,ftBlob);
Stream.Free;
P.S. der Code ist stark vereinfacht

mgapski 2. Jun 2005 08:08

Re: JPG in MySQL DB
 
Danke für die Antworten...
ich werde das heute ma ausprobieren...
konnte leider net früher drauf zugreifen, weil bei mir @ home
das i-net net geht (arcor sei dank :evil: )

MfG,cYa usw. Ich


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:14 Uhr.

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