Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Utilizzo di una variabile nella query OPENROWSET

Come suggerito da Scott , non puoi usare espressioni in OPENROWSET .Prova a creare un sql dinamico per passare i parametri

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)