sqlserver如何自动发送邮件

前言:

项目里有一个需求,需要凌晨将前一天的订单数据汇总后形成报表,以邮件的形式发送到各个管理者的邮箱中,方便上层精灵们[做鬼脸]早上晨会的数据需求。

那么问题来了,我既不能晚上不睡觉汇总数据发邮件,又懒得写服务、研究云邮箱的配置,那么肿么办呢?

巧用SqlServer数据库实现邮件自动发送功能

回忆曾经没事翻书,恍惚记得数据库有发送邮件的功能。于是乎脑海中浮现出了一个“邪恶的”念头,这些数据既然来自数据库,那么你就将好人做到底!帮洒家把这项工作一起完成了,岂不美哉[奸笑]!

瞬间感觉到我的快乐来了,“什么是快乐星球”?干活能偷懒,总会让人感觉到很愉悦[吐舌]。

巧用SqlServer数据库实现邮件自动发送功能

使用数据库发送邮件需要三个步骤,配置数据库的邮件服务、编写存储过程、设置SQL作业,接下来开始逐步分享:

配置数据库邮件:

在SqlServer左侧菜单栏中,找到管理页签中数据库邮件选项:

巧用SqlServer数据库实现邮件自动发送功能

接下来开始配置数据库邮件:

巧用SqlServer数据库实现邮件自动发送功能

这里我们选择创建一个全新的配置,并启动该功能,随后下一步即可:

巧用SqlServer数据库实现邮件自动发送功能

给配置文件起一个霸气的名字,说明随意填写即可,这个配置名字需要记得,后面我们还需要使用到它,点击添加功能,开始进行邮箱详细信息的配置:

巧用SqlServer数据库实现邮件自动发送功能

这里填写好你们公司购买的邮件服务账号信息即可,如果没有的话,也可以使用QQ邮箱自带的SMTP功能,启动SMTP服务即可,功能上肯定会有一些限制:

巧用SqlServer数据库实现邮件自动发送功能

填写好配置信息之后,列表中会出现刚才配置的SMTP账户信息:

巧用SqlServer数据库实现邮件自动发送功能

剩下的步骤就是继续、继续、向着胜利出发:

巧用SqlServer数据库实现邮件自动发送功能巧用SqlServer数据库实现邮件自动发送功能

成功之后也不要骄傲哦,需要测试一下,看邮箱配置是否可以正常地发送邮件,这一点非常的重要,否则后面的操作都会受到影响:

巧用SqlServer数据库实现邮件自动发送功能巧用SqlServer数据库实现邮件自动发送功能

编写存储过程:

上述步骤测试通过后,我们开始进行存储过程的编写了,为SQL作业的自动执行打下脚本的基础。

存储过程的编写思路就是:将邮件需要发送的内容进行获取,然后通过SQL调用发送邮件的存储过程,将其需要的参数一一提供即可。

巧用SqlServer数据库实现邮件自动发送功能

这里使用的存储过程是:sp_send_dbmail,需要的主要参数解释下:

  1. @profile_name:这个参数为刚才配置数据库邮件的名称。
  2. @recipients:接收人邮箱地址。
  3. @subject:邮件标题。
  4. @body:邮件内容。
  5. @body_format:邮件格式。
CREATE PROC [dbo].[AutoOrdersEmailNotice]ASBEGINDECLARE @EmailAddress NVARCHAR(100) = 'xxxxx@qq.com';DECLARE @CONTENT NVARCHAR(500) = N'<h1>2021-6-5:订单汇总报表</h1><hr /><table border="1" width="500"><tr align="center" style="font-weight:800;background-color:blue"><td>序号</td><td>产品名</td><td>订单数</td><td>单价</td><td>总价</td></tr><tr align="center"><td>1</td><td>车厘子</td><td>200</td><td>100</td><td>20000</td></tr><tr align="center"><td>2</td><td>冰糖心</td><td>100</td><td>50</td><td>5000</td></tr><tr align="center"><td>3</td><td>芝麻蕉</td><td>500</td><td>40</td><td>20000</td></tr></table>';Exec msdb.dbo.sp_send_dbmail @profile_name='TestSqlMail',@recipients=@EmailAddress,@subject=N'2021-6-5日,订单汇总报表',@body=@CONTENT,@body_format = 'HTML'END

编写后同样需要测试,如果可以执行该存储,可以实现邮件的正常发送功能,那么我们此时离胜利只有一步之遥了。

巧用SqlServer数据库实现邮件自动发送功能

设置SQL作业:

SQL作业的用途就是可以自动、定时地执行SQL脚本,例如:每天更新用户年龄、更新一些订单的状态等等。

使用SQL作业,首先需要开启SqlServer代理服务:

巧用SqlServer数据库实现邮件自动发送功能巧用SqlServer数据库实现邮件自动发送功能

接下来我们新建作业,用于执行刚才编写的存储过程:

巧用SqlServer数据库实现邮件自动发送功能

填写作业需要的相关信息:

巧用SqlServer数据库实现邮件自动发送功能

解析来选择新建步骤,不要点击确定按钮,这里填写SQL作业需要执行哪个数据库下面的,哪段SQL脚本:

巧用SqlServer数据库实现邮件自动发送功能

设置SQL作业的执行计划,这里根据实际需求设置即可,我这里需要每天定时发送:

巧用SqlServer数据库实现邮件自动发送功能

设置成功之后,同样需要测试一下:

巧用SqlServer数据库实现邮件自动发送功能巧用SqlServer数据库实现邮件自动发送功能

数据库自动发送邮件成功了,流下了激动的泪水,偷懒果然会让人快乐,晚上可以加鸡腿了[泣不成声]。当然我们每天需要关注一下,邮件发送的日志,掌握功能的运行情况:

巧用SqlServer数据库实现邮件自动发送功能巧用SqlServer数据库实现邮件自动发送功能

总结一下:

这就是使用SqlServer完成的邮件自动发送功能,不同的数据库配置肯定会有所不同,但思路都是大相径庭的。

巧用SqlServer数据库实现邮件自动发送功能

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:dandanxi6@qq.com

(0)
上一篇 2023年 2月 12日 上午11:47
下一篇 2023年 2月 12日 上午11:56

相关推荐

  • 微信亲属卡你用过没,微信亲属卡该怎么用

    微信“亲属卡”功能你用过吗? 注意!!! 诈骗分子盯上了这个功能 已经有不少人中招 什么是微信“亲属卡”? 顾名思义 微信用户 可以向指定亲属好友 开通“亲属卡”服务 让对方获得使…

    2023年 1月 19日
  • app渠道投放策略,app推广实战难题

    随着行业马太效应的加深,APP流量的获取愈发艰难,酒香也怕巷子深,再好的产品,没有优质的推广渠道加持也很难实现有效传播。 因此准备用一个系列专题,汇总整理APP传播的渠道、投放策略…

    2023年 1月 5日
  • 好用却危险?全球浏览器10月最新排名:第一名有64.64%人在用

    浏览器是电脑上网必备工具之一,也是了解外界信息的渠道之一。 在电脑互联网形成之初,浏览器还是很简陋的,从视觉到功能。 但随着科技的发展,浏览器在不断地优胜劣汰,至今能在占有一席之地…

    2023年 2月 23日
  • 有线电视怎么搜台?(有线电视搜不到台怎么回事)

    随着科技的发展,越来越多的家庭从有线电视转换成了数字电视,数字电视节目众多众样,深受年轻人的喜爱,但是对于年龄稍微大点的人,依然在使用有线电视,今天教给大家:有线电视怎么搜台,这样…

    2023年 3月 16日
  • 西游记之思维导图

    《悟空传》、《西游伏妖篇》、《大闹天竺》、《大闹天宫》、《嘻游记》、《情癫大圣》、《西行平妖》、《大话西游之月光宝盒》 、《大话西游记之篇仙履奇缘》、《大圣归来》、《西游记之孙悟空…

    2023年 9月 16日
  • qq音乐的歌曲怎么转换mp3手机

    用户在使用qq音乐听歌的时候,如果遇到下载的音乐歌曲不是MP3格式的情况,往往会出现音频无法打开播放的问题。那么最直观有效的解决方法,就是将下载下来的歌曲通过音频处理工具转换成MP…

    2023年 3月 22日
  • 支付宝大宝卡怎么加流量

    支付宝大宝卡老用户免费升级啦!免费增送语音和流量啦。互粉必回,互粉必回,互粉必回!!! 5月22日消息,支付宝推出的蚂蚁大宝卡、蚂蚁小宝卡,其中蚂蚁大宝卡套餐每月36元,包括2GB…

    2023年 5月 12日
  • 苹果手机微信不打开就收不到聊天

    微信视频聊天是比较流行的通讯方式,但有时候用户可能会遇到无法收到视频聊天消息的情况,这可能是由于微信没有打开导致的。本文将介绍如何解决这个问题。 1、首先,要检查微信是否打 开,可…

    2023年 6月 11日
  • 开淘宝店的详细步骤(开淘宝店教程详细流程)

    以淘宝9.11.0版为例,淘宝开店方法:1、在银行办理网银。2、注册淘宝账号,在网页上点击“我的淘宝”。3、点击“已卖出的宝贝”。4、点击“我要开店”。5、点击立即申请支付宝认证,…

    互联网 2023年 1月 29日
  • 20多家网贷平台接入央行征信

      中新经纬客户端2月13日电 据北京市互联网金融行业协会网站13日消息,近日,北京多家网贷平台正式接入中国人民银行金融信用信息基础数据库(即征信系统),平台所有借款人借款相关的信…

    互联网 2023年 1月 23日