Est-il possible de transférer les résultats MS SQL vers un nouveau file MS Excel?

Je transfère des résultats SQL à un file Excel existant en utilisant la requête ci-dessous. Est-il possible de les transférer vers une nouvelle feuille Excel? En utilisant SSIS, nous pouvons le faire, mais je veux savoir s'il y a une possibilité de faire dans SSMS.

SP_CONFIGURE 'show advanced options', 1 RECONFIGURE WITH OVERRIDE GO SP_CONFIGURE 'Database Mail XPs', 1 RECONFIGURE WITH OVERRIDE GO EXEC sp_configure 'ad hoc dissortingbuted queries', 1 RECONFIGURE GO EXEC sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1 INSERT INTO OPENROWSET ('Microsoft.ACE.OLEDB.12.0', 'Excel 8.0;Database=E:\LessThan1300\OutofScope.xlsx;','select * from [Sheet1$]') select * from tboutofscope where InflowDate >= CONVERT(date,getdate()) 

Vous pouvez créer une copy de votre file de model comme ceci:

 DECLARE @sqlscript VARCHAR(4000), @pathtotemplatefile VARCHAR(MAX) = 'E:\LessThan1300\template.xlsx', @pathtonewfile VARCHAR(MAX) = 'E:\LessThan1300\OutofScope.xlsx', @xlsxdatabase varchar(4000) --SET @pathtotemplatefile = 'c:\i\1.xlsx' --SET @pathtonewfile = 'c:\i\2.xlsx' SET @sqlscript='copy ' + @pathtotemplatefile + ' ' + @pathtonewfile EXECUTE master..xp_cmdshell @sqlscript, no_output set @xlsxdatabase = 'Excel 8.0;Database=' + @pathtonewfile + ';' INSERT INTO OPENROWSET ('Microsoft.ACE.OLEDB.12.0', @xlsxdatabase,'select * from [Sheet1$]') select * from tboutofscope where InflowDate >= CONVERT(date,getdate()) 

Vous pouvez modifier dynamicment le nom du nouveau file en fonction de vos besoins, le "créer" puis le remplir avec datatables attendues.