Condividi tramite


sp_notify_operator (Transact-SQL)

Data aggiornamento: 17 luglio 2006

Invia un messaggio di posta elettronica a un operatore tramite Posta elettronica database.

Sintassi

sp_notify_operator
    [ @profile_name = ] 'profilename' ,
    [ @id = ] id ,
    [ @name = ] 'name' ,
    [ @subject = ] 'subject' ,
        [ @body = ] 'message' ,
    [ @file_attachments = ] 'attachment'
    [ @mail_database = ] 'mail_host_database'

Argomenti

  • [ @profile_name= ] 'profilename'
    Nome del profilo di Posta elettronica database da utilizzare per inviare il messaggio. profilename è di tipo nvarchar(128). Se non si specifica l'argomento profilename, viene utilizzato il profilo di Posta elettronica database predefinito.
  • [ @id= ] id
    Identificatore dell'operatore a cui inviare il messaggio. id è di tipo int e il valore predefinito è NULL. È necessario specificare l'argomento id o l'argomento name.
  • [ @name= ] 'name'
    Nome dell'operatore a cui inviare il messaggio. name è di tipo nvarchar(128) e il valore predefinito è NULL. È necessario specificare l'argomento id o l'argomento name.

    [!NOTA] Affinché un operatore possa ricevere messaggi, è necessario innanzitutto definire il relativo indirizzo di posta elettronica.

  • [ @subject= ] 'subject'
    Oggetto del messaggio di posta elettronica. subject è di tipo nvarchar(256) e non prevede alcun valore predefinito.
  • [ @body= ] 'message'
    Corpo del messaggio di posta elettronica. message è di tipo nvarchar(max) e non prevede alcun valore predefinito.
  • [ @file_attachments= ] 'attachment'
    Nome del file da allegare al messaggio di posta elettronica. attachment è di tipo nvarchar(512) e non prevede alcun valore predefinito.
  • [ @mail_database= ] 'mail_host_database'
    Specifica il nome del computer host. mail_host_database è di tipo nvarchar(128). Se non si specifica alcun database per mail_host_database, viene utilizzato il database msdb per impostazione predefinita.

Osservazioni

Invia il messaggio specificato all'indirizzo di posta elettronica dell'operatore. Se non è stato configurato un indirizzo di posta elettronica per l'operatore, viene restituito un errore.

Per poter inviare una notifica a un operatore, è necessario innanzitutto configurare Posta elettronica database e un database host della posta elettronica. Per ulteriori informazioni, vedere Procedure per Posta elettronica database.

Autorizzazioni

Per impostazione predefinita, questa stored procedure può essere eseguita dai membri del ruolo predefinito del server sysadmin. Gli altri utenti devono appartenere a uno dei seguenti ruoli predefiniti del database di SQL Server Agent nel database msdb:

  • SQLAgentUserRole
  • SQLAgentReaderRole
  • SQLAgentOperatorRole

Per informazioni sulle autorizzazioni di questi ruoli, vedere Ruoli di database predefiniti di SQL Server Agent.

Valori restituiti

0 (esito positivo) o 1 (esito negativo)

Esempi

Nell'esempio seguente viene inviato un messaggio di notifica all'operatore François Ajenstat tramite il profilo AdventureWorks Administrator di Posta elettronica database. L'oggetto del messaggio di posta elettronica è Test Notification. Il messaggio di posta elettronica contiene la frase, "This is a test of notification via e-mail."

USE msdb ;
GO

EXEC dbo.sp_notify_operator
   @profile_name = N'AdventureWorks Administrator',
   @name = N'François Ajenstat',
   @subject = N'Test Notification',
   @body = N'This is a test of notification via e-mail.' ;
GO

Vedere anche

Riferimento

sp_add_operator (Transact-SQL)
sp_help_operator (Transact-SQL)
sp_delete_operator (Transact-SQL)

Guida in linea e informazioni

Assistenza su SQL Server 2005

Cronologia modifiche

Versione Cronologia

17 luglio 2006

Contenuto modificato
  • Updated argument name @profilename to @profile_name, in the example.

14 aprile 2006

Contenuto modificato:
  • Aggiornamento del nome dell'argomento @profilename in @profile_name e modifica del tipo di dati da sysname a nvarchar(128).
  • Modifica del tipo di dati per @name da sysname a nvarchar(128).