Zum Inhalt springen

OLE Objekte von Access -> MySQL mit PHP


Tweetymax

Empfohlene Beiträge

Hallo,

ich habe ein Problem, bei dem ich ein wenig feststecke.

Ich muss alle Tabellen von Access in eine MySQL Datenbank importieren. Soweit kein Problem, doch in einer Tabelle befinden sich OLE-Objekte (ausschließlich Bilder) welche ich zwar auch importiert bekomme, wo von Access über die ODBC-Schnittstelle jedoch scheinbar noch etwas angehängt wird, so dass die Informationen, welche sich in MySQL befinden nicht wirklich nutzbar sind.

Der import von Access (über ODBC) -> MySQL (direkt) soll über PHP erfolgen

Hat jemand eine Idee, wie ich die OLE-Objekte unverändert zurückgegeben bekomme?

Link zu diesem Kommentar
Auf anderen Seiten teilen

verstehe ich das richtig, das Access soll weg und dafür nimmst Du mySQL + PHP?

Du musst die OLE Objekte wieder in die binär Formate umwandeln (d.h. urspüngliche Dateien) und dann in Blobs (davon rate ich aber ab) in der mySQL Tabelle ablegen. Wandel die OLE Objekte in Dateiform zurück, und speichere innerhalb der mySQL Tabelle einen Pfad auf die Datei, die Du dann auf dem Server hinterlegt. PHP kannst Du dann anhand des Dateityps anweisen, einen entsprechenden Mimetyp beim Versand der Daten zu generieren

HTH Phil

Link zu diesem Kommentar
Auf anderen Seiten teilen

verstehe ich das richtig, das Access soll weg und dafür nimmst Du mySQL + PHP?

Du musst die OLE Objekte wieder in die binär Formate umwandeln (d.h. urspüngliche Dateien) und dann in Blobs (davon rate ich aber ab) in der mySQL Tabelle ablegen. Wandel die OLE Objekte in Dateiform zurück, und speichere innerhalb der mySQL Tabelle einen Pfad auf die Datei, die Du dann auf dem Server hinterlegt. PHP kannst Du dann anhand des Dateityps anweisen, einen entsprechenden Mimetyp beim Versand der Daten zu generieren

HTH Phil

Ja du hast es richtig verstanden ;)

ABER ... das Problem ist ja dass ich die Bilder nicht mehr in eine Dateiform bekomme, da PHP mit dem, was über ODBC von Access geliefert nichts anfangen kann.

Wenn ich mir das ganze als String ansehe, schreibt er was von PhotoImpact.

Wenn ich das ganze als Datei speichere ist der selbe Mumpitz, und das Bild kann nicht geöffnet werden da es fehlerhaft ist.

Und nein (Falls die Frage kommen sollte) dir Bilder in Access sind nicht fehlerhaft, von dort aus ist das öffnen Problemlos möglich.

Das ist ja mein dilemma...

wo ich die Bildere speiche ist im endeffekt egal, da ich über ODBC eh nur mist bekomme.

Bin schon am Probieren, ob es hilft, wenn ich bestimmte Bytes einfach weglasse. Bisher aber leider auch ohne Ergebnis.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich kenne das Problem, da ich das selbst hatte. Du musst die Bilder eben wieder in JPEG / PDF / PNG o.ä. umwandeln. Eine andere Möglichkeit hast Du nicht. Ich würde innerhalb von Windows die Daten öffnen und in einem anderen Format speichern.

Mir ist nicht bekannt, dass es eine fertige PHP OLE Komponente gibt, außerdem wärst Du dann an PHP unter Windows gebunden. Und der Ansatz einfach ein paar Bytes wegzulassen wird nicht funktionieren, denn soweit ich weiß ist OLE ein Binärformat. Wenn Du dies machen willst, dann musst Du im Grunde einen OLE Export selbst in PHP schreiben und Dir muss das Format komplett bekannt sein (ich gehe nicht davon aus, dass man das irgendwo nachlesen kann)

Danke @HJST1979, genau das meinte ich: OLE in Access öffnen und neu speichern in JPEG o.ä.

Phil

Bearbeitet von flashpixx
Link zu diesem Kommentar
Auf anderen Seiten teilen

sowas hab ich fast befürchtet, nachdem ich nirgens was gefunden habe...

Problem ist nur, dass es doch etliche Bilder sind... bei 100 währe das ja noch machbar, auch wenns derbe nervig währe... aber es sind doch um einiges mehr... sehr viele kleine.

Wenn ich nun jedes Bild dafür einzeln exportieren muss, dann erschieß ich mich, nachdem ich Microsoft in die Luft gesprengt habe :D

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...