Remote-Server Query in Insert-Statment benutzen

Eine einfache Möglichkeit eine spezielle Abfrage auf einem Remote-Server auszuführen, so kann man die Sprachmittel des Remote-Servers verwenden und das Ergebnis mit Daten des SQL-Servers verbinden.


begin transaction

INSERT INTO foo(id)
select id from openquery(mybatz,'select * from batz where n>12')

rollback transaction

Diese Funktion ist besonders nützlich, wenn man nicht genau weis, was der Remote-Server ist und man nur die Tabellen kennt. Normalerweise kann man auf einen Remoteserver einfacher zugreifen, es eicht ein:
Select * from remoteserver.datenbank.schema.tabelle

aber das klappt nicht immer, nicht jeder OLE-DB-Provider unterstützt das. So finde ich openquery einen brauchbaren Ersatz.

Leave a Reply