一、首先要对本地数据库做配置

1.通过使用数据库邮件配置向导和sp_configure存储过程配置启用数据库邮件:

注:服务器名称填写发送服务器的路径或者IP,电子邮件地址为寄件者地址

配置好数据库邮件账户和配件文件后,使用SQL   Mail    XPs选项在此服务器上启用SQL    Mail(改选项默认是关闭的)

sp_configure 'show  advanced  options' , 1

go

Reconfigure;

go

sp_configure 'SQL Mail  XPs' , 1

go

Reconfigure;

go

设置立即生效,无需停止并重新重启服务器

查看数据库邮件日志:

二、收到郵件顯示

三、存储过程代码

USE     数据库名称

GO

SET  ANSI_NULLS  ON

GO

SET QUOTED_IDENTIFIER  ON

GO

CREATE  PROCEDURE  存储过程名称

AS

BEGIN

  SET NOCOUNT ON;

    DECLARE     @MailTo          NVARCHAR(MAX)

     DECLARE     @Mailcc      NVARCHAR(MAX)

     DECLARE     @MailBcc    NVARCHAR(MAX)

      DECLARE     @MailSubject   NVARCHAR(255)

    DECLARE     @MailBody    NVARCHAR(MAX)

      DECLARE     @MailFormat   NVARCHAR(20)

     DECLARE     @SignCount    NVARCHAR(50)

     DECLARE      @DayID                NVARCHAR(20)

SET @DayId=CONVERT(NVARCHAR(10),DATEADD(DAY,-1,GETDATE()),111)

SELECT @SignCount=COUNT(1) FROM  [GSClassDB].[dbo].[Class_Abnorm] WHERE DayID='2017/12/03'
 
 SET @MailSubject='非責任制出勤共'+@SignCount+'筆,請注意查收!'
 SET @MailTo='ximi@com'
 SET @Mailcc='ximi@com'
 SET @MailBcc=''
 SET @MailBody=''
 SET @MailFormat='HTML'
 SET @MailBody=
   N'Dear ALL:<br>非責任制出勤共'+@SignCount+'筆,請注意查收,謝謝!<br><H4>&nbsp;&nbsp;&nbsp;列表如下:&nbsp;&nbsp;&nbsp;</H>'+  
         N'<table border="1"  style="font-size:11px;text-align:center"  width="60%">'+
         N'<tr style="font-size:11"><th>工號</th>'+
         N'<th>姓名</th>'+
         N'<th>部门</th>'+
         CAST( ( SELECT 
       td=EmpID, ' ' ,
       td=EmpName, ' ' ,
       td=DeptID, ' '
       FROM  [GSClassDB].[dbo].[Class_Abnorm] WHERE DayID='2017/12/03'
         FOR XML PATH( ' t r ' ),TYPE
         )AS NVARCHAR(MAX))+
         N'</table><br>以上为系统发送,请勿回复,谢谢!!<资讯系统部-课>'
        
        
         DECLARE @i int
       BEGIN
   SET @i=0;
   IF(@SignCount>1)
   EXEC msdb.dbo.sp_send_dbmail 
   @profile_name='ximi',
   @recipients=@MailTo,
   @copy_recipients=@Mailcc,
   @blind_copy_recipients=@MailBcc,
   @subject=@MailSubject,
   @body=@MailBody,
   @body_format=@MailFormat
   SET @i=1;
    END
        
END

SQL Server2008本地数据库调用SP发送邮件的更多相关文章

  1. SQL Server2008附加数据库之后显示为只读时解决方法

    啰嗦的话就不多说了,直入主题吧! 方案一: 碰到这中情况一般是使用的sa账户登录的,只要改为Windows身份验证,再附加数据库即可搞定. 方案二: 使用sa登录SQL Server2008附加数据库 ...

  2. SQL Server2008附加数据库之后显示为只读

    SQL Server2008附加数据库之后显示为只读时解决方法 啰嗦的话就不多说了,直入主题吧! 方案一: 碰到这中情况一般是使用的sa账户登录的,只要改为Windows身份验证,再附加数据库即可搞定 ...

  3. (转载)SQL Server2008附加数据库之后显示为只读时解决方法

    SQL Server2008附加数据库之后显示为只读时解决方法 啰嗦的话就不多说了,直入主题吧! 方案一: 碰到这中情况一般是使用的sa账户登录的,只要改为Windows身份验证,再附加数据库即可搞定 ...

  4. SQL Server2008 R2 数据库镜像实施手册(双机)SQL Server2014同样适用

    这篇文章主要介绍了SQL Server2008 R2 数据库镜像实施手册(双机)SQL Server2014同样适用,需要的朋友可以参考下 一.配置主备机 1. 服务器基本信息 主机名称为:HOST_ ...

  5. [转] sql server 跨数据库调用存储过程

    A库存储过程: create PROCEDURE [dbo].[spAAAForTest] ( ) =null , ) =null ) AS BEGIN select N'A' AS a , N'B' ...

  6. SQL Server2008附加数据库失败

    今天旁晚时分,我准备把老师在上课时候发给我们的一个数据库附加到我的SQL Server2008上面去,本来在学校机房用的SQL Server2000是很顺利地就成功了,但是把*.mdf文件附加到我的0 ...

  7. SQL Server 本地数据库登录不上 解决方法

    sql本地数据库登录不了的话.先看看自己计算机 服务 SQL server  (MSSQLSERVER)  没有打开的话,请打开. 今天说的情景模式是  你误删了windows登录:禁用了sa登录:s ...

  8. SQL Server2008分离数据库

    1.右击数据库 2.Tasks 3.点击Detach 4.选取Drop Connections-->点击确定 5.开启本地数据库默认存储路径C:\Program Files\Microsoft ...

  9. SQL Server2008创建数据库语法

    use mastergo if exists(select * from sys.databases where name='MySchool') drop database MySchool  -- ...

随机推荐

  1. 解决“Jquery的each里面return失效的问题”

    参考文章:http://blog.csdn.net/coffeesmile/article/details/53349860 问题描述: 集中获取页面的一些元素,然后用each循环处理这些元素,如果其 ...

  2. Variance Inflation Factor (VIF) 方差膨胀因子解释_附python脚本

    python信用评分卡(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_camp ...

  3. Linux_CentOS用户管理 和 用户权限管理 chmod、ACL、 visudo

    一.用户管理 Linux 系统同时可以支持多个用户,每个用户对自己的文件设备有特殊的权利,能够保 证用户之间互不干扰.就像手机开了助手一样,同时登陆多个 qq 账号,当硬件配置非常高 时,每个用户还可 ...

  4. QQ第三方登录回调地址的问题

    如题,维护以前的项目,发现原来QQ的第三方登录竟然失败了.回调地址的问题 原来是以前的规则变了.好吧,那就改,谁叫我不是改变规则的人. 中途浪费了点时间,项目很大,我一下也找不到项目里那个接口调用的, ...

  5. apt-get和yum

    1.apt-get是dpkg系的,或者说debian系的,如ubuntu 2.yum是红帽系的,如中标麒麟

  6. 基于EasyDSS流媒体解决方案创建视频点播、短视频、视频资源库等视频播放系统

    随着前端技术的不断发展,视频点播早已不再是IE6时代的浏览器嵌入式Windows Media Player.也不是后来的flash media player需要的rtmp点播流,现在能够唯一满足全终端 ...

  7. while死循环

    while死循环放入主线程要注意,如果处理不当可能引起界面假死,如果界面假死,可以放入子线程中(如果每个循环处理时间现对于CPU很短,则建议在本次循环结束的尾部加入Sleep以释放对CPU的占用) C ...

  8. dockerfile中设置环境变量

    设置环境变量要用 ENV ENV JAVA_HOME /usr/local/jdk1.8.0_171 ENV PATH $JAVA_HOME/bin:$PATH 用 echo "JAVA_H ...

  9. 【opencv基础-VxWorks】话说图像格式转换-COLOR_YUV2BGR_YUY2

    前言 基于Vxworks的WindRiver获取摄像头图像进行处理,需要先进行转换,对于转换格式博主有点疑问.本文对此作出解释,若有错误,请交流指正. README.md The video came ...

  10. 智能指针.Qt测试

    1.Qt598x64vs2017(或 Qt598x86vs2015[配置使用vs2017]).Win10x64 2.测试代码: 2.1.MainWindow.h class MainWindow : ...