Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

TSQL:Crie uma visão que acesse vários bancos de dados


Sim, você pode - a sintaxe t-sql é a mesma de qualquer outra chamada de banco de dados cruzado (dentro de um procedimento armazenado, por exemplo).

Para referenciar suas tabelas no segundo banco de dados, você simplesmente precisa:

[DatabaseName].[Schema].[TableName]

Então você acabaria com algo como
CREATE VIEW [dbo].[YourView]
as
select 
a.ID, 
a.SomeInfo, 
b.SomeOtherInfo
from TableInA a
join DatabaseB.dbo.TableInB b
on -- your join logic goes here

Observe que isso só funcionará no mesmo servidor - se seus bancos de dados estiverem em servidores diferentes, você precisará criar um servidor vinculado.