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'
相关推荐
java_logo25 分钟前
Apache Doris Docker 部署指南:实时分析数据库实战
数据库·docker·apache·doris·apache doris·轩辕镜像·docker部署doris
广州灵眸科技有限公司8 小时前
xfce桌面触摸校准:基于灵眸科技EASY-EAl-Orin-Nano
数据库·windows·科技
憧憬成为web高手11 小时前
皮卡丘靶场速通--sql 2
数据库·sql·mybatis
段一凡-华北理工大学11 小时前
向量数据库实战:选型、调优与落地~系列文章12:文本分块策略实战:chunk_size 怎么选?重叠多少?
开发语言·数据库·后端·oracle·rust·工业智能体·高炉智能化
遇乐的果园11 小时前
前端学习笔记-vue加载渲染优化
前端·笔记·学习
遇乐的果园13 小时前
前端学习笔记-vue状态管理优化
前端·笔记·学习
oradh13 小时前
Oracle XTTS实现跨版本迁移和升级(Oracle 11g单库升级至19C RAC集群)
数据库·oracle·11g升级19c·xtts跨版本迁移和升级
摇滚侠14 小时前
Java 全栈开发实战教程 课程笔记 29-33
笔记
z1234567898614 小时前
2026最新两款AI编程工具深度对比实测
java·数据库·ai编程
程序猿DD14 小时前
一个 API Key,统一调用大模型、生图和联网搜索
数据库·网关