Вот пример использования динамического запроса T-SQL, а затем извлечения результатов, если у вас есть более одного столбца возвращаемых значений (обратите внимание на имя динамической таблицы):

й хранимой процедуре я объявил две табличные переменные поверх моей процедуры. Сейчас я пытаюсь использовать эту табличную переменную в динамическом SQL-выражении, но я получаю эту ошибку во время выполнения этой процедуры. Я использую Sql Server 2008.

Вот так выглядит мой запрос,

set @col_name =  'Assoc_Item_' 
              + Convert(nvarchar(2), @curr_row1);

set @sqlstat = 'update @RelPro set ' 
             + @col_name 
             + ' = (Select relsku From @TSku Where tid = ' 
             + Convert(nvarchar(2), @curr_row1) + ') Where RowID = ' 
             + Convert(nvarchar(2), @curr_row);

Exec(@sqlstat);

И я получаю следующие ошибки,

Необходимо объявить табличную переменную "@RelPro". Необходимо объявить табличную переменную "@TSku".

Я пытался вывести таблицу за пределы строкового блока динамического запроса, но безрезультатно.

Ответы на вопрос(8)

Ваш ответ на вопрос