V SQL Server používá Database Mail k odeslání e-mailu profily, nikoli přímo účty.
Proto musíte nejprve vytvořit profil, vytvořit účet a poté přidat účet do profilu. Musíte také udělit uživatele v msdb databázový přístup k profilu.
Chcete-li přidat účet Database Mail do profilu s T-SQL, použijte sysmail_add_profileaccount_sp
uložená procedura v msdb databáze.
Příklad
Zde je příklad přidání účtu Database Mail do profilu Database Mail pomocí T-SQL.
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
@profile_name = 'DB Admin Profile',
@account_name = 'DB Admin',
@sequence_number = 1;
V tomto případě přidám účet „DB Admin“ do profilu „DB Admin Profile“.
To předpokládá, že profil a účet již existují.
Do profilu Database Mail můžete přidat více účtů. Pořadové číslo určuje pořadí, ve kterém jsou účty v profilu použity. Database Mail začíná účtem, který má nejnižší pořadové číslo. Pokud tento účet selže, použije se účet s dalším nejvyšším pořadovým číslem a tak dále.
Pokud existuje více než jeden účet se stejným pořadovým číslem, Database Mail použije pro danou e-mailovou zprávu pouze jeden z těchto účtů.
Neexistuje však žádná záruka, že stejný účet bude použit pro následující zprávy. Pokud například dva účty sdílejí pořadové číslo 1, můžete dostávat některé e-maily z jednoho účtu a některé z druhého účtu.
Zadejte ID účtu/profilu
Alternativně můžete místo jejich jmen zadat ID profilu a/nebo ID účtu.
Proto bychom mohli změnit předchozí příklad, aby vypadal nějak takto:
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
@profile_id = 1,
@account_id = 1,
@sequence_number = 1;
To samozřejmě předpokládá, že se jedná o ID příslušných účtů.
Všimněte si, že musí být uvedeno buď jméno, nebo ID.
Při poskytování ID jsou také poskytnuta jako int .
Všimněte si, že sysmail_add_profileaccount_sp
uložená procedura je v msdb databázi a je ve vlastnictví dbo schéma. Proto budete muset použít třídílné pojmenování, pokud jej spustíte mimo msdb databáze.