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'
相关推荐
kylezhao20192 小时前
C#异步和并发在IO密集场景的典型应用 async/await
开发语言·数据库·c#
菩提小狗2 小时前
第15天:信息打点-主机架构&蜜罐识别&WAF识别&端口扫描&协议识别&服务安全_笔记|小迪安全2023-2024|web安全|渗透测试|
笔记·安全·架构
野犬寒鸦2 小时前
ArrayList扩容机制深度解析(附时序图详细讲解)
java·服务器·数据结构·数据库·windows·后端
心本无晴.3 小时前
LangGraph 进阶指南:从状态机到生产级多智能体架构的全面进化
linux·windows·microsoft
专注VB编程开发20年3 小时前
c# CSRedisCore vb.net清空所有键值
数据库·oracle
程序边界3 小时前
数据库MySQL兼容版权限隔离深度体验:从兼容到安全增强的实战之路
数据库·mysql·安全
Victoria.a3 小时前
Mysql基础
数据库·mysql
码云数智-大飞4 小时前
.NET 10 & C# 14 新特性详解:扩展成员 (Extension Members) 全面指南
java·数据库·算法
一个人旅程~4 小时前
windows自带的文本编辑软件notpad太差怎么办?
经验分享·笔记·电脑