5

我有一个针对本地数据库运行并填充临时表的存储过程。然后我想连接到远程数据库并根据本地临时表的值查询它。那可能吗?

谢谢。

4

3 回答 3

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 部分命名方案。

于 2009-08-19T22:02:18.823 回答
2

我认为您需要设置链接服务器。

于 2009-08-19T21:55:40.647 回答
0

您可以通过注册的服务器进行此操作。

有用的链接:

http://www.sqlskills.com/blogs/kimberly/sql-server-2008-central-management-servers-have-you-seen-these/

于 2013-09-25T14:41:54.517 回答