DECLARE @d CHAR(10) = CONVERT(CHAR(8), GETDATE(), 112);
DECLARE @sql NVARCHAR(MAX) = N'select *
into report_temp.MSK_Traffic_Backup_' + @d + '
from property.door_traffic;';
PRINT @sql;
--EXEC sys.sp_executesql @sql;
Сега може също така да искате да добавите някаква логика, за да направите скрипта имунизиран срещу грешки, ако се изпълнява повече от веднъж за даден ден, напр.
DECLARE @d CHAR(10) = CONVERT(CHAR(8), GETDATE(), 112);
IF OBJECT_ID('report_temp.MSK_Traffic_Backup_' + @d) IS NULL
BEGIN
DECLARE @sql NVARCHAR(MAX) = N'select *
into report_temp.MSK_Traffic_Backup_' + @d + '
from property.door_traffic;';
PRINT @sql;
--EXEC sys.sp_executesql @sql;
END
Когато сте доволни от логиката и искате да изпълните командата, просто разменете коментарите между PRINT
и EXEC
.