SQL Server同Exchange Server结合应用--SQL Mail2

2016-01-29 17:05 4 1 收藏

SQL Server同Exchange Server结合应用--SQL Mail2,SQL Server同Exchange Server结合应用--SQL Mail2

【 tulaoshi.com - SQLServer 】

本段文章节选自铁道出版社新出的《用BackOffice建立Intranet/Extranet应用》一书(现已在各书店有售。如海淀图书城、西单图书大厦等。外地或者需要送货上门的读者可以到www.wanbook.com.cn或www.e-bookshop.com.cn上在线购买。本书书号为ISBN7113039448)。本书详尽地讲述了如何使用微软BackOffice系列产品来组建Intranet/Extranet应用。通过它您将掌握NT的安装和设置、使用IIS建立Web站点、通过ILS建立网络会议系统、用Exchange建立企业的邮件和协作系统、用SQL Server建立Web数据库应用、用Proxy Server建立同Internet安全可靠的连接、用Media Server建立网络电视台/广播站、用Chart server建立功能强大的聊天室、用Site Server建立个性化的邮件列表和分析网站的访问情况、用Commerce Server建立B2B或B2C的电子商务网站。此外本书还对网络的安全性进行了讨论,从而指导您建立一个更为健壮和安全的网络应用。阅读本书之后,您将发现实现丰富多彩的网络应用原来这样简单……
绝对原创,欢迎转载。但请务必保留以上文字。

6.7.2.    通过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,''199

来源:https://www.tulaoshi.com/n/20160129/1500285.html

延伸阅读
阻塞定义 当来自应用程序的第一个连接控制锁而第二个连接需要相冲突的锁类型时,将发生阻塞。其结果是强制第二个连接等待,而在第一个连接上阻塞。不管是来自同一应用程序还是另外一台客户机上单独的应用程序,一个连接都可以阻塞另一个连接。 说明:一些需要锁保护的操作可能不明显,例如系统目录表和索引上的锁。大多数阻塞...
标签: SQLServer
    通常,你需要获得当前日期和计算一些其他的日期,例如,你的程序可能需要判断一个月的第一天或者最后一天。你们大部分人大概都知道怎样把日期进行分割(年、月、日等),然后仅仅用分割出来的年、月、日等放在几个函数中计算出自己所需要的日期!在这篇文章里,我将告诉你如何使用DATEADD和DATEDIFF函数来计算出在你的程序...
标签: SQLServer
[导读: 各种大型数据库所采用的锁的基本理论是一致的,但在具体实现上各有差别。SQL Server更强调由系统来管理锁。在用户有SQL请求时,系统分析请求,自动在满足锁定条件和系统性能之间为数据库加上适当的锁,同时系统在运行期间常常自动进行优化处理,实行动态加锁。对于一般的用户而言,通过系统的自动锁定管理机制基本可以满足使用要求,但如...
标签: SQLServer
在实际的工作中,尤其是在生产环境里边,SQL语句的优化问题十分的重要,它对数据库的性能的提升也起着显著的作用.我们总是在抱怨机器的性能问题,总是在抱怨并发访问所带来的琐问题,但是如果我们对没一条SQL语句进行优化,尽管不能说可以解决全部问题,但是至少可以解决大部分问题. 1.Top排序问题. 我们经常要对表某个字段进行排序,然后取前N名.所...
标签: SQLServer
  本段文章节选自铁道出版社新出的《用BackOffice建立Intranet/Extranet应用》一书(现已在海淀图书城有售)。本书详尽地讲述了如何使用微软BackOffice系列产品来组建Intranet/Extranet应用。通过它您将掌握NT的安装和设置、使用IIS建立Web站点、通过ILS建立网络会议系统、用Exchange建立企业的邮件和协作系统、用SQL Server建立Web数据库...

经验教程

69

收藏

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