SQL Server之SQL mail的配置和使用


SQL #sql server #sql mail2012-10-23 17:19
步骤
下面是我配置SQL mail 的实现过程:分7个步骤。
 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权限。

相关文章

粤ICP备11097351号-1