基本上就是這樣。用動態smtp發送郵件SQL Server
我已經配置了配置文件,郵件,smtp服務器,用戶名和密碼。 我使用的是sp_send_dbmail但偶爾我要更改smtp,用戶名,密碼和端口,我在表中有這個,我只需要傳遞參數到「sp_send_dbmail」與這些字段,或者像那樣工作的東西。
SQL使用動態電子郵件憑據發送郵件。
非常感謝
基本上就是這樣。用動態smtp發送郵件SQL Server
我已經配置了配置文件,郵件,smtp服務器,用戶名和密碼。 我使用的是sp_send_dbmail但偶爾我要更改smtp,用戶名,密碼和端口,我在表中有這個,我只需要傳遞參數到「sp_send_dbmail」與這些字段,或者像那樣工作的東西。
SQL使用動態電子郵件憑據發送郵件。
非常感謝
如果有人需要它,首先,我刪除了配置文件設置(或帳戶在這種情況下),然後我會再創建它,使用此...
EXECUTE msdb.dbo.sysmail_delete_account_sp
EXECUTE msdb.dbo.sysmail_delete_profile_sp
EXECUTE msdb.dbo.sysmail_add_account_sp
EXECUTE msdb.dbo.sysmail_add_profile_sp
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
這就是我如何管理在發送郵件前更新帳戶憑證
你必須保存您在表中配置的所有配置文件名稱。
declare @profilename varchar(50);
set @profilename = (select profilename from your_table where smpt_server = 'smtp_server_value');
EXEC msdb.dbo.sp_send_dbmail
@recipients = '[email protected]'
, @subject = 'Subject'
, @body = 'email_test'
, @profile_name = @profilename
, @body_format = 'HTML' ;
由於我可以在配置文件之間進行選擇,但問題在於憑據,電子郵件用戶名,密碼和smtpserver –
只要您使用正確的憑據在DBMail中設置了配置文件,所有你需要的是配置文件名稱。 –
憑證將每週更改,新憑證將在表中 –