Выберите в таблице #temp получена ошибка

У меня сложная процедура хранения и получение данных в таблице #temp, которая работает нормально. Однако, когда я фильтрую данные из этой таблицы temp, я получил ошибку «Недопустимое имя объекта» # temp_2. После данных в таблице # temp_2 мне также нужно открыть курсор. Кто-нибудь скажет мне, как его решить.

Есть мой сценарий:

DECLARE @sql varchar(500) IF @strLocations='' SET @sql='SELECT * into #temp_2 from #temp_1' ELSE SET @sql='SELECT * into #temp_2 from #temp_1 t where t.Location_id in ( ' + @strLocations + ')' EXEC (@sql) select * from #temp_2 

EXEC создает новый сеанс для выполнения операторов. Когда сеанс заканчивается, любые локальные временные таблицы, созданные в нем, уничтожаются (т.е. удаляются). Вам нужно будет создать временную таблицу перед оператором EXEC .