Forums Neueste Beiträge
 

Verbindungsserver ...inkonsistente Metadaten... bei manchen Synony

31/03/2008 - 16:01 von Simon Kurz | Report spam
Hallo,
ich habe über einen ODBC Treiber "Progress OpenEdge
10.1A driver" (einen Verbindungsserver zu einer Progress DB eingerichtet. In
meiner DB (SQL 2005) habe ich nun mehrere Synonyme zu Tabellen über den
Verbindungsserver zu der Progress DB eingerichtet. Dies funktioniert
allerdings nicht mit allen Tabellen. Die Synonyme sind gleich angelegt und
verwenden alle den gleichen Verbindungsserver. Bei der Abfrage von manchen
Tabellen kommt die Meldung:

"Meldung 7353, Ebene 16, Status 1, Zeile 1
Der OLE DB-Anbieter "MSDASQL" für den Verbindungsserver "PROGRESS" hat
inkonsistente Metadaten bereitgestellt. Eine zusàtzliche Spalte wurde wàhrend
der Ausführung übergeben, die zur Kompilierzeit nicht gefunden wurde."

Es ist dabei egal, ob ich * oder nur einzelne Spalten Abfrage.
Wo liegt hier das Problem?

Danke für jede Hilfe!
 

Lesen sie die antworten

#1 Elmar Boye
31/03/2008 - 17:12 | Warnen spam
Hallo Simon,

Simon Kurz schrieb:
ich habe über einen ODBC Treiber "Progress OpenEdge
10.1A driver" (einen Verbindungsserver zu einer Progress DB eingerichtet. In
meiner DB (SQL 2005) habe ich nun mehrere Synonyme zu Tabellen über den
Verbindungsserver zu der Progress DB eingerichtet. Dies funktioniert
allerdings nicht mit allen Tabellen. Die Synonyme sind gleich angelegt und
verwenden alle den gleichen Verbindungsserver. Bei der Abfrage von manchen
Tabellen kommt die Meldung:

"Meldung 7353, Ebene 16, Status 1, Zeile 1
Der OLE DB-Anbieter "MSDASQL" für den Verbindungsserver "PROGRESS" hat
inkonsistente Metadaten bereitgestellt. Eine zusàtzliche Spalte wurde wàhrend
der Ausführung übergeben, die zur Kompilierzeit nicht gefunden wurde."



Der Fehler tritt auf wenn der Treiber bei den Katalogfunktionen
andere Spalten liefert als bei der Abfrageausführung selbst,
also andere Werte als z. B. bei sp_columns_ex.
Wobei einige Treiber verdeckte Spalten liefern, die man in der
Anzeige nicht sieht (der SQL Server tut es selbst).

Was der OpenEdge Treiber einbaut ist, wenns nicht irgendwo dokumentiert
ist nur durch probieren rauszubekommen. Verdàchtige wàren Spalten
wie RowVersion oder andere eindeutige Identifikationsmerkmale.
Haben die betroffenen Tabellen z. B. einen Primàrschlüssel?

Da Du ja schon anfangs Probleme hattest mit DBSCHEMA_CATALOGS
dürfte sich das Problem dort fortsetzen.

In der sog. Progress KB (gibts als Download) gibt es einen Eintrag
"P35634", der das Problem am Cachen der Metadaten festmacht, wenn
eine Spalte hinzugefügt bzw. gelöscht wurde. Was ich zwar als
Ursache bezweifele, aber probiere mal einen Neustart des Dienstes.

Gruß Elmar

Ähnliche fragen