使用邮件发送运行时间久的SQL语句

Navicat如何自动发送邮件 这里写目录标题1. 创建一个SQL并将你的SQL保存为本地查询2. 将你的导出过程保存3. 在自动运行这里新建一个批处理作业3.1 作业加入查询3.2 作业加入导出过程3.3 添加附件(点一下就好)3.4 保存3.5 设置运行时间4. 在高级勾选发送邮件4.1 发送人/收件人...4.2 配置邮件信息 Navicat 12版本自带邮件发送功能,可以将数据库底表直接发送给指定的收件人 1. 创建... 阅读详情
ALTER proc [dbo].[usp_EmailLongRunningSQL]
as
begin
declare@LongRunningQueries AS TABLE
(
  lrqId int IDENTITY(1,1) PRIMARY KEY,
  spid int NULL,
  batch_duration bigintNULL,
  program_namenvarchar(500) NULL,
  hostname nvarchar(100) NULL,
  loginame nvarchar(100) NULL,
  sqltext nvarchar(max) NULL
)
-- variabledeclaratuions
DECLARE @exectime DATETIME
DECLARE @tableHTMLNVARCHAR(MAX)
DECLARE @Handle VARBINARY (85)
DECLARE @SPID INT
DECLARE @sqltext NVARCHAR(MAX)
DECLARE @timeLimitsmallint
declare @Sub as varchar(100)
set @Sub = @@servername + 'Long Running  Query found'
SET @timeLimit=(3*60) -- minutes
 
-- WAITFOR DELAY'00:01:05' -- uncomment for testing (1min:5sec)
 
-- populate thetable with execution info, you don't have to use top 1
INSERT INTO @LongRunningQueries(spid, batch_duration, program_name, hostname, loginame)
 
SELECT top 5
    P.spid
  , convert(bigint,DateDiff(ms,P.last_batch,getdate()))/1000
  , P.program_name
  , P.hostname
  , P.loginame
FROM master.dbo.sysprocesses P WITH(NOLOCK)
WHERE (P.spid > 50)
AND P.status NOT IN('background', 'sleeping')
AND P.cmd NOT IN('AWAITING COMMAND','MIRROR HANDLER','LAZY WRITER','CHECKPOINT SLEEP','RA MANAGER')
AND convert(bigint,DateDiff(ms,P.last_batch,getdate()))/1000 >@timeLImit
 
 
-- use a cursorto update the sqltext for each pid
DECLARE @lrqId int
DECLARE mycur cursor for
  SELECT lrqId from @LongRunningQueries
  ORDER BY lrqId
 
OPEN mycur
FETCH NEXT FROM mycur INTO @lrqId
 
WHILE @@FETCH_STATUS=0
BEGIN
 
  SET @SPID =(SELECT spid from @LongRunningQueries WHERElrqId=@lrqId)
 
  -- get the SQL theSPID is executing
  SELECT@Handle = sql_handleFROM master.dbo.sysprocesses WHEREspid = @SPID
 
  UPDATE@LongRunningQueries
  SET sqltext =(SELECT text FROM sys.dm_exec_sql_text(@Handle))
  WHERE lrqId = @lrqId
 
  FETCH NEXT FROM mycur INTO @lrqId
END
CLOSE mycur
DEALLOCATE mycur
 
DELETE FROM @LongRunningQueries WHEREsqltext IS NULLOR sqltext='' OR  program_nameLIKE '%DatabaseMail%'
 
IF EXISTS(SELECT * FROM@LongRunningQueries WHERE sqltext IS NOT NULL OR sqltext<>'')
BEGIN
-- populate atable with it's info and mail it
SET @tableHTML=
  N'<H1>LongRunning  Querys</H1>' +
  N'<tableborder="1">' +
  N'<tr><th>SPID</th>'+
  N'<th>Duration</th>'+
  N'<th>Application</th>'+
  N'<th>HostName</th>'+
  N'<th>Login</th>'+
  N'<th>SQLExecuting</th></tr>' +
  CAST(( SELECT td = T.spid, '',
  td = T.batch_duration, '',
  td = T.[program_name], '',
  td = T.hostname, '',
  td = T.loginame, '',
  td = T.sqltext, ''
  FROM
  @LongRunningQueries T
  FOR XML PATH('tr'), TYPE
  ) AS NVARCHAR(MAX) ) +
  N'</table>'
 
-- if @tableHTMLis NULL, mail will not get sent
EXEC msdb.dbo.sp_send_dbmail,
@recipients= 'smith.liu@126.com'
@body = @tableHTML,
@body_format = 'HTML';
END
 
end

怎样配置SQL Server发送电子邮件 怎样配置SQL Server发送电子邮件朱二(2004.9 转载请注明作者)  通常大家都知道:SQL Server与Microsoft Exchange Server集成性很好,关于这方面的配置,在SQL Server的联机帮助里有详细的说明,在此不再赘述。然而我们更关心的问题是:在没有Exchange Server的情况下,如何配置SQL Server利用Internet 邮件服务器发 阅读详情

相关推荐

用SQL SERVER 发送邮件详解

<br /><br />SQL Server 并没有内置邮件服务器(Mail Server),它跟我们发送邮件一样,需要用户名和密码通过 SMTP(Simple Message Transfer Protocol)去连接邮件服务器。我们想让 SQL Server 来发送邮件,首先要告诉它用户名称,密码,服务器地址,网络传送协议,邮件服务器的端口。。。等信息。<br />  以下脚本实现了数据库邮件的配置:<br />--下面是具体的配置邮件步骤<br />--在 sa 系统帐户下运行。<br />--<br

Jack的私人博客 1049

用邮件发送运行时间久的SQL语句

ALTER proc [dbo].[usp_EmailLongRunningSQL] as begin declare@LongRunningQueries AS TABLE ( lrqId int IDENTITY(1,1) PRIMARY KEY, spid int NULL, batch_duration bigintNULL, program_namenvar...

java开发指南博客 【转载】 186

SqlServer中如何解决session阻塞问题

简介 对于数据库运维人员来说创建session或者查询时产生问题是常规情况,下面介绍一种很有效且不借助第三方工具的方式来解决类似问题。 最近开始接触运维工作,所以自己总结一些方案便于不懂数据库的同事解决一些不太紧要的数据库问题。类似方法很多理论也很多,我就不做深究,就是简单写一个方案,便于菜鸟使用的。 阻塞理解 在Sql Server 中当一个数据库会话中的事务正锁定一个或多个其他会话事务想要读取或修改的资源时,会产生阻塞(Blocking)。通常短时间的阻塞没有问题,且是较忙的应用程序所需要的。然而,设计糟糕的应用程序会导致长时间的阻塞,这就不必要地锁定了资源,而且阻塞了其他会话读取和更新它

linux 设置邮件提醒,linux 定时邮件提醒

简单实现对Linux服务器的定时监控,可以通过定时执行任务和邮件收发来实现。定时执行任务:crontabcrond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程.crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。crontab命令的使用方法:usage: crontab [-u user] filecrontab [ -u user ...

weixin_28917337的博客 913

OpenBullet2 学习研究2-Conditions条件之KeyCheck的使用

上一节我们学习了如何安装Openbullet2以及如何新建一个配置,最后我们再配置里面新建一个Http的请求块,帮助我们发送了第一个请请求。这一节我们来学习check块。当我们发送请求以后,请求返回的内容是否是我们想要的,或者请求发送正确没有,这个我们怎么判断呢?这个时候就要用到check块了。

958

stm32h743 FM25CL64铁电存储器踩坑记录

调试FRAM经验总结: 1、跑完FRAM读写代码之后,逻分仪发现总线上只有简单、短暂的电平变化,明显不是SPI的通信数据。 (经提醒发现连片选拉高拉低都没有执行到位) 后来发现是因为片选引脚没有初始化,所以直接拉高拉低是无效的。 2、引脚成功初始化后发现CLK、MISO、MOSI数据仍不正常。通过加打印的方式发现跑到HAL_SPI_Transmit中之后还没有执行到写SPI数据寄存器的那一步就return了。 后来经提醒发现: 上图中的指针使用方式错误 后来又发现: 打印出来发现

kuniqiw的博客 3844

Oracle GoldenGate For SQL Server 未提交事务导致MSSQL日志不截断

使用 Oracle GoldenGate 将 SQL Server 表数据同步到 Oracle 中。 偶尔检查MSSQL日志使用情况,发现日志越来越大,17GB了。

1775

记录一次PowerJob使用达梦数据库的配置

记录一次PowerJob使用达梦数据库的配置

早晨阳光一般暖的博客 2159

SQL Server 2005 配置发送邮件

SQL Server 2005 配置发送邮件

qq_43667669的博客 885

SE模块理解+SE-Resnet模块pytorch实现

文章目录SE模块理解SE实现注意力机制原因SE-resnet网络pytorch实现定义residual定义SE模块 SE模块理解 SENet是Squeeze-and-Excitation Networks的简称,拿到了ImageNet2017分类比赛冠军,其效果得到了认可,其提出的SE模块思想简单,易于实现,并且很容易可以加载到现有的网络模型框架中。SENet主要是学习了channel之间的相关性,筛选出了针对通道的注意力,稍微增加了一点计算量,但是效果比较好。 SE模块广泛应用于去噪,去雨方向,利用SE模

qq_42754919的博客 2万+

微信小程序 - 解决支付报错 requestPayment:fail access denied (微信支付提示错误requestPayment:拒绝访问失败,真机运行测试或打包编译上线后报错问题)

微信小程序,微信支付,wx.requestPayment,微信小程序支付报错requestPayment:fail access denied,调不起微信,无法唤起支付弹窗,支付失败,支付权限没问题,小程序上线后支付报错,小程序真机测试支付报错,微信小程序苹果ios系统手机无法支付,小程序发布上线后支付报错,本地测试没问题,拒绝访问失败,小程序调起支付API requestPayment:fail:access denied微信开发者工具正常支付,权限没问题,微信公众平台,依旧报错怎么办,检查了appid都

🏆 前端领域优质创作者 1万+

[SQL Server]发送HTML格式邮件

sql server 发送html格式邮件.

小旭的技术博客 5938

LDRA Testbed(TBrun)软件单元测试_实例讲解(对多次调用的函数打桩)

在之前的文章《LDRA Testbed(TBrun)软件单元测试_操作指南》中,已经讲解了如何使用TBrun进行软件单元测试的基本操作步骤。本篇文章将结合实例进一步讲解被测函数中包含多次调用其他函数时,如何对其打桩来实现测试目的(详细的操作流程本文不再重述,若有不清楚的,可以结合之前的操作指南一起来看)。本文以一个被测函数作为示例,讲解了如何使用Testbed(TBrun)对涉及到多次调用其他函数的被测函数进行单元测试。本文的示例可能比较简单,但是思路、方法和流程都是通用的,希望对大家有所帮助。

文章主要涉及嵌入式软件开发、测试、项目管理等,欢迎交流,共同进步。 1462

SQL Server 存储过程发送邮件

SQL Server 并没有内置邮件服务器(Mail Server),它跟我们发送邮件一样,需要用户名和密码通过 SMTP(Simple Message Transfer Protocol)去连接邮件服务器。我们想让 SQL Server 来发送邮件,首先要告诉它用户名称,密码,服务器地址,网络传送协议,邮件服务器的端口。。。等信息。  以下脚本实现了数据库邮件的配置:--下面是具体的配置邮件步骤

4862

Halcon实例转OpenCVSharp--粘连物体分割与计数(基于距离变换+分水岭算法) (附源码)

本文作者Color Space,文章未经作者允许禁止转载! 本文将介绍OpenCVSharp应用实例--粘连物体分割与计数(基于距离变换+分水岭算法)! 本文使用的OpenCVSharp版本---》v4.5.3。 实现目标:将下图中的硬币分割出来并计算数量。 预期效果图: ...

Color Space的博客 2419

【开发必备插件】iframe嵌套报“拒绝连接请求”的本地解决方法

关键词:iframe 拒绝连接、X-Frame-Options、Chrome 插件、前端调试、Allow X-Frame-Options前几天我在本地项目里调试一个第三方网站的嵌入页面时,遇到了一个非常经典的报错:xxx.com 拒绝了我们的连接请求。熟悉的老前端们一眼就知道——这是。但对于日常开发来说,我们经常需要在本地测试 iframe 嵌套外部页面(比如嵌第三方登录页、支付页、可视化报表系统等)。而线上站点配置了或DENY时,就会直接导致 iframe 加载失败。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 1540

查看sql邮件发送的语句

SELECT [profile_id] ,[name] ,[description] ,[last_mod_datetime] ,[last_mod_user] ,EXEC msdb.dbo.sp_send_dbmail @profile_name = + name + , @recipients = 邮件地址@youkuaiyun.com, @subject = Test,

learningaginlearnin的专栏 563

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

使用SQL SERVER 来自动发送邮件

可以使用SQL SERVER 来发送自动邮件,主要是使用SQL SERVER 的dbo.sp_send_dbmail 存储过程(在msdb数据库中)。 具体步骤如下: Step1: 编写要发送的邮件内容,然后调用sp_send_dbmail 存储过程来发送邮件: declare @tableHTML varchar(max) SET @tableHTML = N'&...

weixin_33875564的博客 412

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

python发送excel表格的邮件,python发送电子邮件

每次生成报表后,根据报表发送频率类型计算下次生成报表的时间,然后每天只处理报表配置表中下次生成报表时间为当天的报表。PROC_BEGIN_TIME:报表生成时间段开始时间,格式:hh24:mi,例如需要每天7:00后才发送邮件,这里就填07:00。本邮件为自动发送,如有疑问,请与×××联系。NEXT_EXEC_TIME_RULE:下一次运行时间(针对发送频率为按规则发送的报表)

2301_81900439的博客 1443

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

SQL Server 2008 R2中配置作业失败后邮件发送通知

SQL Server日常维护中难免会遇到作业失败的情况。失败后自然需要知道它失败了,除了例行检查可以发现出错以外,有一个较实时的监控还是很有必要的。比较专业的监控系统比如SCOM虽然可以监控作业执行情况在出错时进行报警,但对于DBA来说可能可定制性不高,最主要的是负责监控的人员在看到报警后一般都需要立刻联系DBA来解决,对于一些重要性不高的作业失败了,大半夜把你叫起来,感觉肯定是不爽的。SQL S

ctoygl的专栏 8107

使用SMTP在SQL Server中发送自动作业电子邮件通知

When you have automated backup jobs running on your database server, sometimes you forget that they are even running. Then you forget to check to see if they are running successfully, and don’t realiz...

cum88284的博客 2456
上一篇: T-SQL系列之附加数据库
下一篇: 查询 SQL Server 系统目录常见问题
黑暗中的光芒
博客等级 码龄12年 12粉丝 52原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值