![]() |
Datenbank: DBase und MySQL • Zugriff über: ODBC
Bilder aus DBase Datei anzeigen lassen
Hi,
ich schreibe zur Zeit mit Delphi5 ein Programm, um Exportdateien aus einer Datenbank von Microtech ("BüroPlus") in eine MySQL Datenbank einzupflegen. Sämtliche Text-, Integer und Gleitkommazahlen funktionieren problemlos, was mir noch Probleme macht ist das Exportieren der Bilder: Wenn ich das Bild exportiere erhalte ich es in der DBase (*.DBF) Datei als BLOB. Dieses BLOB kann ich einfach nicht auslesen. Wenn ich diese Komponente (DBImage) aber verwende, bekomme ich als Wert nur den Spaltennamen oder gar nichts angezeigt. Meine Frage ist jetzt: Gibt es eigentlich verschiedene Arten von DBase Datenbanken (nicht nur dB3 und dB4)? Und habt Ihr irgendwelche Ideen, wie ich Die Bilder da rausbekomme? Ich möchte Sie dann als jpeg oder bmp mit generiertem Namen und fester Größe in einem Ordner speichern (das klappt auch, nur eben das BLOB auslesen nicht.... AAAAAAAHHHH....) Natürlich habe ich bevor den Post hier geschrieben habe, schon ein paar Stunden gegoogelt und ein paar HowTos ausprobiert....Alles leider erfolglos. :wall: Vielen Dank für Eure Mühe. Ich gehe weiter in die Tischkante beissen. MfG Chris :gruebel: |
Re: Bilder aus DBase Datei anzeigen lassen
Zitat:
Da gab's dann auch noch Varianten für Clipper,... Du musst zunächst die BLOB-Daten auf Platte speichern ohne dich darum zum Kümmern, in welchem Format die Daten vorliegen:
Delphi-Quellcode:
So solltest du auf jeden Fall die (Brutto-) Daten erhalten.
x := 0;
query1.SQL.Text := ' SELECT Feld1, Blobfeld FROM '+'tabelle.dbf'; query1.open; while not query1.Eof do begin (query1.FieldByName('Blobfeld') as TBlobField).SaveToFile('C:\'+IntToStr(x)+'.dat'); query1.Next; Inc(x); end; Danach musst du die erhaltenen Dateien analysieren. Evtl. sind vor den eigentlichen Nutzdaten noch beschreibende Header gespeichert. |
Re: Bilder aus DBase Datei anzeigen lassen
Hi,
vielen Dank für Deine schnelle Antwort. Jetzt bin ich schon mal schlauer was BLOB Daten angeht. Leider stürzt das Programm mit der Fehlermeldung "Ungültige Typenumwandlung" ab. Hier ist nochmal mein Testquellcode:
Delphi-Quellcode:
Vielen Dank nochmal für Deine schnelle Hilfe.
x := 0;
SQLQuery.SQL.Text := ' SELECT KUBEZ1, BILD FROM bilder.dbf;'; SQLquery.open; while not SQLquery.Eof do begin (SQLquery.FieldByName('BILD') As TBlobField).SaveToFile('C:\'+IntToStr(x)+'.dat'); SQLquery.Next; Inc(x); end; MfG Chris |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:23 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-2025 by Thomas Breitkreuz