msdb.dbo.sp_send_dbmail Неверные получатели автоматически удаляются
Просматривая документацию по адресу http://technet.microsoft.com/en-us/library/ms190307.aspx (и еще немного прибегая к помощи), я не могу найти никакой информации о следующем поведении:
Я пытаюсь отправить электронную почту базы данных в Microsoft SQL 2008R2, используя следующую команду
EXEC msdb.dbo.sp_send_dbmail @profile_name = 'Profilename', @recipients='valid@gmail.com; unvalid_gmailcom', @body = 'Testing', @body_format = 'HTML', @subject = 'Testing';
Очевидная проблема заключается в том, что unvalid_gmailcom не является действительным адресом электронной почты. Возможно, я ожидал получить какую-то ошибку или предупреждение, но SQL просто удаляет неверный адрес и отправляет почту оставшимся (если есть) получателям.
Есть ли способ узнать, когда SQL это делает, или это единственный способ обезопасить код, чтобы этого не произошло?
1 ответ
Вы не получите ошибку, но результаты (неудача и успех) сохраняются в msdb. Для этого доступны следующие представления: sysmail_allitems, sysmail_sentitems, sysmail_unsentitems, sysmail_faileditems в msdb.
Больше здесь: