Sql-Server

如何辨識預設郵件配置

  • October 30, 2018

在 SQL Server 中,我們可以設置多個電子郵件配置,其中只有一些設置為預設值。

我嘗試使用以下查詢來獲取帳戶列表:

select *
from msdb.dbo.sysmail_profile p 
   join msdb.dbo.sysmail_profileaccount pa on p.profile_id = pa.profile_id 
   join msdb.dbo.sysmail_account a on pa.account_id = a.account_id 
   join msdb.dbo.sysmail_server s on a.account_id = s.account_id

有沒有辦法辨識預設的郵件配置文件?

添加連接msdb.dbo.sysmail_principalprofile並檢查該is_default列以辨識預設配置文件:

SELECT *
FROM msdb.dbo.sysmail_profile p 
JOIN msdb.dbo.sysmail_principalprofile pp ON pp.profile_id = p.profile_id AND pp.is_default = 1
JOIN msdb.dbo.sysmail_profileaccount pa ON p.profile_id = pa.profile_id 
JOIN msdb.dbo.sysmail_account a ON pa.account_id = a.account_id 
JOIN msdb.dbo.sysmail_server s ON a.account_id = s.account_id;

引用自:https://dba.stackexchange.com/questions/220807