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

MSSQL
正确配置和使用SQL mail
关于DTS导入导出丢失默认值等对象
TOP N 和SET ROWCOUNT N 哪个更快
如何在视图中使用ORDER BY短语
如何区分大小写比较?
如何将作为字符串保存的IP地址变为二进制数值?
如何随机选取n条记录或者对记录作随机排序?
SQL脚本生成的一些BUG
如何使Microsoft SQL Server的日志文件不会增大?
利用事务日志来恢复Update、Delete误操作引起的数据丢
关于MSSQL占用过多内存的问题
SQL Server非正常删除日志文件(ldf)恢复方法
处理孤立用户的存储过程
1069错误(由于登录失败而无法启动服务)解决方法
SQL Server 7.0数据库的六种数据移动方法
利用SQL Server的扩展属性象access一样显示列的注释
Stored Procedure(存储过程)编写经验和优化措施
更新你的联机丛书
关于SQL Server中几个未公布的访问注册表的扩展存储过
存储过程替换text,ntext列中的字符串

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 129 ::
收藏到网摘: 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设置好了,测试一下吧!怎么样成功了吧!其实在开发网站中,这是一个很常见的技术点,只是我之前的工作没有接触过(是不是很菜),如果大家有什么不懂,或没有成功,可以到论坛里发帖子,大家一起讨论,肯定事半功倍。