Tímto skriptem lze exportovat data z určité tabulky do CSV souboru (pokud potřebujete exportovat určitý select, je potřeba vytvořit pomocnou tabulku a tu pak exportovat)
DECLARE
@SQL nvarchar (MAX),
@CMD nvarchar (500),
@Path nvarchar (200)
-- vytvoření selectu do tabulky TabData
SET @SQL = 'SELECT * FROM ' + DB_NAME() +'.dbo.TabData'
-- cesta pro uložení + název souboru
SET @Path = (SELECT 'D:\EXPORT\export-file.csv')
-- sestavení celého příkazu
SELECT @CMD = 'bcp " ' + @SQL + ' " queryout ' + @Path + ' -c -t; -T -S '
-- export pomocí procedury xp_cmdshell
EXEC master..xp_cmdshell @CMD
V následujícím příkladu uvádím možnost jak vytvořit název souboru pomocí datumu a času (např. pro 10.5.2018 v 12 hod 50 min 30 sec to bude 2018-05-10-12-50-30)
DECLARE
@SQL nvarchar (MAX),
@CMD nvarchar (500),
@Path nvarchar (200)
SET @SQL = 'SELECT * FROM ' + DB_NAME() +'.dbo.NypTabExportFB'
SET @Path = (SELECT 'D:\EXPORT\' + REPLACE(REPLACE(convert(nvarchar(20),GetDate(),120),':','-') ,' ','-')+'.csv')
SELECT @CMD = 'bcp " ' + @SQL + ' " queryout ' + @Path + ' -c -t; -T -S '
EXEC master..xp_cmdshell @CMD
Samozřejmostí je nutnost oprávnění pro xp_cmdshell (pozor na bezpečnostní riziko)