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'
相关推荐
非优秀程序员35 分钟前
第02章 杭电的英语老师与一台服务器|《互联网产品恩仇录》
数据库·node.js·代码规范
SelectDB5 小时前
SelectDB 是哪个公司的?是国产数据库吗?一篇讲清飞轮科技与 Apache Doris 的关系
数据库
这个DBA有点耶6 小时前
库内计算推理:一条SQL背后的算子融合,和外挂方案差了几次网络往返
数据库·人工智能·sql
David猪大卫7 小时前
【C++修炼】map 和 set 的使用
c语言·开发语言·数据结构·c++·经验分享·笔记·学习
这个DBA有点耶8 小时前
函数索引的“完全一致”有多苛刻:写法、字符集、类型,差一处就失效
数据库·mysql·代码规范
星恒随风8 小时前
MySQL 从零入门(三):表的约束详解
linux·服务器·数据库·笔记·mysql
Alluxio8 小时前
Alluxio + OCI:为 AI 工作负载实现亚毫秒访问延迟与可扩展吞吐
运维·数据库·人工智能·分布式·缓存·ai·语言模型
蒸蒸yyyyzwd12 小时前
从后端面经学到的 3 个知识
笔记·学习
17岁的勇气12 小时前
Unity Shader unity文档学习笔记(二十二):shader变体
笔记·学习·unity
数据库急诊室_阿哲12 小时前
一次加索引建议的复核记录:从报告到签字
数据库·ai数据库