sp_send_dbmail
を使用する場合 SQL Serverから電子メールを送信するためのストアドプロシージャでは、クエリ結果を電子メールに追加するオプションがあります。
これを行うと、一部の列に不要なパディングが追加されている場合があります。幸い、このパディングは@query_result_no_padding
で削除できます。 引数。
前
これは、パディングを使用した場合の結果の例です。
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',
@subject = 'Query results as discussed';
結果:
Potential candidates for an Admin job, perhaps? ArtistId ArtistName ActiveFrom ----------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ----------- ---------------- 1 Iron Maiden 1975-12-25 2 AC/DC 1973-01-11 3 Allan Holdsworth 1969-01-01 4 Buddy Rich 1919-01-01 5 Devin Townsend 1993-01-01 (5 rows affected)
この場合、非常に多くのパディングが行われているため、すべてが次の行に折り返され、ヘッダーがデータと一致しません。
後
パディングを削除した後の結果の例を次に示します。
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',
@subject = 'Query results as discussed';
結果:
Potential candidates for an Admin job, perhaps? ArtistId ArtistName ActiveFrom -------- ---------- ---------- 1 Iron Maiden 1975-12-25 2 AC/DC 1973-01-11 3 Allan Holdsworth 1969-01-01 4 Buddy Rich 1919-01-01 5 Devin Townsend 1993-01-01 (5 rows affected)