首先你需要知道你要做的几部:

  1 每个数据库都有自己的 SERVICE BROKER 很多SQL SERVER内部服务依赖它

  2 启动 SERVICE BROKER 需要

  1 STOP 你的 SQL SERVER AGENT (就是说SQL server 代理)

   2 alter database helpdesk2 set enable_broker  ( 在脚本中运行这个脚本)

  有的时候启动不了你的SERVICE BROKER原因就在于你没有关闭你的SQL SERVER AGENT

  另外如果你要打开BROKER

  你需要 管理员的权限 。

其次: 等你确认上面的你都完成了,下面就可以进入我们期待已久的主要过程了。 ↓↓↓

其次 :如果还出现错误。请按照下面的操作进行。

--- 我自己使用outlook 邮箱发送成功了。

再次给大家看看具体的。

最后 给大家上一个网友传的案例:

最最后 我们对邮件代码来分析一下:

--本文示例SQL:
USE msdb --使用的邮件服务器
GO ---不解释
--以下是正常的SQL语句
--你要做什么事就怎么写 DECLARE @cnt INT;
DECLARE @emailBody VARCHAR(4000);
SELECT @cnt=COUNT(*) FROM ng0002.dbo.secuser;
IF @cnt>100 -- 可以使用条件语句哦~~
BEGIN
SELECT @emailBody='数据库用户表记录数已达:'+convert(varchar,@cnt) ;
Exec dbo.sp_send_dbmail --使用的配置的邮件名
@profile_name='SQLMailConfig', --不清楚
@recipients='subscriber@126.com', -- 收件人
@subject='用户数预警', --主题
@body=@emailBody --内容
--还可以有查询(下面的另一个代码)
END
--上述语句的意思就是,如果IF成立 就 发送邮件,邮件发送的内容。 --------例子2
USE msdb
GO
Exec msdb.dbo.sp_send_dbmail
@profile_name='SQLMailConfig',
@recipients='subscriber@126.com',
@query='select logid,u_name from ng0002.dbo.secuser', --这是一个查询
@subject='用户数预警',
@body='查询结果,详见附件',
@attach_query_result_as_file =1,--查询结果以附件形式发送
@query_attachment_filename ='查询结果.Txt'--邮件附件名称
GO

  

到此,使用SQL发邮件的功能和可能遇到的问题应该全部解决了。

如果其他问题,请留言~~~

参考网址:

http://www.2cto.com/database/201403/289114.html

http://answers.microsoft.com/zh-hans/outlook_com/forum/oemail-osend/%E8%AF%B7%E9%97%AEoutlookcom%E7%9A%84imap%E6%9C%8D/dbda3ec9-291b-4763-b7f6-793f2724e827

http://jingyan.baidu.com/article/d713063523564f13fcf47570.html

http://zhangkui.blog.51cto.com/1796259/340557/

-------------------------------------------------上面我们配置好了sql 邮件服务功能-------------------------------------

接下来我们就说说 我们平时使用sql代理作业 利用邮件功能给我们发送作业执行情况。

所有的基础都是 你要开启SQL server的代理服务

第一步:当然也就是上面所说的 配置 sql 邮件服务功能。

第二步:在sql server 代理中设置操作员。 详细见下图

第三步:在你的作业中设置 【通知】选项中填写邮件信息。

详细:

SQL邮件服务(解决各种疑难杂症)+案例 + 使用SQLserver 邮件系统发送SQL代理作业执行警告的更多相关文章

  1. SQL Server服务没有自动启动原因案例分析

    这个案例是前两天出现的,一直没有时间总结,25号凌晨4点去处理数据库的故障问题.远程连上公司的局域网,psping检查发现服务器的1433端口不通,数据库连接不上,但是主机又能ping通,登录服务器检 ...

  2. 使用SQLServer同义词和SQL邮件,解决发布订阅中订阅库丢失数据的问题

    最近给客户做了基于SQLServer的发布订阅的“读写分离”功能,但是某些表数据很大,经常发生某几条数据丢失的问题,导致订阅无法继续进行.但是每次发现问题重新做一次发布订阅又非常消耗时间,所以还得根据 ...

  3. (原)SQL Server 代理作业执行持续时间简述

    本文目录列表: 1.SQL Server 代理作业概述2.获取代理作业执行时间方法一 3.获取代理作业执行时间方法二4.总结语 5.参考目录清单列表 正文:   1.SQL Server 代理作业概述 ...

  4. 解决 SQL Server 所有帐号无 sysadmin 权限,且未启用 SQL Server 身份验证,sa 帐号也未启用的问题

    解决 未启用 SQL Server 身份验证 的问题: 1. 运行 regedit,进入注册表编辑器 2. 打开:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Micro ...

  5. SQL Server ->> 与SQL Server服务配置相关的DMV

    1) sys.dm_server_services这个DMV可以告诉我们与当前版本的SQL Server相关的服务的启动状态和最后一次启动的时间,诸如这样的信息. SELECT * FROM sys. ...

  6. SQL调优 - Hints指定索引 解决慢查询案例

    背景 每当交易高峰时期,可能会暴露一些平时无法发现的问题,机遇和挑战并存.下面聊聊最近解决的一个案例,因为执行计划走错导致慢查询,进而引发应用线程阻塞.线程池爆满,最后应用功能瘫痪.如何标本兼治的解决 ...

  7. Sql Server服务远程过程调用失败解决

    Sql Server服务远程过程调用失败解决   问题:       今天SQL数据库登录不上了,然后想启动Sql实例,却发现如下问题(配置环境:win7旗舰版x64,SqlServer2008R2, ...

  8. 【案例分享】SQL job服务连接不到存储引擎

    在SQL Server agent的日志中发现有大量错误的信息,都是关于作业执行失败的日志 从日志的内容来看,是作业执行过程中无法连接到存储引擎, 可奇怪的是,存储引擎就是本机,而且已经正常启动了,截 ...

  9. 解决Sql Server服务远程过程调用失败

    方法一:修复Sql Server: 修复过程中若遇到:重新启动计算机失败, 1.按下组合键[Win]+[R],调出运行窗口 2.输入“regedit”,在注册表左侧目录栏中找到如下位置:“HKEY_L ...

随机推荐

  1. .后面是方法不加引号 ,后面是"名"要加引号

    .后面是方法不加引号 ,后面是"名"要加引号  

  2. jsencrypt加密

    在登录时,前台页面的用户名.密码都是明文传输到后台的,漏洞扫描认为这样子不安全,就想到了前台js加密,后台解密的方法,要用到jsencrypt.js,具体代码如下: 前台页面: <!DOCTYP ...

  3. 12.SolrCloud原理

    转载自http://blog.csdn.net/u011026968/article/details/50336709 内容涉及:SolrCloud的基础知识.架构.索引创建和更新.查询.故障恢复.负 ...

  4. 可以获取JVM信息的一些管理工具类

    一些可以获取JVM信息的java工具类 BufferPoolMXBean.class ClassLoadingMXBean.class CompilationMXBean.class GarbageC ...

  5. QT学习笔记8:QDir类及其用法总结

    简介 QDir类提供了访问系统目录结构及其内容的与平台无关的方式. 头文件:#include <qdir.h> QDir类用来操作路径名及底层文件系统,获取关于目录路径及文件的相关信息,也 ...

  6. 如何为一个类型为Color的属性设置默认值

    最近在研究GDI+的时候,用winform来写自定义控件遇到需要为控件的属性设置默认值,但这个属性的类型是System.Drawing.Color.本文只是总结一下各种设置的方法. Example [ ...

  7. zookeeper&acticemq&redis&tomcat安装

    zookeeper安装  配置hosts  下载 wget http://apache.fayea.com/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar. ...

  8. C++的命名空间的使用

    C++语言引入命名空间(Namespace)这一概念主要是为了避免命名冲突,其关键字为 namespace. 科技发展到如今,一个系统通常都不会仅由一个人来开发完成,不同的人开发同一个系统,不可避免地 ...

  9. cleanCode[1]:有意义的命名

    为什么要有意义的命名: 我们都曾经说过有朝一日再回头清理那些糟糕的代码,然而最终总是弃之不顾.稍后等于永不,我们需要立即行动,写优雅的代码. 写代码的过程中,读占的比例很大,所以首先要让代码易读. 有 ...

  10. 20155234 《网络对抗》Exp 8 Web基础

    基础问答 什么是表单 可以收集用户的信息和反馈意见,是网站管理者与浏览者之间沟通的桥梁. 表单包括两个部分:一部分是HTML源代码用于描述表单(例如,域,标签和用户在页面上看见的按钮),另一部分是脚本 ...