当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL Server:SQL mai的配置和使用,你有所研究吗?

MSSQL
系统存储过程sp_MSforeachtable和sp_MSforeachdb使用说明
一些文件未注册导致mssql表文件无法找开的解决方法
用sql获取某字符串中的数字部分的语句
SQL 判断字段类型语句
MSSQL 生成日期列表代码
MSSQL 计算两个日期相差的工作天数的语句
SqlServer 实用操作小技巧集合
sql中all,any,some用法
最常用的SQL语句
SQL语法 分隔符理解小结
sql 服务器知识
隐藏在SQLServer 字段中的超诡异字符解决过程
将备份数据还原到数据库的步骤
SQL Server 高速缓存依赖分析
SQL 多表连接查询实现语句
sql convert函数使用小结
sqlserver2005 行列转换实现方法
跨服务器查询导入数据的sql语句
返回SQL执行时间的存储过程
MSSQL ISQL命令详解

MSSQL 中的 SQL Server:SQL mai的配置和使用,你有所研究吗?


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 57 ::
收藏到网摘: n/a

最近公司开发网站,要实现系统自动发邮件的功能,自己研究了一下,查了很多资料,发现实现此功能很简单,整理了一下材料,拿出来共享下,希望对大家有所帮助。

步骤

下面是我配置SQL mail 的实现过程:分7个步骤。

 1.为了使用SQL mail,首先你的服务器上得有SMTP服务,我没有安装win2000 server自带的SMTP,而是用imail6.04SMTP,感觉比较稳定,功能也比较强。

  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设置好了,测试一下吧!怎么样成功了吧!其实在开发网站中,这是一个很常见的技术点,只是我之前的工作没有接触过(是不是很菜),如果大家有什么不懂,或没有成功,可以到论坛里发帖子,大家一起讨论,肯定事半功倍。