我有一个针对本地数据库运行并填充临时表的存储过程。然后我想连接到远程数据库并根据本地临时表的值查询它。那可能吗?
谢谢。
是的。您可以创建一个链接服务器到另一台服务器,然后在同一批次中对另一台服务器进行链接服务器查询。就是这样:
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 部分命名方案。
我认为您需要设置链接服务器。
您可以通过注册的服务器进行此操作。
有用的链接: