Execute sp_executeSql para select ... into #table pero no se pueden seleccionar los datos de la tabla temporal
Estaba intentando seleccionar ... en una tabla temporal #TempTable en sp_Executedsql. ¿No se ha insertado correctamente o no, pero hay mensajes allí escritos (359 filas afectadas) que significan insertado correctamente? Script debajo de
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;
Después de ejecutado, me devuelve mensajes (359 filas afectadas). A continuación, cuando intente seleccionar los datos de # TempTable.
Select * From #TempTable;
Me devuelve:
Msg 208, Level 16, State 0, Line 2
Invalid object name '#TempTable'.
Supongo que solo funciona en la sección 'seleccionar'. El inserto no funciona. ¿Cómo solucionarlo?