极乐门资源网 Design By www.ioogu.com

今天遇到一个问题,原有生产系统正在健康运行,现需要监控一张数据表,当增加数据的时候,给管理员发送邮件。

领到这个需求后,有同事提供方案:写触发器触发外部应用程序。这是个大胆的想法啊,从来没写过这样的触发器。

以下是参考文章:

第一种方法: 触发器调用外部程序。 xp_cmdshell

https://www.jb51.net/article/90714.htm 第一篇提供的方法是需要开启xp_cmdshell

先开启xp_cmdshell

打开外围应用配置器—>

功能的外围应用配置器—>

实例名\Database Engine\xp_cmdshell—>

启用

然后可以调用外部程序:Exec xp_cmdshell 'c:\calc.exe' 。

第二种方法:将插入的值传给.bat 。同样使用调用外部程序的 xp_cmdshell 的权限

http://www.sqlparty.com/%E9%A2%98%E7%82%BC/2013/08/05/e5-a6-82-e4-bd-95-e5-9c-a8-e6-9f-90-e8-a1-a8-e6-96-b0-e6-8f-92-e5-85-a5-e6-95-b0-e6-8d-ae-e6-97-b6-e8-a7-a6-e5-8f-91-e6-89-a7-e8-a1-8c-e5-a4-96-e9-83-a8-e7-a8-8b-e5-ba-8f-ef-bc-9f.html

其实第二种方法可以归为第一种。

下面说说第三种方法:

SQL servere CLR

这种方法可以利用VS给sql server 写存储过程和触发器。打开了VS不愁写代码给管理员发email。

第四种方法:

SQL server Management -->Database Mail

开启Database Mail 之后,配制好发邮件的设置,直接写触发器就可以把插入的内容通过sql server 发送出来了。

Create TRIGGER tri_email 
ON [dbo].[ImageGalleries]
AFTER insert
AS
BEGIN
if exists(select * from inserted)
begin
declare @content nvarchar(max)
select @content=i.Name+'|'+i.ImagePath from inserted i;
exec msdb.dbo.sp_send_dbmail @profile_name='SQLProfile',
@recipients=243594541@qq.com',
@subject='sql server send email by trigger',
@body=@content
end
END
GO 

这种方法是最直接最简便的方法。

标签:
sql,改变触发,sql,server发送邮件

极乐门资源网 Design By www.ioogu.com
极乐门资源网 免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
极乐门资源网 Design By www.ioogu.com

评论“SQL server 表数据改变触发发送邮件的方法”

暂无SQL server 表数据改变触发发送邮件的方法的评论...

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。