• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

SQLServer同ExchangeServer结合应用SQLMail2

发布: 2007-6-21 12:06 | 作者:   | 来源:   | 查看: 14次 | 进入软件测试论坛讨论

领测软件测试网

   
  6.7.3. 通过SQL Mial发送邮件
  SQL Mail会在两种情况之下发送邮件。一种是当系统发生警报时间时,会向预先为警报定义的操作员发送警报信息邮件(我们将在下一节中对此问题做详细的讨论)。另一种是通过扩展存贮过程xp_sendmail来发送邮件。

如果我们想要在SQL Server应用中完成发送邮件功能的话,就需要使用此存贮过程。它的语法结构如下:
  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:为邮件指定的接收人,可以同时将邮件发给多个用户。各用户的邮件地址用分号分割。此参数必须指定,而其他参数都为可选参数。
  ■ message:邮件中的信息,其最长不得超过7990字节。
  ■ query:一段SQL语句,其结果集将附在邮件之中。它的长度不得超过8000字节。
  ■ attachments:用来指定一个文件作为被发送邮件的附件。
  ■ copy_recipients:用来指定此邮件抄送到哪些用户。即我们在邮件程序中常见的CC to:功能。
  ■ blind_copy_recipients:功能同上个参数。不过不同的是,邮件之中将不会包含这些收件人的地址信息。即我们在邮件程序中常见的密送BCC to:功能。
  ■ subject:邮件的标题。如果不指明,默认为"SQL Server Message"。
  ■ type:指定邮件的MAPI类型。默认为空值。
  ■ attach_results:指明是否将SQL语句的执行结果作为一个附件进行发送。其取值为TRUE或FALSE。默认值为FALSE。
  ■ no_output:指明此发送将不返回信息到SQL 客户端。其取值为TRUE或FALSE。默认值为FALSE。
  ■ no_header:指明不将SQL语句执行结果中的字段名包含在邮件之中。其取值为TRUE或FALSE。默认值为FALSE。
  ■ width:指定SQL语句执行结果的行宽。省缺宽度为80个字符这样可能会造成一些结果行被从中间截断的现象。将行宽设大一些可以有效地防止此现象。
  ■ separator:指定SQL语句的执行结果进行字段分割的字符。这样会方便一些电子表格应用程序读取结果集。
  ■ echo_error:指明是否包含系统错误信息。其取值为TRUE或FALSE。默认值为TRUE。
  ■ set_user:指明执行SQL语句的用户,默认为guest。此参数所指定的用户应该在master数据库中存在。
  ■ dbuse:指明SQL语句在哪个数据库上执行,默认为set_user指定的用户的省缺数据库。
  下面的例子将把1999年12月1日的所有刊载的文章的题目发送给邮件地址为zw@cbb.com的用户。
  exec master.dbo.xp_sendmail
  @recipients ='zw@cbb.com',
  @message ='1999年12月1日刊载文章题目' ,
  @query = 'select timu
  from test.dbo.gaojian
  where datepart(yy,riqi)=datepart(yy,convert(datetime,''1999-12-01')) and datepart(dy,riqi)=datepart(dy,convert(datetime,''1999-12-01''))
  order by banmian' ,
  @subject ='test',
  @attach_results = 'true',
  @width =60,
  @separator = ',' ,
  @set_user ='dbo',
  @dbuse = 'test'
  zw用户收到的邮件附件文件的内容如下:
  Timu ,
  ----------------------------------------------------------------------------------------
  测试信息1 ,
  测试信息2 ,
  测试信息3 ,

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网