>sto' cercando di eseguire una query su due tabelle in due db
>differenti e i database sono su differenti server.
>
>cioè:
>
>SELECT * FROM [server1].[db1].[tabella1] INNER JOIN
>[server2].[db2].[tabella2] ON [server1].[db1].[tabella1].id =
>[server2].[db2].[tabella2].id
>
>ma non funziona.
>
>cosa sbaglio?
Ciao Fabio,
Per eseguire una query distribuita come quella, occorre definire su una delle due istanze un linked server a quella remota.
Supponendo di essere su una istanza del Server1 e di voler accedere ad una istanza sul Server2, andrò a definire un linked server al Server2 utilizzando le stored procedure di sistema sp_addlinkedserver e sp_addlinkedsrvlogin, dopo di che eseguirò una query simile a questa:
SELECT *
FROM dbo.tabella1 AS T1
INNER JOIN server2.db2.dbo.tabella2 AS T2
ON T1.id = T2.id
>grazie
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org