Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Aktualisieren eines Datenbank-E-Mail-Kontos in SQL Server (T-SQL)

In SQL Server können Sie den sysmail_update_account_sp verwenden gespeicherte Prozedur in der msdb Datenbank, um Ihre vorhandenen Datenbank-E-Mail-Konten mit T-SQL zu aktualisieren.

Aktualisieren Sie die Kontodetails

Sie können die Details eines Kontos basierend auf seinem Namen aktualisieren.

Das heißt, wenn Sie den Kontonamen nicht ändern müssen, müssen Sie die Konto-ID nicht angeben – solange Sie den Namen angeben.

Beispiel:

EXECUTE msdb.dbo.sysmail_update_account_sp  
    @account_name = 'DB Admin',  
    @description = 'Mail account for admin emails.',  
    @email_address = '[email protected]',  
    @replyto_address = '[email protected]',  
    @display_name = 'DB Automated Mailer',  
    @mailserver_name = 'smtp.example.com',
    @port = 25;

Aktualisieren Sie den Kontonamen

Wenn sowohl der Kontoname als auch die Konto-ID angegeben sind, ändert die gespeicherte Prozedur den Kontonamen zusätzlich zum Aktualisieren der Informationen für das Konto.

EXECUTE msdb.dbo.sysmail_update_account_sp
    @account_id = 1,
    @account_name = 'Updated DB Admin',  
    @description = 'Mail account for admin emails.',  
    @email_address = '[email protected]',  
    @replyto_address = '[email protected]',  
    @display_name = 'DB Automated Mailer',  
    @mailserver_name = 'smtp.example.com',
    @port = 25;

In diesem Beispiel habe ich den Namen und verschiedene andere Details des Kontos aktualisiert.

Die Syntax

Die offizielle Syntax lautet wie folgt:

sysmail_update_account_sp [ [ @account_id = ] account_id ] [ , ] [ [ @account_name = ] 'account_name' ] ,  
    [ @email_address = ] 'email_address' ,   
    [ @display_name = ] 'display_name' ,   
    [ @replyto_address = ] 'replyto_address' ,  
    [ @description = ] 'description' ,   
    [ @mailserver_name = ] 'server_name' ,   
    [ @mailserver_type = ] 'server_type' ,   
    [ @port = ] port_number ,   
    [ @timeout = ] 'timeout' ,  
    [ @username = ] 'username' ,  
    [ @password = ] 'password' ,  
    [ @use_default_credentials = ] use_default_credentials ,  
    [ @enable_ssl = ] enable_ssl

Eine ausführliche Erläuterung der einzelnen Argumente finden Sie in der Microsoft-Dokumentation.

Beachten Sie, dass die Datei sysmail_update_account_sp gespeicherte Prozedur befindet sich in der msdb Datenbank und gehört dbo Schema. Daher müssen Sie eine dreiteilige Benennung verwenden, wenn Sie sie von außerhalb der msdb ausführen Datenbank.

Sie können auch sysmail_add_account_sp verwenden gespeicherte Prozedur zum Erstellen eines neuen Datenbank-E-Mail-Kontos.