如何利用SQL Server来发送电子发邮件?
来源:asp之家 发布时间:2010-01-01 15:37:00
在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']
参数说明:
序号 | 参 数 | 说 明 | 备 注 |
1 | @recipients | 收件人。多人中间用逗号分开 | 必需 |
2 | @message | 要发送的信息 |
|
3 | @query | 确定执行并依附邮件的有效查询 | 除触发器中的插入表及删除表外,此查询能引用任何对象 |
4 | @attachments | 附件 |
|
5 | @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]]
参数说明:
序号 | 参 数 | 说 明 | 备 注 |
1 | @originator | 发件人 |
|
2 | @subject | 主题 |
|
3 | @message | 信息 |
|
4 | @recipients | 收件人 |
|
5 | @skip_tytes | 读取邮件信息时跳过的字节数 | 用于顺序获取邮件信息段 |
6 | @msg_length | 确定所有信息的长度 | 通常与5一起处理长信息 |
五、处理下一个邮件:
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']


猜你喜欢
- 一、变量1.变量Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。在 Python 中,变量就是变
- 如下所示:<div id="app"> <h1>我是直接写在构造器里的模板1</h1&g
- 参考: Smashing magzine翻译+整理: Demix当完成一项前端的工作之后,许多人都会忘记该项目的结构与细节。然而代码并不是马
- 在用jupyter notebook写python代码的过程中会产生很多变量,而关闭后或者restart jupyter kernel后所有
- 压缩数据库文件可以提高数据库的性能,但是有些时候在压缩数据库时,系统会提醒用户该数据库不能压缩。如果在Access数据库中删除数据库对象,或
- 下面我们以论坛排行榜举例说明:<% @ LANGUAGE="VBSCRIPT" %&
- 1. Express简介express是一个基于node.js平台的极简,灵活的web应用开发框架,它提供一系列强大的特征,帮助你创建各种w
- 如下所示:#!/usr/bin/env python3.5import psutilimport mysql.connectorimport
- 提示: 利用单表简单查询和多表高级查询技能,并且根据查询要求灵活使用内连接查询、外连接查询或子查询等。同时还利用内连接查询的两种格式、三种外
- 本文实例讲述了Python json模块dumps、loads操作。分享给大家供大家参考,具体如下:python中json数据的使用。dum
- 查询效率分析:子查询为确保消除重复值,必须为外部查询的每个结果都处理嵌套查询。在这种情况下可以考虑用联接查询来取代。如果要用子查询,那就用E
- 目录一、基本使用与逻辑二、特性三、错误对象四、较好的catch和throw策略五、Promise的错误处理六、性能损耗一、基本使用与逻辑使用
- 本文实例讲述了Python使用scrapy采集数据时为每个请求随机分配user-agent的方法。分享给大家供大家参考。具体分析如下:通过这
- 最近在学pytorch,在使用数据分批训练时在导入数据是使用了 DataLoader 在参数 num_workers的设置上使程序出现运行没
- 函数原型与参数详解OpenCV提供了cv.Canny()方法,该方法将输入的原始图像转换为边缘图像。该方法的原型为:cv.Canny(ima
- 经过漫长的等待,近日,微软终于发布了Silverlight 2正式版的发布不仅让微软有了更多和Flash叫板的机会,同时也将RIA(Rich
- 前言很多人都认为人脸识别是一项非常难以实现的工作,看到名字就害怕,然后心怀忐忑到网上一搜,看到网上N页的教程立马就放弃了。这些人里包括曾经的
- 使用base64对图片的二进制进行编码并用ajax进行显示有时候我们需要动态的将图片的二进制在页面上进行显示,如我们需要弄一个验证码的功能,
- 面包屑导航可以将浏览过的页面记录下来,方便很快速的跳转回某一个页面,本文介绍了几种自己封装面包屑组件的方式。一、为什么需要面包屑?当网页进行
- 一. 背景公司又要做一个新项目,是一个合作型项目,我们公司出web展示服务,合作伙伴线下提供展示数据。而且本次项目是数据统计展示为主要功能,