Hallo, mal ein Update zur Lage der Nation...
Aktueller Weg:
Anwendung -> ADOExpress ->
ADO ->
OLE DB Provider von Oracle -> NETx-Treiber ->
DB
Ich benutze mit
ODBC ja glaub ich noch eine Schicht mehr, oder zumindest einen anderen Provider. Hab mir nochmal den Connection-String angeschaut, da ist der Provider MSDASQL.1 (MS
OLE DB Provider for
ODBC Drivers). Dann noch der
ODBC-Treiber als weitere Schicht?
Hab nun testweise mal auf
ODBC verzichtet und benutze nun direkt den Oracle Provider for
OLE DB und gehe damit direkt an die Datenbank und siehe da, es geht.
D.h. es scheint wirklich am
ODBC-Treiber zu liegen, dass es mal geht (neuer Treiber) und mal nicht (alter Treiber).
Desweiteren habe ich auch durch mühevolles rumraten herausgefunden, dass nicht, wie zunächst vermutet, die "Breite" der Tabelle schuld ist, sondern ein Datenfeld vom Typ Long. Habe daraufhin weitere Tabellen mit Long-Datentypen gefunden, die auch Ärger machen. Leider können wir daran nichts ändern.
Ach ja, die Einstellung "Force Long retrival" oder so ähnl., die man dem
ODBC-Treiber mitgeben kann, hat auch nicht geholfen.
Über kurz oder lang werden wir also wohl auf neue ODBC_Treiber wechseln müssen (da wir sowieso bald neuere Oracle Clients brauchen, kommt das sowieso irgendwann).
Nochbesser wäre wie du gesagt hast, sicher der native Zugriff, aber dazu muss noch viel Überzeugungsarbeit geleistet werden.
Danke, aber auf jeden Fall für die Tips