Пытался выбрать ... во временную таблицу #TempTable в sp_Executedsql. Не успешно вставлен или нет, но там сообщения написаны (затронуты 359 строк), что означает успешная вставка? Сценарий ниже
DECLARE @Sql NVARCHAR(MAX);
SET @Sql = 'select distinct Coloum1,Coloum2 into #TempTable
from SPCTable with(nolock)
where Convert(varchar(10), Date_Tm, 120) Between @Date_From And @Date_To';
SET @Sql = 'DECLARE @Date_From VARCHAR(10);
DECLARE @Date_To VARCHAR(10);
SET @Date_From = '''+CONVERT(VARCHAR(10),DATEADD(d,DATEDIFF(d,0,GETDATE()),0)-1,120)+''';
SET @Date_To = '''+CONVERT(VARCHAR(10),DATEADD(d,DATEDIFF(d,0,GETDATE()),0)-1,120)+''';
'+ @Sql;
EXECUTE sp_executesql @Sql;
После выполнения он возвращает мне сообщения (строка 359) (s) затронуты). Далее при попытке выбрать данные из #TempTable.
Select * From #TempTable;
Его верни мне:
Msg 208, Level 16, State 0, Line 2
Invalid object name '#TempTable'.
Подозреваю, что он работает только с разделом «select». Вставка не работает. как это исправить?