Entwickler-Ecke
Datenbanken - Grafik in DB-BlobFeld schreiben
Chaosworld - Fr 24.06.05 21:17
Titel: Grafik in DB-BlobFeld schreiben
Ich habe eine Datenbank mit einem Blob-Feld um Grafiken abzuspeichern. Über die zwischenablage kann ich die Bilder einfügen. Mein Problem ist aber, ich kann nicht per Quelltext Bilder einfügen. Ich habe schon hier im Forum gesucht und diese beiden Punke gefunden:
http://www.delphi-forum.de/topic_Blob+ohne+Blobstream+mit+Daten+versorgen_30551.html&sid=5acbd17cca3bd8134e02a4550e547457
http://www.delphi-forum.de/viewtopic.php?p=67933#67933
das hört sich ja interessant an, leider klappen beide Routinen nicht.
Wenn ich eine bmp-datei auswähle klappt es ohne Problem, wenn ich jedoch eine jpg-Dateien damit öffnen will, bekomme ich folgende Meldung: "Bitmap ist ungültig."
Als Datenbank verwende ich Advantage Database System.
Ich hoffe es hat noch jemand eine Idee, wie ich das machen kann, im vorraus Danke für jede Hilfe
Chaosworld
hansa - Sa 25.06.05 12:44
Die zitierten Beispiele beziehen sich aber auf Interbase ! Hehe, ich weiß schon warum viele das bzw. Firebird benutzen (ich auch). :mrgreen: Du hast bestimmt die kostenlose Advantage Version, ohne Transaktionssteuerung usw. Wenn solch elementare Dinge schon fehlen, dann würde mich nicht wundern, wenn sie bei Blobs auch Einschränkungen machen. Aber das wäre doch in diesem Fall nicht mal schlimm. Warum speicherst Du nicht einfach in der DB nur den Dateinamen ?
peter B - Mi 20.07.05 03:03
Hallo Chaosworld!
Du schreibst 'Bitmap ungültig'!? Das ist sicher keine Meldung von der Datenbank Engine.
Offenbar verwendets Du irgendwo ein TImage oder Ableger davon.
Klar, wenn Du in Deinem Blob-Feld ein jpg ablegst und das per Stream in ein TIMage.Picture.Bitmap oder so wieder 'reinstreamst' krachts.
Ich mach das so (mit Oracle und Access)
ein jpg Object und ein TStream Objekt anlegen.
Blob-Stream aus dem Dataset erzeugen (CreateBlobStream...)
jpg.LoadFromStream
Image.Picture.Assign(jpg)
dann alles unbenutze wieder lecker freigeben. Vielleicht gehts cooler? Aber so klappte es bisher....
Toi toi
Chaosworld - Sa 23.07.05 00:15
JA
ich habe DBImage verwendet. Danke für den Hinweis, werde ich probieren. Das DBImage noch nicht mal JPEG kann, hätte ich nie gedacht. Ich werde es probieren mit dem Tip:
jpg.LoadFromStream
Image.Picture.Assign(jpg)
Danke
Chaosworld
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!