Share via


sysmail_add_profileaccount_sp (Transact-SQL)

Fügt einem Profil für die Datenbank-E-Mail ein Konto für die Datenbank-E-Mail hinzu. Führen Sie sysmail_add_profileaccount_sp aus, nachdem ein Datenbankkonto mithilfe von sysmail_add_account_sp (Transact-SQL) und ein Datenbankprofil mithilfe von sysmail_add_profile_sp (Transact-SQL) erstellt wurde.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

sysmail_add_profileaccount_sp { [ @profile_id = ] profile_id | [ @profile_name = ] 'profile_name' } ,
    { [ @account_id = ] account_id | [ @account_name = ] 'account_name' }
    [ , [ @sequence_number = ] sequence_number ]

Argumente

  • [ @profile_id = ] profile_id
    Die Profil-ID, der das Konto hinzugefügt wird. profile_id ist vom Datentyp int und hat den Standardwert NULL. Es muss entweder profile_id oder profile_name angegeben werden.

  • [ @profile_name = ] 'profile_name'
    Der Profilname, dem das Konto hinzugefügt wird. profile_name ist vom Datentyp sysname und hat den Standardwert NULL. Es muss entweder profile_id oder profile_name angegeben werden.

  • [ @account_id = ] account_id
    Die Konto-ID, die dem Profil hinzugefügt werden soll. account_id ist vom Datentyp int und hat den Standardwert NULL. Es muss entweder account_id oder account_name angegeben werden.

  • [ @account_name = ] 'account_name'
    Der Name des Kontos, das dem Profil hinzugefügt werden soll. account_name ist vom Datentyp sysname und hat den Standardwert NULL. Es muss entweder account_id oder account_name angegeben werden.

  • [ @sequence_number = ] sequence_number
    Die Sequenznummer des Kontos im Profil. sequence_number ist vom Datentyp int und hat den Standardwert NULL. Mithilfe der Sequenznummer wird die Reihenfolge festgelegt, in der Konten im Profil verwendet werden.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Hinweise

Sowohl das Profil als auch das Konto müssen bereits vorhanden sein. Andernfalls gibt die gespeicherte Prozedur einen Fehler zurück.

Beachten Sie, dass diese gespeicherte Prozedur nicht die Sequenznummer eines Kontos ändert, das bereits dem angegebenen Profil zugeordnet ist. Weitere Informationen zum Aktualisieren der Sequenznummer eines Kontos finden Sie unter sysmail_update_profileaccount_sp (Transact-SQL).

Über die Sequenznummer wird die Reihenfolge festgelegt, in der Konten im Profil der Datenbank-E-Mail verwendet werden. Für eine neue E-Mail-Nachricht beginnt die Datenbank-E-Mail mit dem Konto mit der niedrigsten Sequenznummer. Wenn dieses Konto einen Fehler erzeugt, verwendet die Datenbank-E-Mail das Konto mit der nächsthöheren Sequenznummer usw. bis entweder die Datenbank-E-Mail die Nachricht erfolgreich sendet oder das Konto mit der höchsten Sequenznummer einen Fehler erzeugt. Wenn das Konto mit der höchsten Sequenznummer einen Fehler erzeugt, unterbricht die Datenbank-E-Mail die Versuche zum Senden der E-Mail für den Zeitraum, der im AccountRetryDelay-Parameter von sysmail_configure_sp konfiguriert ist. Danach wird das Senden der E-Mail erneut gestartet, wobei mit der niedrigsten Sequenznummer begonnen wird. Verwenden Sie den AccountRetryAttempts-Parameter von sysmail_configure_sp, um zu konfigurieren, wie oft der externe Mailprozess versuchen soll, die E-Mail-Nachricht mithilfe der einzelnen Konten im angegebenen Profil zu senden.

Wenn mehrere Konten mit der gleichen Sequenznummer vorhanden sind, verwendet die Datenbank-E-Mail nur eines dieser Konten für eine bestimmte E-Mail-Nachricht. In diesem Fall kann die Datenbank-E-Mail nicht sicherstellen, welches der Konten für diese Sequenznummer verwendet wird oder dass für die einzelnen Nachrichten jeweils dasselbe Konto verwendet wird.

Die gespeicherte Prozedur sysmail_add_profileaccount_sp befindet sich in der msdb-Datenbank mit dem dbo-Schema als Besitzer. Handelt es sich bei der aktuellen Datenbank nicht um msdb, muss die Prozedur mit einem dreiteiligen Namen ausgeführt werden.

Berechtigungen

Standardmäßig verfügen Mitglieder der festen Serverrolle sysadmin über die Ausführungsberechtigungen.

Beispiele

Im folgenden Beispiel wird das Profil AdventureWorks Administrator dem Konto Audit Account zugeordnet. Das Konto für die Überwachung weist die Sequenznummer 1 auf.

EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
    @profile_name = 'AdventureWorks Administrator',
    @account_name = 'Audit Account',
    @sequence_number = 1 ;