SQL Server笔记 -- 第67章:数据库邮件(DBMAIL)

67.1 发送简单邮件

以下代码向 recipient@someaddress.com 发送纯文本邮件:

sql 复制代码
EXEC msdb.dbo.sp_send_dbmail
  @profile_name = 'The Profile Name',
  @recipients   = 'recipient@someaddress.com',
  @body         = '这是从 SQL Server 发送的一封简单邮件。',
  @subject      = '简单邮件'

67.2 以附件形式发送查询结果

将查询 SELECT * FROM Users 的结果作为附件发送:

sql 复制代码
EXEC msdb.dbo.sp_send_dbmail
  @profile_name = 'The Profile Name',
  @recipients   = 'recipient@someaddress.com',
  @query        = 'SELECT * FROM Users',
  @subject      = '用户列表',
  @attach_query_result_as_file = 1

67.3 发送 HTML 邮件

版本 ≥ SQL Server 2012:

sql 复制代码
DECLARE @html VARCHAR(MAX);
SET @html = CONCAT(
  '<html><body>',
  '<h1>标题文本</h1>',
  '<p>段落文本</p>',
  '</body></html>'
)

版本 < SQL Server 2012:

sql 复制代码
DECLARE @html VARCHAR(MAX);
SET @html = '<html><body>'
          + '<h1>标题文本</h1>'
          + '<p>段落文本</p>'
          + '</body></html>'

使用 @html 变量发送:

sql 复制代码
EXEC msdb.dbo.sp_send_dbmail
  @recipients = 'recipient@someaddress.com',
  @subject    = 'HTML 内容',
  @body       = @html,
  @body_format = 'HTML'
相关推荐
imDwAaY4 分钟前
Bean的生命周期
java·笔记·后端·学习·spring·dubbo
坤坤子吖9 分钟前
C++11——Lambda、function、bind 与可调用对象
c++·笔记·学习
倔强的小石头_15 分钟前
Ubuntu部署Prometheus与Alertmanager:systemd配置、告警对接及cpolar远程访问
数据库·ubuntu·prometheus
优化Henry16 分钟前
LTE站点以太网光模块告警处理实践
运维·网络·笔记·学习·信息与通信
茉莉玫瑰花茶18 分钟前
GO [ 接口 ]
服务器·数据库·golang
babe小鑫21 分钟前
金融工程专业秋招:金融类证书与数据分析类证书的搭配方案
大数据·数据库·人工智能
职豚求职小程序38 分钟前
27届携程笔试测评|能力测评+英语测评高分过
笔记
User_芊芊君子1 小时前
数据库手记:从数据建模到 Spark 对接的实测记录
大数据·数据库·spark
꯭自꯭闭꯭1 小时前
DM主备集群以及读写分离集群搭建
linux·运维·数据库