Простой синтаксис динамического запроса TSQL

Это может быть простым ответом, но я слишком долго на него пялился...

] У меня есть следующий запрос, который принимает входной параметр хранимой процедуры в качестве имени переменной и подсчитывает записи в этой таблице. Я хочу получить результаты динамического оператора (@toStartStr) в переменную (@toStart).

-- @tempTableName = SProc input parameter
DECLARE @toStartStr nvarchar(150);
DECLARE @toStart int;
SET @toStartStr = 'SELECT @toStart = COUNT(ID) FROM ' + @tempTableName;
EXEC(@toStartStr);

Прямо сейчас ошибка предполагает, что @toStart нельзя объединить со строкой SELECT, но это суть того, что я хочу. Может ли кто-нибудь увидеть, что я делаю неправильно? Или предложить альтернативу? К вашему сведению SQL 2008 R2. Спасибо.

8
задан abatishchev 19 June 2012 в 20:20
поделиться