Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak usunąć nagłówki kolumn podczas wysyłania wyników zapytania pocztą e-mail w programie SQL Server (T-SQL)

Kiedy używasz sp_send_dbmail procedura składowana do wysyłania wyników zapytania pocztą e-mail, nagłówki kolumn są dołączone domyślnie.

Możesz uwzględnić lub wykluczyć nagłówki kolumn za pomocą @query_result_header argument. Aby usunąć nagłówki kolumn, użyj @query_result_header = 0 .

Przykład

Oto przykład do zademonstrowania.

EXEC msdb.dbo.sp_send_dbmail
    @profile_name = 'DB Admin Profile',  
    @recipients = '[email protected]',  
    @body = 'Top 5 cities:',
    @query = 'SELECT TOP(5) * FROM city;',
    @execute_query_database = 'World',
    @query_result_header = 0,
    @query_result_no_padding = 1,
    @subject = 'Query results as discussed';

Wynik:

Top 5 cities:
1 Kabul AFG Kabol 1780000
2 Qandahar AFG Qandahar 237500
3 Herat AFG Herat 186800
4 Mazar-e-Sharif AFG Balkh 127800
5 Amsterdam NLD Noord-Holland 731200

(5 rows affected)

W tym przykładzie użyłem również @query_result_no_padding = 1 aby usunąć wszelkie dopełnienie, które może być zastosowane do kolumn.

Jeśli wolisz, aby każda kolumna była oddzielona przecinkiem, użyj @query_result_separator = ',' .

EXEC msdb.dbo.sp_send_dbmail
    @profile_name = 'DB Admin Profile',  
    @recipients = '[email protected]',  
    @body = 'Top 5 cities:',
    @query = 'SELECT TOP(5) * FROM city;',
    @execute_query_database = 'World',
    @query_result_header = 1,
    @query_result_no_padding = 1,
    @query_result_separator = ',',
    @subject = 'Query results as discussed';

Wynik:

Top 5 cities:
ID,Name,CountryCode,District,Population
--,----,-----------,--------,----------
1,Kabul,AFG,Kabol,1780000
2,Qandahar,AFG,Qandahar,237500
3,Herat,AFG,Herat,186800
4,Mazar-e-Sharif,AFG,Balkh,127800
5,Amsterdam,NLD,Noord-Holland,731200

(5 rows affected)

Uwzględnij nagłówki kolumn

Aby jawnie uwzględnić nagłówki kolumn, użyj @query_result_header = 1 .

EXEC msdb.dbo.sp_send_dbmail
    @profile_name = 'DB Admin Profile',  
    @recipients = '[email protected]',  
    @body = 'Top 5 cities:',
    @query = 'SELECT TOP(5) * FROM city;',
    @execute_query_database = 'World',
    @query_result_header = 1,
    @query_result_no_padding = 1,
    @subject = 'Query results as discussed';

Wynik:

Top 5 cities:
ID Name CountryCode District Population
-- ---- ----------- -------- ----------
1 Kabul AFG Kabol 1780000
2 Qandahar AFG Qandahar 237500
3 Herat AFG Herat 186800
4 Mazar-e-Sharif AFG Balkh 127800
5 Amsterdam NLD Noord-Holland 731200

(5 rows affected)

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. serwer sql niepoprawna nazwa obiektu - ale tabele są wymienione na liście tabel SSMS

  2. COT() Przykłady w SQL Server

  3. Kiedy wydajność Distinct i Group By jest inna?

  4. Zmień istniejącą kolumnę na kolumnę obliczoną w SQL Server (przykład T-SQL)

  5. Prawidłowa metoda usuwania ponad 2100 wierszy (według ID) za pomocą Dapper