Vorgehensweise: Erstellen von privaten Datenbank-Mailprofilen (Transact-SQL)

Mithilfe des Assistenten zum Konfigurieren von Datenbank-E-Mail bzw. den gespeicherten Prozeduren für Datenbank-E-Mail können Sie private Datenbank-Mailprofile erstellen, die das Versenden von SMTP-Mail (Simple Mail Transfer Protocol) ermöglichen. Ein privates Profil kann von einem Benutzer oder einer Rolle verwendet werden. Durch Gewähren des Rollenzugriffs auf Profile wird eine leichter zu verwaltende Architektur geschaffen.

So erstellen Sie ein Datenbank-Mailprofil mithilfe von Transact-SQL

  1. Erstellen Sie mindestens ein Datenbank-E-Mailkonto für das Profil. Weitere Informationen zum Erstellen von Konten für Datenbank-E-Mail finden Sie unter Vorgehensweise: Erstellen von Konten für Datenbank-E-Mail (Transact-SQL).

  2. Führen Sie die gespeicherte Prozedur msdb.dbo.sysmail_add_profile_sp aus, um das Profil zu erstellen, und geben Sie Folgendes an:

    • Den Namen des zu erstellenden Profils.

    • Eine optionale Beschreibung des Profils.

  3. Führen Sie die Prozedur msdb.dbo.sysmail_add_profileaccount_sp für jedes Konto aus, das dem Profil hinzugefügt werden soll.

  4. Gewähren Sie jeder Datenbankrolle bzw. allen Benutzern, die mithilfe dieses Profils E-Mails versenden, den Zugriff auf das Profil, indem Sie msdb.sysmail_add_principalprofile_sp ausführen.

Beispiel

Im folgenden Beispiel wird ein Datenbank-E-Mail-Konto und ein Datenbank-E-Mail-Profil erstellt. Im Beispiel wird dem Profil anschließend das Konto hinzugefügt und der DBMailUsers-Datenbankrolle in der msdb-Datenbank der Zugriff auf das Profil gewährt.

-- Create a Database Mail account
EXECUTE msdb.dbo.sysmail_add_account_sp
    @account_name = 'AdventureWorks2008R2 Administrator',
    @description = 'Mail account for administrative e-mail.',
    @email_address = 'dba@Adventure-Works.com',
    @replyto_address = 'danw@Adventure-Works.com',
    @display_name = 'AdventureWorks2008R2 Automated Mailer',
    @mailserver_name = 'smtp.Adventure-Works.com' ;

-- Create a Database Mail profile
EXECUTE msdb.dbo.sysmail_add_profile_sp
    @profile_name = 'AdventureWorks2008R2 Administrator Profile',
    @description = 'Profile used for administrative mail.' ;

-- Add the account to the profile
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
    @profile_name = 'AdventureWorks2008R2 Administrator Profile',
    @account_name = 'AdventureWorks2008R2 Administrator',
    @sequence_number =1 ;

-- Grant access to the profile to the DBMailUsers role
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
    @profile_name = 'AdventureWorks2008R2 Administrator Profile',
    @principal_name = 'ApplicationUser',
    @is_default = 1 ;