使用SQL Mail收发和自动处理邮件中的扩展存储过程简介

使用SQL Mail收发和自动处理邮件中的扩展存储过程简介

SQL SERVER提供了通过EXCHANGE或OUTLOOK收发邮件的扩展存储过程,下面将这几个过程简单的介绍一下。

一、启动SQL Mail

xp_startmail @user,@password

@user和@password都是可选的

也可打开Enterprise Manager中的Support Services,在SQL Mail上单击右键打开右键菜单,然后按Start来启动

二、停止SQL Mail

xp_stopmail

也可用上述方法中的菜单里的Stop来停止

三、发送邮件

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 查询所用的数据库,默认为缺省数据库

四、阅读邮件收件箱中的邮件

xp_readmail [[@msg_id =] 'message_number> [, [@type =] 'type' [OUTPUT]]
[,[@peek =] 'peek>
[,[@suppress_attach =] 'suppress_attach>
[,[@originator =] 'sender' OUTPUT]
[,[@subject =] 'subject' OUTPUT]
[,[@message =] 'message' OUTPUT]
[,[@recipients =] 'recipients [;...n]' OUTPUT]
[,[@cc_list =] 'copy_recipients [;...n]' OUTPUT]
[,[@bcc_list =] 'blind_copy_recipients [;...n]' OUTPUT]
[,[@date_received =] 'date' OUTPUT]
[,[@unread =] 'unread_value' OUTPUT]
[,[@attachments =] 'attachments [;...n]' OUTPUT])
[,[@skip_bytes =] bytes_to_skip OUTPUT]
[,[@msg_length =] length_in_bytes OUTPUT]
[,[@originator_address =] 'sender_address' OUTPUT]]

参数说明:

参数 说明
@originator 发件人
@subject 主题
@message 信息
@recipients 收件人
@skip_tytes 读取邮件信息时跳过的字节数,用于顺序获取邮件信息段。
@msg_length 确定所有信息的长度,通常与@skip_bytes一起处理长信息

五、顺序处理下一个邮件

xp_findnextmsg [[@msg_id =] 'message_number' [OUTPUT]]
[,[@type =] type]
[,[@unread_only =] 'unread_value> )

六、删除邮件

xp_deletemail {'message_number'}

如果不指定邮件编号则删除收件箱中的所有邮件

七、自动处理邮件

sp_processmail [[@subject =] 'subject>
[,[@filetype =] 'filetype>
[,[@separator =] 'separator>
[,[@set_user =] 'user>
[,[@dbuse =] 'dbname>

(0)

相关推荐

  • 使用SQL Mail收发和自动处理邮件中的扩展存储过程简介

    使用SQL Mail收发和自动处理邮件中的扩展存储过程简介 SQL SERVER提供了通过EXCHANGE或OUTLOOK收发邮件的扩展存储过程,下面将这几个过程简单的介绍一下. 一.启动SQL Mail xp_startmail @user,@password @user和@password都是可选的 也可打开Enterprise Manager中的Support Services,在SQL Mail上单击右键打开右键菜单,然后按Start来启动 二.停止SQL Mail xp_stopmai

  • SQL Server中通过扩展存储过程实现数据库的远程备份与恢复

    本文通过实例解析了 SQL Server 数据库扩展存储过程,实现远程备份与恢复的方法和步骤实例说明: 环境:win2k+sqlserver 2K+查询分析器 SQL SERVER服务实例名称:mainserver 需要备份的数据库名称: msdb 本地机器名称(Client端):david 本地用户:zf 密码:123 本地域名:domain 本地提供备份需求的文件夹:e: est 第一步: 建立共享文件夹 在程序代码中调用(或者CMD窗口) net share test=e: est 或者用

  • 简单介绍C# 中的扩展方法

    扩展方法是C#3.0引入的新特性,使用它,可以在不修改某一类的代码的情况下,实现该类方法的扩展. 为一个类添加扩展方法,需要三个要素: 1.扩展方法所在的类为静态类 2.扩展方法本身要为静态方法 3.扩展方法的第一个参数要用关键字this,指向要扩展的类 下面请看一个实例: //静态类 public static class TestExtensionM { //静态方法 public static int ExtensionInt(this int s) //this关键字 { return

  • asp.net中ADO SQL数据库 笔记汇总 持续更新中

    ADO连接数据库 1)获取连接字符串 方式一: 记住连接字符串 connectionString=" Integrated Security=True; server=. ; database=DBName" 方式二:在visual studio中,点击"视图"à服务资源管理器à右击左侧的"数据连接",选择"添加连接"à服务名: 为一个点.选择数据库名,然后点击"高级",然后复制底部的连接字符串 2)在we

  • C#将Sql数据保存到Excel文件中的方法

    本文实例讲述了C#将Sql数据保存到Excel文件中的方法,非常有实用价值.分享给大家供大家参考借鉴之用. 具体功能代码如下: public string ExportExcel( DataSet ds,string saveFileName) { try { if (ds == null) return "数据库为空"; bool fileSaved = false; Microsoft.Office.Interop.Excel.Application xlApp = new Mic

  • SQL Server LocalDB 在 ASP.NET中的应用介绍

    我相信世界总是会向更好的方向发展,今年的维也纳新年音乐会没有往年的明星级指挥,但是它通过回归奥地利的本质,以更传统的聚合法则,让过往的艺术家们一代代创造的灿烂,在新的指挥手中,迸发出更深邃的音节.在此,也祝大家新年快乐.如同交响乐一样,构造软件系统不一定必须某个强大的明星驱动,我们站在历代ADO.NET的肩膀上,更好地回归到SQL Server的核心开发:SQL Server LocalDB 在 ASP.NET中的应用. 使用SQL Server LocalDB的优势: 快速部署完整的SQL S

  • python邮件中附加文字、html、图片、附件实现方法

    关于python写邮件各种功能我们已经介绍过很多,大家有兴趣可以参考: python自动化发送邮件实例讲解 python实现发送QQ邮件(可加附件) 下面我们看下本次介绍的全部代码实例 import smtplib from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from email.mime.image import MIMEImage from email.header i

  • SQL Server中函数、存储过程与触发器的用法

    一.函数 函数分为(1)系统函数,(2)自定义函数. 其中自定义函数又可以分为(1)标量值函数(返回单个值),(2)表值函数(返回查询结果) 本文主要介绍自定义函数的使用. (1)编写一个函数求该银行的金额总和 create function GetSumCardMoney() returns money as begin declare @AllMOney money select @AllMOney = (select SUM(CardMoney) from BankCard) return

  • SQLServer中使用扩展事件获取Session级别的等待信息及SQLServer 2016中Session级别等待信息的增强

    什么是等待 简单说明一下什么是等待: 当应用程序对SQL Server发起一个Session请求的时候,这个Session请求在数据库中执行的过程中会申请其所需要的资源, 比如可能会申请内存资源,表上的锁资源,物理IO资源,网络资源等等, 如果当前Session运行过程中需要申请的某些资源无法立即得到满足,就会产生等待. SQL Server会以不用的方式来展现这个等待信息,比活动Session的等待信息,实例级的等待信息等等. SQL Server中,等待事件是作为DBA进行TroubleSh

  • asp.net中调用oracle存储过程的方法

    存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它. 存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程. 不多说了,本文通过两种方法介绍asp.net中调用oracle存储过程的方法,具体内容请看下面代码. 调用oracle存储过程方法一: ORACLE代码 CREATE OR REP

随机推荐