sql >> Database >  >> RDS >> Sqlserver

Maak een database-e-mailaccount in SQL Server (T-SQL)

Als u Database Mail instelt om e-mails in SQL Server te verzenden, moet u ten minste één Database Mail-account hebben.

U kunt Database Mail-accounts maken met T-SQL door het uitvoeren van de sysmail_add_account_sp opgeslagen procedure in de msdb databank.

Het Database Mail-account is het account dat de e-mail verzendt. Als u bijvoorbeeld een automatische e-mail hebt die wordt verzonden wanneer een SQL Server Agent-taak mislukt, is dit de account die die e-mail verzendt.

U kunt ook zaken specificeren zoals een aparte "reply-to" e-mail, een weergavenaam, enz.

U kunt indien nodig meerdere accounts hebben voor verschillende taken. Voer gewoon sysmail_add_account_sp . uit wanneer u een nieuw account moet maken.

Voorbeeld

Hier is een voorbeeld van het aanmaken van een Database Mail-account.

EXECUTE msdb.dbo.sysmail_add_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;

In dit voorbeeld geef ik een weergavenaam op van "DB Automated Mailer". Dit is een gebruiksvriendelijke naam die wordt overgebracht naar de ontvanger die de e-mail heeft verzonden. U kunt "SQL Server Agent" of iets dergelijks gebruiken, afhankelijk van uw instellingen.

De syntaxis

Het bovenstaande voorbeeld bevat niet alle beschikbare opties.

De officiële syntaxis gaat als volgt:

sysmail_add_account_sp  [ @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 ]  
    [ , [ @username = ] 'username' ]  
    [ , [ @password = ] 'password' ]  
    [ , [ @use_default_credentials = ] use_default_credentials ]  
    [ , [ @enable_ssl = ] enable_ssl ]  
    [ , [ @account_id = ] account_id OUTPUT ]

Zie de Microsoft-documentatie voor een gedetailleerde uitleg van elk argument. U kunt de argumenten gebruiken die bij uw situatie passen.

U kunt ook de sysmail_update_account_sp . gebruiken opgeslagen procedure om een ​​bestaand Database Mail-account bij te werken.

Database-e-mail configureren

Het maken van een Database Mail-account is slechts een van de vele dingen die u moet doen voordat u met dat account e-mail kunt verzenden.

Nadat je het account hebt gemaakt, moet je het toevoegen aan een profiel (wat betekent dat je ook een profiel moet maken als je er nog geen hebt). U moet ook een gebruiker toewijzen in de msdb databasetoegang tot het profiel.

Zie E-mail verzenden in SQL Server voor een compleet voorbeeld van het configureren van Database Mail en vervolgens het verzenden van een e-mail.


  1. Oracle - ORA-06502:PL/SQL:numerieke of waardefout (DBMS_OUTPUT)

  2. Mysql::Error:Opgegeven sleutel was te lang; maximale sleutellengte is 1000 bytes

  3. Handmatig nieuwe RAC-instantie toevoegen

  4. verander tabel hernoem kolom in Oracle-database