如何执行远程链接服务器的存储过程,并插入到本地表

1. 先在远程服务器上创建一个最简单的存储过程:

IF OBJECT_ID('Proc_Test') IS NOT NULL
DROP PROC Proc_Test
GO
CREATE PROC Proc_Test
AS
BEGIN
	SET NOCOUNT ON
	SELECT 1 AS r;
END

2. 在本地机上创建远程服务器的链接服务器, 

3. 执行下面的语句:

DECLARE @t TABLE (r INT)
INSERT INTO @t
EXEC [linkedServer].dbName.dbo.Proc_Test

会提示:


如果不要插入,只执行远程存储过程是没有问题的。

4. 在远程服务器上反向创建本地机的链接服务器

5. 再在本地机上执行第 3 步的语句, 就不再有异常了!

你可能感兴趣的:(SQL,Server)