2007-10-08

利用SQL Server 2005数据库邮件发送电子邮件

来源: 开发者在线 作者:Tim chapman 评论 0 条
 

随着技术的不断进步,我们需要知道在你的信息系统发生了什么,为了满足这种日益增长的需求要求有更高级的方法。

能够迅速和简单地了解形势,尤其是了解潜在的问题,这对于我们非常重要。微软不断的生产新产品来传递这种能力,在SQL Server 2005中可获得的一些数据库非凡选项有:查询通知、通知服务、服务代理和数据库邮件。

数据库邮件——SQL Server 2005中的一个新型电子邮件发送平台。在这篇文章的结尾,为了确保我们的数据库邮件设置正常工作,我发送了一封试验邮件。在本文中,我将基于该邮件来探讨在SQL Server 2005中发送数据库邮件的一些高级功能。

数据库邮件选项

SQL Server 2005数据库邮件为发送电子邮件信息提供了多种选项。这些选项包括:发送附件,设置敏感度和重要性,还包括查询结果,用HTML格式发送电子邮件信息。

要在SQL Server 2005中发送电子邮件,你需要列表A中的脚本来建立一个包含一些数据的表格,以便稍后能够使用查询结果选项。脚本建立一个表格并加载一些试验数据。

IF EXISTS(SELECT name from master..sysdatabases where name = 'SalesDB')
DROP DATABASE SalesDB

CREATE DATABASE SalesDB;

USE SALESDB;
CREATE TABLE SalesHistory
(
SaleID INT IDENTITY(1,1),
Product VARCHAR(30),
SaleDate SMALLDATETIME,
SalePrice MONEY
)

DECLARE @i SMALLINT

SET @i = 1

WHILE (@i <=100)

BEGIN
INSERT INTO SalesHistory
(Product, SaleDate, SalePrice)
VALUES
('Computer', DATEADD(mm, @i, '3/11/1919'), DATEPART(ms, GETDATE()) (@i 57) )


INSERT INTO SalesHistory
(Product, SaleDate, SalePrice)
VALUES
('BigScreen', DATEADD(mm, @i, '3/11/1927'), DATEPART(ms, GETDATE()) (@i 13) )


INSERT INTO SalesHistory
(Product, SaleDate, SalePrice)
VALUES
('PoolTable', DATEADD(mm, @i, '3/11/1908'), DATEPART(ms, GETDATE()) (@i 29) )


SET @i = @i 1

END

发送附件

通过电子邮件发送文件附件的能力对工作效率来说是十分重要的。下面的脚本将会发送一封电子邮件,其中包含文件名为FileAttachment.txt的附件,给附件存储于我的C盘驱动器上。

你需要确保文件的存在,这样发送过程就不会发生错误。

EXEC msdb.dbo.sp_send_dbmail
@recipients=N'chapman.tim@gmail.com',
@body='Message Body',
@subject ='Message Subject',
@profile_name ='Database-mailProfile',
@file_attachments ='C://FileAttachment.txt';

敏感度和重要性

通常需要将一封邮件标记为敏感或重要,以使得收件人知道这些信息需要小心保护。下面的脚本将会发送一封邮件,敏感度为私人,重要性为高级。此外,脚本将会复制邮件地址yourname@yourdomain.com到信件中。

EXEC msdb.dbo.sp_send_dbmail
@recipients=N'chapman.tim@gmail.com',
@body='Message Body',
@sensitivity ='Personal',
@importance ='High',
@copy_recipients ='chapman.tim@gmail.com',
@subject ='Message Subject',
@profile_name ='Database-mailProfile';
共2页: 上一页 1 [2] 下一页

(本文仅表明作者个人观点,不代表本站及其管理员立场.) 推荐 收藏 投稿 打印 返回 关闭
上一篇:如何建立SQL Server 2005数据库邮件  
下一篇:确定几个SQL Server栏中的最大值
    评论加载中…
 推荐文章
     

网站首页  -  网站地图 -   站长论坛  -  网站投稿  -    -  网站管理
Copyright © 2008 芜湖站长站 All Rights Reserved 皖ICP备07500611号