Pokud jste někdy použili databázovou poštu serveru SQL Server k odeslání výsledků dotazu e-mailem, možná jste si všimli, že výsledky jsou ve výchozím nastavení odděleny mezerou.
To je v pořádku, pokud chcete sadu výsledků oddělenou mezerami, ale co když chcete, aby byla oddělena čárkami?
Naštěstí můžete použít @query_result_separator
argument udělat právě to. Tento argument můžete použít k zadání libovolného oddělovače (pokud je to znak(1) ).
Příklad
Zde je příklad, který ukazuje, jak změnit oddělovač na čárku:
EXEC msdb.dbo.sp_send_dbmail
@profile_name = 'DB Admin Profile',
@recipients = '[email protected]',
@body = 'Potential candidates for an Admin job, perhaps?',
@query = 'SELECT TOP(5) * FROM Artists;',
@execute_query_database = 'Music',
@query_result_separator = ',',
@query_result_no_padding = 1,
@subject = 'Query results as discussed';
Výsledek:
Potenciální kandidáti na pozici správce, možná?ArtistId,ArtistName,ActiveFrom--------,-----------,----------1,Iron Maiden,1975-12-252,AC/DC,1973-01-113,Allan Holdsworth,1969-01-014,Buddy Rich,1919-01-015,Devin Townsend,1993-01-01(dotčeno 5 řádků)Všimněte si, že také používám
@query_result_no_padding
argument k odstranění všech výplní, které by mohly být použity na výsledky.Můžete také použít
@attach_query_result_as_file = 1
v případě potřeby připojit výsledky v samostatném souboru.Příklad použití výchozího oddělovače mezer
Pokud odstraním
@query_result_separator = ','
část z výše uvedeného příkladu jsou mé výsledky odděleny výchozím znakem mezery.EXEC msdb.dbo.sp_send_dbmail @profile_name = 'DB Admin Profile', @recipients = '[email protected]', @body = 'Potential candidates for an Admin job, perhaps?', @query = 'SELECT TOP(5) * FROM Artists;', @execute_query_database = 'Music', @query_result_no_padding = 1, @subject = 'Query results as discussed';
Výsledek:
Možná potenciální kandidáti na pozici správce?ArtistId ArtistName ActiveFrom-------- ---------- ----------1 Iron Maiden 1975-12- 252 AC/DC 1973-01-113 Allan Holdsworth 1969-01-014 Buddy Rich 1919-01-015 Devin Townsend 1993-01-01 (dotčeno 5 řádků)