Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Mettre à jour un compte de messagerie de base de données dans SQL Server (T-SQL)

Dans SQL Server, vous pouvez utiliser le sysmail_update_account_sp procédure stockée dans msdb database pour mettre à jour vos comptes de messagerie de base de données existants avec T-SQL.

Mettre à jour les détails du compte

Vous pouvez mettre à jour les détails d'un compte en fonction de son nom.

Autrement dit, si vous n'avez pas besoin de modifier le nom du compte, vous n'avez pas besoin de fournir l'ID du compte, tant que vous fournissez le nom.

Exemple :

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;

Mettre à jour le nom du compte

Lorsque le nom de compte et l'ID de compte sont spécifiés, la procédure stockée modifie le nom de compte en plus de mettre à jour les informations du compte.

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;

Dans cet exemple, j'ai mis à jour le nom et divers autres détails du compte.

La syntaxe

La syntaxe officielle ressemble à ceci :

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

Consultez la documentation de Microsoft pour une explication détaillée de chaque argument.

Notez que le sysmail_update_account_sp la procédure stockée est dans le msdb base de données, et elle appartient à dbo schéma. Par conséquent, vous devrez utiliser un nommage en trois parties si vous l'exécutez depuis l'extérieur de msdb base de données.

Vous pouvez également utiliser le sysmail_add_account_sp procédure stockée pour créer un nouveau compte de messagerie de base de données.