データベース メールのパブリック プロファイルを作成する方法 (Transact-SQL)
データベース メールのパブリック プロファイルを作成するには、データベース メール構成ウィザードまたはデータベース メール ストアド プロシージャを使用します。パブリック プロファイルにより、msdb データベースにアクセスできるすべてのユーザーが、このプロファイルを使用して電子メールを送信できます。
Transact-SQL を使用して、データベース メールのパブリック プロファイルを作成するには
プロファイルに対応する 1 つ以上のデータベース メール アカウントを作成します。データベース メール アカウントの作成方法については、「データベース メール アカウントを作成する方法 (Transact-SQL)」を参照してください。
次のパラメータを指定してストアド プロシージャ msdb.dbo.sysmail_add_profile_sp を実行することにより、プロファイルを作成します。
作成するプロファイルの名前。
プロファイルの説明 (省略可)。
アカウントごとに msdb.dbo.sysmail_add_profileaccount_sp を実行し、そのアカウントをプロファイルに追加します。
@principal_name に 'public' を指定するか、@principal_id に 0 を指定して、msdb.sysmail_add_principalprofile_sp を実行することで、プロファイルへのパブリック アクセス許可を与えます。
使用例
次の例では、データベース メール アカウントおよびデータベース メール プロファイルを作成します。その後、アカウントをプロファイルに追加し、プロファイルへのアクセス権を msdb データベース内のすべてのユーザーに与えます。
-- Create a Database Mail account
EXECUTE msdb.dbo.sysmail_add_account_sp
@account_name = 'AdventureWorks Public Account',
@description = 'Mail account for use by all database users.',
@email_address = 'db_users@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 Public Profile',
@description = 'Profile used for administrative mail.' ;
-- Add the account to the profile
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
@profile_name = 'AdventureWorks Public Profile',
@account_name = 'AdventureWorks Public Account',
@sequence_number =1 ;
-- Grant access to the profile to all users in the msdb database
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
@profile_name = 'AdventureWorks Public Profile',
@principal_name = 'public',
@is_default = 1 ;