Podemos usar a operação de junção para duas tabelas de bancos de dados diferentes? Se sim, como faço isso?
Ambos os bancos de dados estão no mesmo servidor e o DBMS é o mesmo.
Podemos usar a operação de junção para duas tabelas de bancos de dados diferentes? Se sim, como faço isso?
Ambos os bancos de dados estão no mesmo servidor e o DBMS é o mesmo.
Respostas:
O SQL Server permite juntar tabelas de bancos de dados diferentes, desde que esses bancos de dados estejam no mesmo servidor. A sintaxe de junção é a mesma; a única diferença é que você deve especificar completamente os nomes das tabelas.
Vamos supor que você tenha dois bancos de dados no mesmo servidor - Db1
e Db2
. Db1
tem uma tabela chamada Clients
com uma coluna ClientId
e Db2
tem uma tabela chamada Messages
com uma coluna ClientId
(vamos deixar claro porque essas tabelas estão em bancos de dados diferentes).
Agora, para realizar uma junção nas tabelas mencionadas acima, você usará esta consulta:
select *
from Db1.dbo.Clients c
join Db2.dbo.Messages m on c.ClientId = m.ClientId