Перейти к содержимому

mail

Как узнать кому отправлялись письма из mssql

msdb.dbo.sysmail_allitems - просмотр всех сообщений;
msdb.dbo.sysmail_sentitems – просмотр только отправленных сообщений;
msdb.dbo.sysmail_unsentitems - просмотр неотправленных сообщений;
msdb.dbo.sysmail_faileditems – просмотр сообщений с ошибками;
msdb.dbo.sysmail_event_log – журнал работы компонента Database Mail.
Например, для просмотра всех отправленных сообщений можно использовать следующий запрос:
SELECT sent_date AS [Дата отправки письма], 
	   send_request_user AS [Кем отправлено письмо],
	   recipients AS [Кому отправлено письмо], 
	   subject AS [Тема письма], 
	   body AS [Текст письма], 
	   file_attachments AS [Отправленные файлы], 
	   query AS [SQL запрос]
 FROM msdb.dbo.sysmail_sentitems

 

Хранимая процедура отправки сообщения

USE [master]
GO

/****** Object:  StoredProcedure [dbo].[rkur_send_job_status]    Script Date: 08/18/2015 10:08:58 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

-- =============================================
-- Author:                    Ruslan Kurianov
-- Create date: 2013-07-17
-- Description:          agent mssql job email
-- version: 0.3
-- =============================================
CREATE PROCEDURE [dbo].[rkur_send_job_status]

-- статус OK или ERROR
@job_status nvarchar(5) = 'OK',

-- имя задания в агенте mssql
@job_name nvarchar(256),

-- краткое описание задания,понятное человеку
@job_desc nvarchar(256),

-- Имя профиля в MSSQL, с которого надлежит отослать сообщение
@dbmail_profile_name sysname = N'atrans',

-- Список с разделителями (точки с запятыми), содержащий адреса электронной почты, по которым будут рассылаться сообщения
@dbmail_@recipients varchar(max) 
Читать далее