正确配置和使用SQL mail

2016-01-29 16:15 8 1 收藏

正确配置和使用SQL mail,正确配置和使用SQL mail

【 tulaoshi.com - SQLServer 】

  前段时间费了九牛二虎之力,终于搞掂了SQL mail的配置与使用。
_Rambo要我整理出来有关的文档大家共享。
我就把我配置SQL mail的过程描述一遍。

我用SQL mail主要是要完成这样的功能:
用户在网上注册后,系统将随机产生的密码发送到用户登记的Email
用户在论坛的帖子有回复时将内容发送到用户的Email
因为上述过程都是在存储过程中完成的,所以避免了前台程序对参数的
传输处理,也不需要再用第三方的组件完成,感觉比较方便。

1.为了使用SQL mail,首先你的服务器上得有SMTP服务,我没有安装win2000 server自带的SMTP,而是用imail6.04的SMTP,感觉比较稳定,功能也比较强。
2.安装一个邮件系统,我安装了outLook 2000,我发现在配置邮件profile时,如果
不安装outLook而是用别的第三方程序,win2k中文server版在控制面板中就找不到“邮件”一项.
3.安装完outlook后再刷新控制面板,就会找到“邮件”一项,双击进行邮件的配置,为配置文件起一个名字(假设为myProfile),以便以后SQL mail使用,在该配置文件中设置各项属性。
4.启动outlook(设置为用myProfile作为默认的配置文件),测试进行收发邮件,确认outlook工作正常。
5.用当前的域帐户启动SQL server,在企业管理器的支持服务中,点击SQL mail的属性,可以看到在配置文件选择中,出现了刚才定义的myProfile配置文件(你也可以定义多个profile),选择这个配置文件进行测试,SQL将返回成功开始和结束一个MAPI会话的信息,如果出现错误或是没有找到邮件配置文件,那一定是你启动SQL server用的帐号有问题
6.现在你就可以在查询分析器中用XP_sendmail这个扩展存储过程发送SQL mail了,格式如下:
    xp_sendmail {[@recipients =] 'recipients [;...n]'}
        [,][@message =] 'message']
        [,][@query =] 'query']
        [,][@attachments =] attachments]
        [,][@copy_recipients =] 'copy_recipients [;...n]'
        [,][@blind_copy_recipients =] 'blind_copy_recipients [;...n]'
        [,][@subject =] 'subject']
        [,[@type =] 'type']
        [,][@attach_results =] 'attach_value']
        [,][@no_output =] 'output_value']
        [,][@no_header =] 'header_value']
        [,][@width =] width]
        [,][@separator =] 'separator']
        [,][@echo_error =] 'echo_value']
        [,][@set_user =] 'user']
        [,][@dbuse =] 'database']

    其中@recipients是必需的

    参数说明:

参数 说明
@recipients 收件人,中间用逗号分开
@message 要发送的信息
@query 确定执行并依附邮件的有效查询,除触发器中的插入表及删除表外,此查询能引用任何对象
@attachments 附件
@copy_recipients 抄送
@blind_copy_recipients 密送
@subject 标题
@attach_results 指定查询结果做为附件发送
@no_header 不发送查询结果的列名
@set_user 查询联接的用户名,默认为Guset
@dbuse 查询所用的数据库,默认为缺省数据库


7.不过,如果是在web应用中使用SQL mail,还有一些问题要解决:首先,就是应用程序中连接数据库的帐号,我在网站程序中的数据库连接是使用UDL文件,帐号为DbGuest,这是一个普通帐户,所以还必须在master库的扩展存储过程找到XP_sendmail,并在其属性中增加DbGuest这个用户,并选择EXEC权限。
好了,现在设置完毕,运行网站程序,测试用户注册,几乎没有什么延迟,我测试用的邮箱中就收到了这封SQL mail发出的Email:  
"谢谢你的注册,你的用户名是 [心歌],密码是 123456789,建议你首次登录后修改密码"

大功告成!看起来很简单的过程,却折腾了我一个星期!希望你能比我顺利.

不过,现在虽然能用SQLmail发送附件,附加数据库查询结果,但是我还没有发现有什么办法用SQLmail发送html格式的邮件,如果你知道,请一定告诉我哟!

 

来源:http://www.tulaoshi.com/n/20160129/1498036.html

延伸阅读
标签: SQLServer
SQL Server开发人员和管理员们都需要了解可用特性,只要他们安装了SQL Server 2005。这个最新的SQL Server 版本包含了一个经过改善的安全模型,可以对数据库服务器和里面的数据库对象进行更好的控制。在这篇文章中,我们将会重点讨论两个新的工具:表面区域配置工具和SQL 浏览器服务。我们还会讨论SQL Server配置管理器,虽然从SQL Server2000以...
在应用系统中,尤其在联机事务处理系统中,对数据查询及处理速度已成为衡量应用系统成败的标准。而采用索引来加快数据处理速度也成为广大数据库用户所接受的优化方法。 在良好的数据库设计基础上,能有效地使用索引是SQL Server取得高性能的基础,SQL Server采用基于代价的优化模型,它对每一个提交的有关表的查询,决定是否使用索引或...
标签: SQLServer
  SQL Server服务器的配置选项属于那种人们了解较少且经常误用的选项。当一个技术支持人员要求你按照某种方式调整一个选项、而另一个技术支持人员却要求你按照另一种完全对立的方式调整同一个选项时,你可能对这些选项的真正含义感到困惑。有关这些选项的资料很缺乏,至少可以说不够详细和清楚。在SQL Server 2000中,Microsoft减少了几...
标签: 生活常识
如何正确选择和使用牙膏   刷牙是我们每天都要做的事,你真的懂得如何选择牙膏吗?使用牙膏的知识知多少。 牙膏不要挤太多 由于牙膏一般无使用须知、适用人群和用量之类的说明书,而且电视广告中,经常出现牙膏挤满牙刷的镜头。但实际上,每次刷牙只需少量就足够。 牙膏中广泛使用的化学物质月桂醇硫酸钠被认为可能...
标签: 生活常识
如何正确使用和保养筷子 日常生活中,大部分家庭吃饭时都是混用筷子的。这样筷子使用频率高,且长期用水洗涤,导致筷子的含水量特别高,很容易成为细菌生长的温床。若长期使用这样的筷子,就很容易染上消化道疾病。所以筷子的使用与保养与健康密不可分。那么如何正确使用与保养筷子? 值得一提的是,新买的筷子需要去除筷子在生产和运...

经验教程

240

收藏

32
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部