Remote von Oracle auf MySQL

Onkel Uwe

Grünschnabel
Sodele,

nachdem es mir jetzt gelungen ist, die Verbindung zwischen den Datenbanken herzustellen stehe ich vor einem neuen Problem. Die Quelltabelle enthält eine BLOB-Spalte, welche ich nach Oracle holen möchte. Eigentlich soll dies laut Oracle mit dem Befehl:
Code:
CREATE TABLE test AS SELECT blobfield FROM synonym;
gehen.
Nur sagt mir Oracle darauf hin, dass er mit Long-Datentypen remote nicht arbeiten kann.

Jetzt hab ich mir gesagt, testen wir es erstmal anders und habe im MySQL-Testsystem eine Tabelle erstellt, in die der BLOB-Inhalt als varchar geschrieben wird (von der Grösse her noch machbar). Wenn ich dann aber auf die Tabelle zugreifen möchte, beschwert er sich entweder über falsche MySQL-Syntax oder falsche Zeichen innerhalb des SQL-Statements:
Code:
EXECUTE IMMEDIATE 'SELECT text FROM tabelle WHERE id=to_char(' || dat_cur.id || ');' into text;
Wenn ich es richtig verstehe übergibt Oracle ja das Select an MySQL, damit es dort ausgeführt werden kann und dann das Ergebnis zurückreicht. Dann sollte die Syntax so doch richtig sein, oder?
Die ID ist systembedingt ein varchar, falls sich jemand wundert, und wenn ich sie nicht konvertiere, kommt sie als Zahl in MySQL an und kann nicht gewandelt werden (kann nicht to_number ausführen lautet der Fehler).
Wie sollte das Statement korrekt aussehen oder besser, wie kann ich direkt die Daten aus dem BLOB holen?

Achso: Ich habe auch schon an die Hochkommas gedacht, wegen Case-Sensitive imMySQL, aber das ändert nichts am Ergebnis.
MySQL-Version ist 4.7, Oracle ist XE
 

Neue Beiträge

Zurück