我想获得在 UNKNOWN 远程数据库上执行的函数的结果。
服务器名称和数据库名称仅在运行时提供。
我试过这个,但它不起作用:
DECLARE @result table (result BIT)
INSERT INTO @result
EXEC (N'SELECT [linkedserver].[remotedb].dbo.myudf(''myparameter'')')
SELECT * FROM @result
答案 0 :(得分:1)
开启链接服务器上的RPC
-
EXEC [master].dbo.sp_serveroption @server=N'linked_server', @optname=N'rpc out', @optvalue=N'true'
试试这个 -
EXEC ('SELECT *
FROM AdventureWorks2012.sys.fn_helpcollations()') AT [linked_server]
或者这个(更可取的) -
EXEC [linked_server].AdventureWorks2012.sys.sp_executesql N'SELECT DB_NAME()'