Member 12509422 Ответов: 1

Как вернуть значение в переменную из динамического SQL в SQL server


DECLARE @sqlCommand nvarchar(1000)

DECLARE @countnumber int = 0

SET @sqlCommand = 'Set @countnumber = (SELECT count(*) from dsnv)'

EXEC (@sqlCommand)

print @countnumber ;

Но я получаю ошибку

Что я уже пробовал:

DECLARE @sqlCommand nvarchar(1000)

DECLARE @countnumber int = 0

SET @sqlCommand = 'SELECT count(*) into @countnumber from dsnv'

EXEC (@sqlCommand)

print @countnumber ;

Но я получаю ошибку

1 Ответов

Рейтинг:
8

Karthik_Mahalingam

попробуйте это, используя процедуры sp_executesql[^]

DECLARE @sqlCommand nvarchar(1000)
DECLARE @countnumber int = 0
SET @sqlCommand = 'SELECT @countnumber=count(*) from [dsnv]'
EXEC sp_executesql  @sqlCommand ,N'@countnumber int out' , @countnumber out
select @countnumber ;
print @countnumber