SQL Server存储过程邮件发送以表格方式发送
一、收到邮件显示:示例

二、存储过程代码部分:
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)
--查询表格中异常资料笔数
SELECT @SignCount=COUNT(1) FROM 表名称 WHERE 筛选条件
SET @MailSubject='異常共'+@SignCount+'筆'
SET @MailFormat='HTML'
SET @MailTo='xxx.zzz@qq.com' --收件人邮件地址
SET @MailCc='xxx.zzz@qq.com' --抄送
SET @MailBcc='xxx.zzz@qq.com' --密送
SET @MailBody='' --发送内容
SET @MailBody =
N'Dear Sir/Madam:<br>異常共'+@SignCount+'筆,請及時核對,謝謝!!!<br><H4> 列表如下:</H4>' +
--定义邮件表格尺寸大小
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>' +
N'<th>實際已用天數</th>' +
N'<th>異常狀態</th>' +
--表主体结果
CAST ( ( SELECT
td = Empid, '',
td = EmpCName, '',
td = [ULColA29-AdjAnlUsePos-Sum], '',
td = VocaTotalHours, '',
td = [ULColA29-State], ''
FROM 表名称 Form WHERE 筛选条件 FOR XML PATH('tr'), TYPE --将查询出来结果以HTML语言 td/tr显示出来
) AS NVARCHAR(MAX)
) +
N'</table><br>以上為系統發送,請勿回復!!!<br>xx部xx課'
declare @i int
BEGIN
SET @i=0;
EXEC msdb.dbo.sp_send_dbmail --执行SQL邮件发送的一个功能地址
--对应的邮件主体参数带入发送邮件
@profile_name='MIS_SMTP_Mail', --sql郵件設置的配置名稱
@recipients=@MailTo, --收件地址
@copy_recipients=@MailCc, --抄送地址
@blind_copy_recipients=@MailBcc, --密送
@subject=@MailSubject, --郵件主題
@body=@MailBody, --mail正文內容
@body_format=@MailFormat --郵件內容格式
SET @i=1;
END
END
SQL Server存储过程邮件发送以表格方式发送的更多相关文章
- SQL Server数据库邮件发送异常案例
最近遇到两起关于SQL Server数据库邮件发送异常的案例,这些问题也有点意思,顺便记录一下.方便以后遇到类似问题的人参考,不要被这些问题弄得抓狂! 案例1:我们一台数据库服务器突然发送邮件都不 ...
- SQL Server存储过程中使用表值作为输入参数示例
这篇文章主要介绍了SQL Server存储过程中使用表值作为输入参数示例,使用表值参数,可以不必创建临时表或许多参数,即可向 Transact-SQL 语句或例程(如存储过程或函数)发送多行数据,这样 ...
- sql server 存储过程使用游标记录
sql server 存储过程使用游标记录--方便下次参考使用 游标的组成: 声明游标 打卡游标 从一个游标中查找信息 关闭游标 释放游标 游标类型: 静态游标 动态游标 只进游标 键集驱动游标 静态 ...
- SQL Server存储过程输入参数使用表值
转载自:http://blog.csdn.net/smithliu328/article/details/9996149 在2008之前如果我们想要将表作为输入参数传递给SQL Server存储过程使 ...
- SQL Server中的三种Join方式
1.测试数据准备 参考:Sql Server中的表访问方式Table Scan, Index Scan, Index Seek 这篇博客中的实验数据准备.这两篇博客使用了相同的实验数据. 2.SQ ...
- 【原创】SQL Server Job邮件详细配置
1 简介 SQL Server 代理具有发送电子邮件的功能.您可以配置 SQL Server 代理邮件,使其在出现下列情况时向预定义的操作员发送电子邮件: 警报触发时.可以配置警报,以针对所发生的特定 ...
- SQL Server 存储过程具体解释
SQL Server 存储过程具体解释 存储过程的优缺点 ◆长处: 运行速度更快. 存储过程仅仅在创造时进行编译,而一般SQL语句每运行一次就编译一次,所以使用存储过程运行速度更快. 存储过程用于处理 ...
- SQL Server存储过程Return、output参数及使用技巧
SQL Server目前正日益成为WindowNT操作系统上面最为重要的一种数据库管理系统,随着 SQL Server2000的推出,微软的这种数据库服务系统真正地实现了在WindowsNT/2000 ...
- SQL Server 存储过程(转载)
SQL Server 存储过程 Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用.当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句.这 ...
随机推荐
- System.nanoTime理解
JDK1.5之后java中的计时给出了更精确的方法:System.nanoTime(),输出的精度是纳秒级别,这个给一些性能测试提供了更准确的参考. 但是这个方法有个需要注意的地方,不能用来计算今天是 ...
- 异常--java.text.ParseException: Unparseable date
String d = "2015-05-19" SimpleDateFormat sdf = new SimpleDateFormat( "yyyy/MM/dd HH ...
- Mysql 30条军规
一.基础规范 (1)必须使用InnoDB存储引擎 解读:支持事务.行级锁.并发性能更好.CPU及内存缓存页优化使得资源利用率更高 (2)必须使用UTF8字符集 解读:万国码,无需转码,无乱码风险,节省 ...
- XSS(笔记1)
概念 跨站脚本(Cross-Site Scripting,XSS) 发生在目标网站中目标用户的浏览器层面上,当用户浏览器渲染整个HTML文档的过程中出现了不被预期的脚本指令并执行时,XSS就会发生.为 ...
- 在Ubuntu16.04上配置.Net Core 2 环境
一.安装.Net Core SDK 按照官方文档,执行以下命令安装SDK curl https://packages.microsoft.com/keys/microsoft.asc | gpg -- ...
- 【BZOJ 4652】【NOI 2016】循环之美
题目连接: 传送 题解: 真是一道好题…… 一: 一个分数$\frac{x}{y}$完全循环当其第一次出现时,当且仅当y与k互质,x与y互质,且y不等于1. 整数情况下y一定为1,即也满足以上判断. ...
- vue enter事件无效,加入native
<Input type="password" v-model="password" placeholder="password" @k ...
- iOS 远程推送通知 详解
1: ios本地通知和远程通知 http://wangjun.easymorse.com/?p=1482 2: 苹果远程通知服务申请激活例图 (外国佬写的.) http://mobiforge.com ...
- Dashboard二次开发简明教程
Horizon简介 Horizon是OpenStack的一个子项目,用于提供一个Web前端控制台(称为Dashboard),以此来展示OpenStack的功能.通常情况下,我们都是从Horizon.D ...
- Solr相似性算法
Solr相似性算法 介绍 Solr 4及之前的版本默认采用VSM(向量空间模型)进行相似度的计算(或打分).之后的版本,则采用Okapi BM25(一种二元独立模型的扩展),属于概率模型. 检索模型通 ...