можно ли заставить Sql Server 2008 отправлять электронное письмо при запросе RAISEERROR выбрасывается .. или, по крайней мере, когда возникает ошибка RAISEERROR с заранее заданным кодом или кодами ошибки?
Вы связываете «предупреждение» агента SQL для обнаружения ошибки, которое затем отправляет электронное письмо «оператору» или выполняет задание.
Ты используешь sp_add_alert
но основная информация здесь: Мониторинг и реакция на события
Да, вы можете установить блок try / catch и отправить электронное письмо с помощью почты базы данных. Это будет примерно так:
BEGIN TRY
[...statement(s)...]
END TRY
BEGIN CATCH
EXEC sp_send_dbmail @profile_name='MyProfile',
@recipients='recipient@mydomain.com',
@subject='Query Error',
@body='An error occurred during execution of a statement.'
END CATCH
Вы можете использовать @@ Error в блоке CATCH, чтобы определить конкретный уровень возникшей ошибки.
Подробнее о Заявление TRY / CATCH
Вот больше о Почта базы данных SQL Server 2008