Don_Pazo Geschrieben 24. März 2008 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?
Amstelchen Geschrieben 24. März 2008 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
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden