VB.net 2010 視頻教程 VB.net 2010 視頻教程 VB.net 2010 視頻教程
SQL Server 2008 視頻教程 c#入門經典教程 Visual Basic從門到精通視頻教程
當前位置:
魔兽世界wow > 數據庫 > sql語句 >
  • sql語句大全之使用SQL SERVER 來自動發送郵件

  • 2019-04-29 22:27 來源:未知

魔兽世界wow www.geyjm.icu 可以使用SQL SERVER 來發送自動郵件,主要是使用SQL SERVER 的dbo.sp_send_dbmail 存儲過程(在msdb數據庫中)。

具體步驟如下:

Step1: 編寫要發送的郵件內容,然后調用sp_send_dbmail 存儲過程來發送郵件:


復制代碼
declare @tableHTML varchar(max)

SET @tableHTML =

N'<style>

table { width:100%;}

table, th, td {
border: 1px solid black;border-collapse: collapse;}

th, td {padding: 5px;text-align: left;}

th { background-color:#4682B4;

font-size:12.0pt;font-weight:bold;

font-family:Arial ,sans-serif;

color :#ffffff;}

 tr { font-size:8.0pt;font-family:Arial,sans-serif;}'+

N'</style><H1 style="text-align:center">部門信息</H1>'+

N'<table align="center">'+

N'<tr><th width=20%" >部門編號</th>'+

N'<th width=40%>部門名稱</th><th width=40%>上級部門名稱</th>'+
N'</tr>'+
CAST((
select 
td=a.DepartID,'',
td=a.DepartName,'',
td=ISNULL(b.DepartName,'(NULL)'),''
from TTEM.dbo.EMOrgStructure a 

leftjoin TTEM.dbo.EMOrgStructure b on a.DepartParentID=b.DepartID

FORXMLPATH('tr'),TYPE

)ASNVARCHAR(MAX))+


N'</table>';

Exec dbo.sp_send_dbmail
@profile_name='DannyTest',
 @recipients ='[email protected]',
 @subject='Test Stored Procedure Funtion of Sending Mails',
 @body=@tableHTML,
 @body_format ='HTML';
復制代碼

 


 

Step2: 執行完STEP1 的代碼后就可以在收件箱中查看到剛才從SQL SERVER 自動發送的郵件了:

 

   

Step3: 初次在MSDB 中調用sp_send_dbmail 時,可能不成功,這是因為數據庫默認沒有啟用和配置郵件功能,可參考如下步驟:

1,在SQL MANAGEMETN STUDIO 的“Management”---->"Database Mail"中進行配置:主要時設置Profile Name,設置發送郵件的發送人,發送郵件服務器等

 

 

 

相關教程