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;
Maintenant, vous pouvez également ajouter une logique pour rendre le script immunisé contre les erreurs s'il est exécuté plus d'une fois dans un jour donné, par exemple
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
Lorsque vous êtes satisfait de la logique et que vous souhaitez exécuter la commande, échangez simplement les commentaires entre PRINT
et EXEC
.