仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 939|回复: 6
打印 上一主题 下一主题

[学习教程] 公布SQL 2005 发送邮件 存储历程

[复制链接]
飘灵儿 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 20:10:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
最近由权威调查机构Evans数据公司进行的一项调查显示,MySQL在过去两年已经获得了25%的市场份额。该调查公司还预测,相比其他的开源数据库和闭源数据库。--execP_TYAN_SERVICE_SITE_CHECK

ALTERPRocedure[dbo].[P_TYAN_SERVICE_SITE_CHECK]
As

Declare
@countint,
@objectint,
@hrint,
@rcint,
@outputvarchar(400),
@descriptionvarchar(400),
@sourcevarchar(400),
@sendervarchar(50),
@sendernamevarchar(50),
@serveraddressvarchar(255),
@recipientvarchar(255),
@recipientNamevarchar(255),
@subjectvarchar(255),
@mailbodyvarchar(8000)

--主动邮件begin
select@count=count(*)from[dbo].[TYAN_SERVICE_SITE]whereareaisnotnullandcust_nameisnotnullandship_locationisnotnullandcountryisnotnullandcust_noisnotnulland(CUST_TYPEisnullorSERVICE_SITEisnull)
if(@count!=0)
begin

Set@sender=AutoMail
Set@sendername=AutoMail
Set@serveraddress=10.98.0.211
--这里是收件人地点,这个变量仿佛没用,间接在前面加。就看上面-------
Set@recipient=

--题目----------------
Set@subject=Mail

-------这里为你要显现的数据Begin---------------------


Set@mailbody=N<html><head>

</head><body>
<pstyle="margin-bottom:12.0pt"><fontsize=1face=Arial><span
lang=EN-USstyle="font-size:9.0pt;font-family:Arial">DearSir:<o:p></o:p></span></font></p>
<pstyle="margin-bottom:12.0pt"><fontsize=1face=Arial><span
lang=EN-USstyle="font-size:9.0pt;font-family:Arial">PleasemaintainthesenewTyan
ServiceSite:<o:p></o:p></span></font></p>
<tablestyle="font-family:trebuchetms;font-size:10pt;border-collapse:collapse"cellpadding="2"bordercolor="black"border=1>
<trbgcolor=orangealign=center>
<td>AREA</td>
<td>COUNTRY</td>
<td>CUSTNO</td>
<td>CUSTNAME</td>
</tr>

--<tdalign=left>DeptName</td>
Declare
@strvarchar(8000),
@AREAnvarchar(50),
@COUNTRYvarchar(50),
@CUST_NOvarchar(50),
@CUST_NAMEvarchar(50),
@vcountint
begin
set@vcount=1
set@str=
Declarec_atCursor
FOR

selectdistinctarea,country,cust_no,cust_namefrom[dbo].[TYAN_SERVICE_SITE]whereareaisnotnullandcust_nameisnotnullandship_locationisnotnullandcountryisnotnullandcust_noisnotnulland(CUST_TYPEisnullorSERVICE_SITEisnull)

OPENc_at
FETCHNEXTFROMc_atINTO@AREA,@COUNTRY,@CUST_NO,@CUST_NAME
WHILE(@@FETCH_STATUS=0)
BEGIN
set@str=@str+<tralign=center>
set@str=@str+<td>+@AREA+</td>
set@str=@str+<td>+@COUNTRY+</td>
set@str=@str+<td>+@CUST_NO+</td>
set@str=@str+<td>+@CUST_NAME+</td>
set@vcount=@vcount+1
FETCHNEXTFROMc_atINTO@AREA,@COUNTRY,@CUST_NO,@CUST_NAME
END

-------这里为你要显现的数据end---------------------
CLOSEc_at
DEALLOCATEc_at
end
Set@mailbody=@mailbody+@str+</table></body></html>
Exec@hr=sp_OACreatejmail.message,@objectOUTPUT
Exec@hr=sp_OASetProperty@object,Charset,BIG5

--@recipient--你的收件人邮箱地点---------------------------------------------------
Exec@hr=sp_OAMethod@object,AddRecipient,NULL,yourmailaddress

--Exec@hr=sp_OAMethod@object,AddRecipientBCC,NULL,yourmailaddress

Exec@hr=sp_OASetProperty@object,Subject,@subject
Exec@hr=sp_OAsetProperty@object,HTMLBody,@mailbody
Exec@hr=sp_OAsetProperty@object,Priority,1

IfNot@senderisnull
Exec@hr=sp_OASetProperty@object,From,@sender

IfNot@sendernameisnull
Exec@hr=sp_OASetProperty@object,FromName,@sendername

--主动邮件begin
Exec@hr=sp_OAMethod@object,Send,null,@serveraddress
Exec@hr=sp_OAGetErrorInfo@object,@sourceOUTPUT,@descriptionOUTPUT

if(@hr=0)
Begin
Set@output=e`源:+@source
Print@output
Select@output=e`形貌:+@description
Print@output
End
Else
Begin
Print@取e`Y掉。
Return
End

--放JMail.Messageο
EXEC@hr=sp_OADestroy@object
--IF@hr0
--BEGIN
--EXECsp_OAGetErrorInfo@object
--RETURN
--END
end

下面存储历程完成、

附开启OleAutomationProcedures

---开启OleAutomationProcedures----
sp_configureshowadvancedoptions,1;
GO
RECONFIGURE;
GO
sp_configureOleAutomationProcedures,1;
GO
RECONFIGURE;
GO

人人依据本人的数据稍作修正便可以用了,发送邮件一样平常与sqlserveragent功课一同用,准时发送邮件。



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/liaolian9948/archive/2009/12/31/5110313.aspx“MySQL实际上是一个数据库家族,你可以从选择一个并将其配置成可以满足你的大多数情况,”开源顾问公司Ethiqa的总裁如此表示,“因此,你可以在开始的时候选择一个小巧的版本产品,以后再根据需要来对其进行性能或大小上的扩展。”
因胸联盟 该用户已被删除
沙发
发表于 2015-1-18 18:23:09 | 只看该作者
这一点很好的加强了profiler的功能。但是提到profiler提醒大家注意一点。windows2003要安装sp1补丁才能启动profiler。否则点击没有反应。
若相依 该用户已被删除
板凳
发表于 2015-1-23 07:13:37 | 只看该作者
原来公司用过MYSQL自己也只是建个表写个SQL
地板
发表于 2015-1-31 15:37:00 | 只看该作者
微软对CLR作了大篇幅的宣传,这是因为数据库产品终于融入.net体系中。最开始我们也是狂喜,感觉对象数据库的一些概念可以实现了。
小妖女 该用户已被删除
5#
发表于 2015-3-6 07:43:56 | 只看该作者
SP4是一个累积性的ServicePack,包含自以前的ServicePack发布以来所有的修补程序(包括MS03-031安全公告)。
分手快乐 该用户已被删除
6#
发表于 2015-3-12 22:36:52 | 只看该作者
同样会为索引视图等应用带来麻烦。看看行级和事务级的快照数据放在tempdb中,就能感觉到目前架构的尴尬。
变相怪杰 该用户已被删除
7#
发表于 2015-3-20 04:47:41 | 只看该作者
分区表效率问题肯定是大家关心的问题。在我的试验中,如果按照分区字段进行的查询(过滤)效率会高于未分区表的相同语句。但是如果按照非分区字段进行查询,效率会低于未分区表的相同语句。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-16 11:13

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表