|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
8.2. Настройка электронной почты в SQL Server 20058.2.1. Обзор возможностей SQL Server 2005 для работы с электронной почтойDatabase Mail (SQLiMail) и SQLMail, отправка электронной почты по протоколам SMTP и MAPI в SQL Server 2005 В реальных задачах SQL Server очень часто приходится взаимодействовать с серверами электронной почты. Обычно сервер электронной почты используется для автоматической отправки сообщений сервером SQL Server. Например, в рамках скрипта Transact-SQL можно выполнить запрос и сразу отправить по электронной почте результаты его выполнения. Можно настроить триггер для таблицы базы данных так, чтобы при внесении изменении в эту таблицу информация об изменениях отправлялась по электронной почте. По желанию разработчика SQL Server 2005 в ходе выполнения скрипта может обратиться к почтовому ящику и воспользоваться информацией из содержащихся в нем сообщений. Электронная почта очень активно используется и при автоматизации административных операций. Например, отчеты о выполнении заданий, информация о срабатывании предупреждений может отправляться по электронной почте на адреса операторов. В SQL Server 2005 с электронной почтой можно работать тремя способами: q средствами Database Mail (другое название — SQLiMail) — это новая подсистема для работы с электронной почтой, которой не было в предыдущих версиях SQL Server. Она ориентирована на использование протокола SMTP. Это наиболее функциональный и рекомендуемый способ работы с электронной почтой; q средствами SQLMail — та же подсистема, что была и в предыдущих версиях SQL Server. Microsoft обещает исключить эту подсистему в будущих версиях SQL Server, поэтому в новых разработках ориентироваться на нее не стоит. В этой подсистеме используются протокол MAPI и почтовый профиль Outlook; q средствами операционной системы и нестандартными возможностями SQL Server. Например, электронную почту можно отправлять при помощи объекта CDO.Message и хранимых процедур SP_OACreate, SP_OASetProperty, SP_OAMethod. Другая возможность — использовать утилиту для отправки электронной почты из командной строки и запускать ее при помощи расширенной хранимой процедуры xp_cmdshell. Этот способ сложнее, но в некоторых ситуациях он может оказаться более удобным. Отметим еще несколько моментов. Настройку электронной почты для служб SQL Server и SQL Server Agent вам придется производить отдельно. Чаще всего для этих служб используются одни и те же настройки, а также один и тот же почтовый ящик. Однако вы вполне можете использовать разные настройки (и даже разные подсистемы) и разные почтовые ящики. Далее мы рассмотрим настройку каждой подсистемы как для использования SQL Server, так и SQL Server Agent. Если вы собираетесь производить "массовые рассылки" электронной почты, то, возможно, есть смысл использовать специальный компонент SQL Server 2005, который называется Notification Services. Обычное применение этого компонента — уведомлять подписчиков, если в какой-то таблице произошли изменения. Например, появился новый продукт в продаже, или изменились цены на акции, или в футбольном матче забили гол — в общем, произошло любое событие, о котором вас попросили известить. В SQL Server 2000 Notification Services нужно было скачивать с сайта Microsoft и установить отдельно. В SQL Server 2005 он входят в состав компонентов сервера.
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
Получить учебные материалы по этому курсу |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||