Главная Обратная связь

Дисциплины:






Хранимые процедуры для работы с SQLMail



Для работы с SQLMail используются те же хранимые процедуры, что и в SQL Server 2000:

· xp_sendmail — предназначена для отправки сообщений электронной почты, например:
EXEC master.dbo.xp_sendmail @recipients='administrator@nwtraders.msft',
@subject='Заголовок сообщения', @message='Текст сообщения';

EXEC master.dbo.xp_sendmail @recipients='administrator@nwtraders.msft',
@query = 'select * from Table1' ;

· xp_findnextmsg — возвращает уникальный идентификатор сообщения, которое пришло по времени последним;

· xp_readmail — возможность считать сообщение из почтового ящика на Exchange Server. Принимает номер сообщения, который обычно возвращает хранимая процедура xp_findnextmsg;

· xp_deletemail — соответственно, удаляет сообщение по его номеру;

· sp_proccessmail — возможность автоматизировать работу с электронной почтой. Эта хранимая процедура обращается к почтовому ящику на Exchange Server и пытается выполнить текст для каждого непрочитанного сообщения как запрос к SQL Server. Результаты выполнения запроса отправляются в качестве ответа на сообщение (в виде вложенного текстового файла).

Применение объекта CDO.Message для работы с электронной почтой SQL Server и SQL Server Agent

Помимо Database Mail и SQLMail, на предприятиях очень часто используются альтернативные средства для работы с электронной почтой служб SQL Server (из кода Transact-SQL) и SQL Server Agent (в этапах заданий).

Применение объекта CDO.Message очень удобно по следующим причинам:

· библиотека CDO есть на любом компьютере под управлением Windows 2000\ XP\ 2003;

· не нужно производить никаких настроек для подсистем электронной почты на SQL Server;

· при помощи этого объекта можно подключаться к любому SMTP-совместимому почтовому серверу.

Пример кода для использования этого объекта на языке VBScript:

'Объявляем переменную для нашего сообщения

Dim oMessage

'Создаем объект CDO.Message

Set oMessage = CreateObject("CDO.Message")

'Настраиваем параметры сообщения

'Кому

oMessage.To = "Administrator@nwtraders.msft"

'От кого

oMessage.From = "Administrator@nwtraders.msft"

'Заголовок сообщения

oMessage.Subject = "Проверка"

'Текст сообщения (может быть текстовым или в формате HTML)

oMessage.TextBody = "Текст письма"

'Добавляем вложение

oMessage.AddAttachment "C:\1.txt"

'Отправляем сообщение

OMessage.Send

 

Данный вариант с параметрами по умолчанию будет работать только в том случае, если на вашем компьютере установлен Exchange Server 2000 или 2003 или установлен IIS с настроенной службой SMTP, так как физически сообщение будет помещено в каталог по умолчанию C:\Inetpub\mailroot\Pickup, откуда его и должна забрать служба Exchange Server или IIS.



Настройка возможности отправки сообщений через любой почтовый сервер

Для возможности отправки сообщений через любой почтовый сервер, который поддерживает протокол SMTP, необходимо настроить параметры отправки:





sdamzavas.net - 2017 год. Все права принадлежат их авторам! В случае нарушение авторского права, обращайтесь по форме обратной связи...