Don_Pazo Geschrieben 24. März 2008 Teilen Geschrieben 24. März 2008 Hallo, ich habe ein mal die MS SQL Server 2005 und Oracle. Die sind mittels ODBC verbunden -> Data source 'p_oracle'. 1. Dann habe ich in dem MS SQL Server einen Linked Server eingerichtet: exec sp_addlinkedserver 'Test', 'Oracle', 'MSDASQL', 'p_oracle' MSDASQL steht für 'Microsoft OLE DB Provider for ODBC Drivers' 2. Habe ich die Login daten für die ODBC-Verbindung zum Oracle eingerichtet: exec sp_addlinkedsrvlogin 'Test', false, 'sa', 'user', 'password' 3. Jetzt kommt das was ich nicht verstehe, ich rufe auf: SELECT * FROM openquery(Test, 'SELECT * FROM myTable') und bekomme nur eine Zeile als Ergebnis (also die letzte Zeile in der Tabelle ). Die Tabelle hat aber bereits schon 22500 Einträge. Was mache ich nun falsch? Wie kann ich alle Einträge aus der Tabelle aus lesen? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Amstelchen Geschrieben 24. März 2008 Teilen Geschrieben 24. März 2008 OPENQUERY *kann* auch nur *eine* zeile liefern: Executes the specified pass-through query on the specified linked server. This server is an OLE DB data source. OPENQUERY can be referenced in the FROM clause of a query as if it were a table name. OPENQUERY can also be referenced as the target table of an INSERT, UPDATE, or DELETE statement. This is subject to the capabilities of the OLE DB provider. Although the query may return multiple result sets, OPENQUERY returns only the first one. AFAIR hilft dir da OPENROWSET. bitte dazu mal die dokumentation zur hand nehmen. s'Amstel Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
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.