我有一个针对本地数据库运行的存储过程,并填充临时表。然后,我想连接到远程数据库并根据本地temptables的值进行查询。这可能吗?
感谢。
答案 0 :(得分:7)
是的,确实如此。您可以为其他服务器创建链接服务器,然后对同一批次中的其他服务器执行链接服务器查询。方法如下:
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)
插入服务器名称,确保您的登录凭据在两台服务器上都有效,并遵循最后一行的4部分命名方案。
答案 1 :(得分:2)
我认为您需要设置链接服务器。
答案 2 :(得分:0)