2009-08-19 15 views
5

Mam procedura składowana, która działa w stosunku do lokalnej bazy danych i wypełnia tabela temp. Chciałbym wtedy połączyć się ze zdalną bazą danych i przetestować ją na podstawie wartości lokalnych stron. Czy to jest możliwe?Zapytanie SQL przez dwa połączenia?

Dzięki.

Odpowiedz

2

Myślę, że należy skonfigurować połączony serwer.

7

Tak, jest. Można utworzyć połączony serwer z drugim serwerem, a następnie wykonać kwerendę połączonego serwera z drugim serwerem w ramach tej samej partii. Oto jak:

USE [master] 
GO 
--Add linked server 
EXEC master.dbo.sp_addlinkedserver @server = N'ServerName', @srvproduct=N'SQL Server' 
GO 
--Add login info 
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname = N'ServerName', @locallogin = NULL , @useself = N'True' 
GO 



--Using Linked server 
USE [UserDB] 
Create Table #Test 
(
    Test int not null 
); 

insert into #Test 
select 1 


select * 
from ServerName.DBName.dbo.Table 
where Col1 in (select Test from #Test) 

Podłącz nazwy serwera, upewnij się, że dane logowania działa na obu serwerach i postępuj zgodnie z 4 części schematu nazewnictwa w ostatnim wierszu.