Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Usando uma variável na consulta OPENROWSET


Conforme sugerido por Scott , você não pode usar expressões em OPENROWSET .Tente criar um sql dinâmico para passar os parâmetros
Declare @ID int
Declare @sql nvarchar(max)
Set @ID=1
Set @sql='SELECT * 
FROM OPENROWSET(
               ''SQLNCLI'',
               ''DRIVER={SQL Server};'',
               ''EXEC dbo.usp_SO @ID =' + convert(varchar(10),@ID) + ''')'

-- Print @sql
 Exec(@sql)