我正在尝试创建一个使用 OpenQuery 中的参数的函数,如下所示:
CREATE FUNCTION fnMyFunction (@myVar INT) RETURNS TABLE AS
DECLARE @Query VARCHAR(2000)
SET @Query = 'SELECT * FROM OPENQUERY(myLinkedServer, ''SELECT num FROM tblMyTable WHERE
myTableNum = '+ @myVar + ' '')'
RETURN EXEC(@Query)
Openquery 应该只返回一个整数。我试过了
...RETURNS INT AS
...OPENQUERY...
DECLARE @num INT
SET @num = 0
@num = EXEC(@Query)
RETURN @num
并且 get 不能在此上下文中使用带有返回值的 RETURN 语句。