Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 sp_send_dbmail - статус отправки сообщения  [new]
REIKRIS
Member

Откуда: Санкт-Петербург
Сообщений: 3
добрый вечер! помогите с решением проблемы плз или ткните носом, где это прочитать, сама не разобралась пока...
делаю рассылку сообщений с помощью sp_send_dbmail, все работает, сообщения доходят. мне необходимо определять в моей хр. процедуре статус отправки сообщения. если выцеплять данные из sysmail_mailtems, то там sent_status и sent_date обновляются не сразу, а через какое-то время. известно ли через какое? или этот параметр (sent_status) можно выцепить где-то еще?
12 май 11, 17:56    [10643573]     Ответить | Цитировать Сообщить модератору
 Re: sp_send_dbmail - статус отправки сообщения  [new]
Начинающий SQL 2008
Member

Откуда:
Сообщений: 438
REIKRIS,

Я пользуюсь этим:
-- Таблица sysmail_mailitems и в зависимости от поля sent_status можно получить:
CASE sent_status  WHEN 0 THEN 'unsent'  WHEN 1 THEN 'sent'  WHEN 3 THEN 'retrying'  ELSE 'failed'  END as sent_status

-- успешно отправленные письма
use msdb
select convert(varchar,sent_date,104) +' '+ convert(varchar,sent_date,108), * 
from sysmail_mailitems
where sent_status = 1 and sent_date > getdate()-8
order by sent_date desc


-- письма, при отправке которых произошел сбой
use msdb
select convert(varchar,sent_date,104) +' '+ convert(varchar,sent_date,108), * 
from sysmail_mailitems 
where sent_status not in (0, 1, 3) 
and sent_date > getdate()-8
order by sent_date desc
12 май 11, 17:59    [10643602]     Ответить | Цитировать Сообщить модератору
 Re: sp_send_dbmail - статус отправки сообщения  [new]
Glory
Member

Откуда:
Сообщений: 104751
REIKRIS
если выцеплять данные из sysmail_mailtems, то там sent_status и sent_date обновляются не сразу, а через какое-то время. известно ли через какое? или этот параметр (sent_status) можно выцепить где-то еще?


Database Mail provides background, or asynchronous, delivery. When you call sp_send_dbmail to send a message, Database Mail adds a request to a Service Broker queue. The stored procedure returns immediately. The external e-mail component receives the request and delivers the e-mail.
12 май 11, 18:00    [10643613]     Ответить | Цитировать Сообщить модератору
 Re: sp_send_dbmail - статус отправки сообщения  [new]
REIKRIS
Member

Откуда: Санкт-Петербург
Сообщений: 3
Начинающий SQL 2008,

спасибо за ответ! да, я этой таблицей и пользуюсь. проблема моя как раз в том, что поля там не сразу же обновляются, ну статус проставляется, а через какое-то время. а объемы рассылки большие - каждые пять минут,так что мне надо знать, что есть ошибка, а что нет как можно быстрее.
12 май 11, 18:15    [10643712]     Ответить | Цитировать Сообщить модератору
 Re: sp_send_dbmail - статус отправки сообщения  [new]
REIKRIS
Member

Откуда: Санкт-Петербург
Сообщений: 3
Glory,

спасибо что указали :-) пойду обходным путем тогда!
12 май 11, 18:16    [10643716]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить