データベース メールのプライベート プロファイルを作成する方法 (Transact-SQL)
Simple Mail Transfer Protocol (SMTP) メールを送信する際に必要となるデータベース メールのプライベート プロファイルを作成するには、データベース メール構成ウィザードまたはデータベース メール ストアド プロシージャを使用します。プライベート プロファイルを使用できるのは、ユーザーまたはロールです。プロファイルにロールのアクセス権を付与すると、保守が簡単なアーキテクチャを作成できます。
Transact-SQL を使用してデータベース メール プロファイルを作成するには
プロファイルに対応する 1 つ以上のデータベース メール アカウントを作成します。データベース メール アカウントの作成方法については、「データベース メール アカウントを作成する方法 (Transact-SQL)」を参照してください。
次のパラメータを指定してストアド プロシージャ msdb.dbo.sysmail_add_profile_sp を実行することにより、プロファイルを作成します。
作成するプロファイルの名前。
プロファイルの説明 (省略可)。
アカウントごとに msdb.dbo.sysmail_add_profileaccount_sp を実行し、そのアカウントをプロファイルに追加します。
メールの送信にこのプロファイルを使用する各データベース ロールまたはユーザーごとに、msdb.sysmail_add_principalprofile_sp を実行してプロファイルへのアクセスを許可します。
使用例
次の例では、データベース メール アカウントおよびデータベース メール プロファイルを作成します。その後、アカウントをプロファイルに追加し、プロファイルへのアクセス権を、msdb データベースに作成する DBMailUsers データベース ロールに与えます。
-- Create a Database Mail account
EXECUTE msdb.dbo.sysmail_add_account_sp
@account_name = 'AdventureWorks Administrator',
@description = 'Mail account for administrative e-mail.',
@email_address = 'dba@Adventure-Works.com',
@replyto_address = 'danw@Adventure-Works.com',
@display_name = 'AdventureWorks Automated Mailer',
@mailserver_name = 'smtp.Adventure-Works.com' ;
-- Create a Database Mail profile
EXECUTE msdb.dbo.sysmail_add_profile_sp
@profile_name = 'AdventureWorks Administrator Profile',
@description = 'Profile used for administrative mail.' ;
-- Add the account to the profile
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
@profile_name = 'AdventureWorks Administrator Profile',
@account_name = 'AdventureWorks Administrator',
@sequence_number =1 ;
-- Grant access to the profile to the DBMailUsers role
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
@profile_name = 'AdventureWorks Administrator Profile',
@principal_name = 'ApplicationUser',
@is_default = 1 ;