У меня есть этот кусок кода:
DECLARE @var1 int
DECLARE @var1Value int = 10
DECLARE @sSQL nvarchar(max) = N'SELECT @var1 = @var1Value';
DECLARE @ParmDefinition nvarchar(max) = N'@var1 int OUTPUT, @var1Value int';
DECLARE @ParmValues varchar(max) = (select paramsValues from Table_1 where id = 1)
EXEC sp_executesql N'SELECT @var1 = @var1Value', N'@var1 int OUTPUT,
@var1Value int', @ParmValues
@ ParmValues равно '@var1Value = @var1Value,@var1= @var1 OUTPUT'
.
Этот код выдает ошибку преобразования из int в varchar, но при запускеназначения напрямую, без запроса из таблицы, все работает нормально.
EXEC sp_executesql N'SELECT @var1 = @var1Value', N'@var1 int OUTPUT,
@var1Value int', @var1Value = @var1Value,@var1= @var1 OUTPUT
Есть ли способ получить назначения непосредственно из таблицы?
Спасибо за ответы.