sp_notify_operator (Transact-SQL)
Sendet mithilfe der Datenbank-E-Mail eine E-Mail-Nachricht an den Operator.
Syntax
sp_notify_operator
[ @profile_name = ] 'profilename' ,
[ @id = ] id ,
[ @name = ] 'name' ,
[ @subject = ] 'subject' ,
[ @body = ] 'message' ,
[ @file_attachments = ] 'attachment'
[ @mail_database = ] 'mail_host_database'
Argumente
[ @profile_name= ] 'profilename'
Der Name des Datenbank-E-Mail-Profils, das zum Senden der Nachricht verwendet wird. profilename ist vom Datentyp nvarchar(128). Falls profilename nicht angegeben ist, wird das standardmäßige Datenbank-E-Mail-Profil verwendet.[ @id= ] id
Die ID des Operators, an den die Nachricht gesendet wird. id ist vom Datentyp int und hat den Standardwert NULL. Es muss entweder id oder name angegeben werden.[ @name= ] 'name'
Der Name des Operators, an den die Nachricht gesendet wird. name ist ein Wert vom Datentyp nvarchar(128). Der Standardwert ist NULL. Es muss entweder id oder name angegeben werden.Hinweis Zum Empfangen von Nachrichten muss eine E-Mail-Adresse für den Operator definiert sein.
[ @subject= ] 'subject'
Der Betreff der E-Mail-Nachricht. subject ist ein Wert vom Datentyp nvarchar(256) und hat keinen Standardwert.[ @body= ] 'message'
Der Text der E-Mail-Nachricht. message ist ein Wert vom Datentyp nvarchar(max) und hat keinen Standardwert.[ @file_attachments= ] 'attachment'
Der Name der Datei, die an die E-Mail-Nachricht angefügt wird. attachment ist ein Wert vom Datentyp nvarchar(512) und hat keinen Standardwert.[ @mail_database= ] 'mail_host_database'
Gibt den Namen der Mailhostdatenbank an. mail_host_database ist ein Wert vom Datentyp nvarchar(128). Falls mail_host_database nicht angegeben ist, wird standardmäßig die msdb-Datenbank verwendet.
Rückgabecodewerte
0 (Erfolg) oder 1 (Fehler)
Hinweise
Sendet die Nachricht an die angegebene E-Mail-Adresse des angegebenen Operators. Falls für den Operator keine E-Mail-Adresse konfiguriert ist, wird ein Fehler zurückgegeben.
Die Datenbank-E-Mail und eine Mailhostdatenbank müssen konfiguriert werden, bevor eine Benachrichtigung an einen Operator gesendet werden kann. Weitere Informationen finden Sie unter Vorgehensweisen für Datenbank-E-Mail.
Berechtigungen
Standardmäßig können nur Mitglieder der festen Serverrolle sysadmin diese gespeicherte Prozedur ausführen. Anderen Benutzern muss eine der folgenden festen Datenbankrollen des SQL Server-Agents in der msdb-Datenbank zugewiesen werden:
SQLAgentUserRole
SQLAgentReaderRole
SQLAgentOperatorRole
Weitere Informationen zu den Berechtigungen dieser Rollen finden Sie unter Feste Datenbankrollen des SQL Server-Agents.
Beispiele
Im folgenden Beispiel wird eine Benachrichtigungs-E-Mail an den Operator François Ajenstat mit dem Datenbank-E-Mail-Profil AdventureWorks Administrator gesendet. Der Betreff der E-Mail lautet Test Notification. Die E-Mail-Nachricht enthält den Satz "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