我有这个查询,我想要做的是从另一台服务器执行存储过程以获得结果。
我需要在sp。
中传递一个参数我的问题是没有用,我不知道我要做什么才能让它发挥作用。
希望有人可以帮我解决这个问题。
这是我的代码:
DECLARE @EXECSQL3 VARCHAR(500), @a VARCHAR(300), @b INT
SET @a = 'test'
Set @b = 100
SET @EXECSQL3 = 'SELECT * FROM OPENROWSET
(''xxxxx'',''xxxxxx'';''xxxxxxx'';''xxxxxxx'',
''[DB].[dbo].[MyStoredProcedure] @a, @b'')'
EXEC(@EXECSQL3)
答案 0 :(得分:2)
SELECT *
FROM OPENQUERY(OtherServer, 'EXEC db.dbo.MyStoredProcedure ''test'', 100')
我从未使用过OpenRowSet ......但我使用过OPENQUERY。我更喜欢它只是在链接服务器方案中直接查询服务器,因为查询在远程服务器上运行,并且只返回结果,这通常要快得多。