W przypadku, gdy chcemy skorzystać z danych zawartych w innej bazie danych na tym samym serwerze, odwołujemy się do danych używając odpowiedniego suffixu z nazwą bazy:
SELECT * FROM BAZA_DANYCH.SCHEMAT.TABELA
W przypadku, gdy chcemy skorzystać z danych zawartych na zewnętrznym serwerze SQL Server, najprostszą metodą jest podlinkowanie zewnętrznego serwera baz danych. Aby to zrobić, pierwszej kolejności musimy zdefiniować nasz zewnętrzny serwer podając jego pełną nazwę:
USE [master] GO EXEC master.dbo.sp_addlinkedserver @server = N'NAZWA_ZEWNĘTRZNEGO_SERWERA', @srvproduct=N'SQL Server' ; GO
W drugiej kolejności definiujemy parametry logowania . Pamiętajmy, że login musi być wcześniej założony na zewnętrznej bazie danych. Powinien mieć także uprawnienia do odczytu baz, z których chcemy korzystać:
exec master.dbo.sp_addlinkedsrvlogin [NAZWA_ZEWNĘTRZNEGO_SERWERA] , 'false', null , 'login' ,'hasło';
Poniżej skrypt, który pozwala nam zdefiniować logowanie do zewnętrznego serwera przy użyciu poświadczeń domenowych:
exec master.dbo.sp_addlinkedsrvlogin @rmtsrvname = N'NAZWA_ZEWNĘTRZNEGO_SERWERA', @locallogin = NULL , @useself = N'True' ;
W tej chwili możemy już swobodnie korzystać z danych na zewnętrznym serwerze. Dane w instrukcji SELECT wywołujemy używając nazwy serwera zewnętrznego oraz bazy danych, z której chcemy skorzystać:
SELECT * FROM [NAZWA_ZEWNĘTRZNEGO_SERWERA].NAZWA_BAZY.DBO.NAZWA_TABELI;