程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL Server中發送HTML格式郵件的方法

SQL Server中發送HTML格式郵件的方法

編輯:關於SqlServer

sql server 發送html格式的郵件,參考代碼如下:

   DECLARE @tableHTML NVARCHAR(MAX) ;
   -- 獲取當前系統時間,和數據統計的時間
   set @d_nowdate = convert(datetime,convert(varchar(10),dateadd(day,-1,getdate()),120),120);

   -- 如果有數據則發送
    if exists (select top 1 * from t_table1(nolock) where d_rq=@d_nowdate)
   begin
    set @str_subject='某某'+convert(varchar(10),@d_nowdate,120)+'淨值.';
    SET @tableHTML = N'<H1>某某</H1><br>目前測試中<br><table border="1">' +
         N'<tr><th>日期</th><th>基金代碼</th><th>基金名稱</th><th>淨值</th><th>累計淨值</th></tr>' +
       CAST ( (select convert(varchar(10),@d_nowdate,120) as 'td','',VC_JJDM as 'td','',Vc_jjmc as 'td','',EN_JJDWJZ as 'td','',EN_LJJZ as 'td'
          from t_table1 t left join t_table2 tt on t.VC_JJDM = tt.C_FUNDCODE 
         where d_rq=@d_nowdate order by Vc_jjmc,VC_JJDM
          FOR XML PATH('tr'), ELEMENTS-- TYPE 
          ) AS NVARCHAR(MAX) ) + N'</table>';

    -- 發送郵件
    exec @i_result = msdb.dbo.sp_send_dbmail
           @profile_name = 'Profile-Mail',
           @recipients = '郵箱地址1;郵箱2;郵箱3', 
           @subject = @str_subject,
           @body = @tableHTML,
           @body_format = 'HTML';
   end

郵件效果如下:

某某淨值

目前測試中

日期

基金代碼

基金名稱

淨值

累計淨值

2013-12-20

111111

AAAAA

0.98300000

0.98300000

2013-12-20

222222

BBBBB

1.04900000

1.04900000

2013-12-20

333333

CCCCC

0.64000000

0.64000000

2013-12-20

444444

DDDDD

0.99400000

0.99400000

2013-12-20

555555

EEEEE

1.05700000

1.05700000

2013-12-20

666666

FFFFF

0.73400000

0.73400000

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved