次の方法で共有


sysmail_update_principalprofile_sp (Transact-SQL)

更新 : 2006 年 12 月 12 日

msdb プリンシパルとプロファイルの関連付けについての情報を更新します。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

sysmail_update_principalprofile_sp { @principal_id = principal_id | @principal_name = 'principal_name' } ,
    { [ @profile_id = ] profile_id | [ @profile_name = ] 'profile_name' } ,
    [ @is_default = ] 'is_default'

引数

  • [ @principal_id= ] principal_id
    msdb データベース ユーザーの ID。public ロールの場合は 0 を指定します。principal_id のデータ型は int で、既定値は NULL です。principal_id または principal_name のいずれかを指定する必要があります。
  • [ @principal_name= ] 'principal_name'
    msdb データベース ユーザーの名前。public ロールの場合は 'public' を指定します。principal_name のデータ型は sysname で、既定値は NULL です。principal_id または principal_name のいずれかを指定できます。
  • [ @profile_id= ] profile_id
    関連付けを変更するプロファイルの ID を指定します。profile_id のデータ型は int で、既定値は NULL です。profile_id または profile_name のいずれかを指定する必要があります。
  • [ @profile_name= ] 'profile_name'
    関連付けを変更するプロファイルの名前を指定します。profile_name のデータ型は sysname で、既定値は NULL です。profile_id または profile_name のいずれかを指定する必要があります。
  • [ @is_default= ] 'is_default'
    このプロファイルがデータベース ユーザーの既定のプロファイルかどうかを指定します。データベース ユーザーが持つことのできる既定のプロファイルは 1 つだけです。is_default のデータ型は bit で、既定値はありません。

結果セット

なし

解説

このストアド プロシージャでは、指定したプロファイルを、データベース ユーザーの既定のプロファイルにするかどうかを変更します。データベース ユーザーが持つことのできる既定のプライベート プロファイルは 1 つだけです。

関連付けのプリンシパル名が public であるか、関連付けのプリンシパル ID が 0 の場合、このストアド プロシージャではパブリック プロファイルが変更されます。既定のパブリック プロファイルは 1 つしか存在できません。

@is_default が '1' で、プリンシパルが複数のプロファイルに関連付けられている場合、指定したプロファイルはプリンシパルの既定のプロファイルになります。それまで既定のプロファイルであったプロファイルは、引き続きプリンシパルに関連付けられますが、既定のプロファイルではなくなります。

ストアド プロシージャ sysmail_update_principalprofile_spmsdb データベースにあり、dbo スキーマが所有しています。現在のデータベースが msdb でない場合、このプロシージャを実行するときには名前に 3 つの要素を指定する必要があります。

権限

このプロシージャの実行権限は、既定では sysadmin 固定サーバー ロールのメンバに与えられています。

戻り値

0 (成功) または 1 (失敗)

A. プロファイルをデータベースの既定のパブリック プロファイルに設定する

次の例では、プロファイル General Use Profile を、msdb データベースに格納されているユーザーの既定のパブリック プロファイルに設定します。

EXECUTE msdb.dbo.sysmail_update_principalprofile_sp
    @principal_name = 'public',
    @profile_name = 'General Use Profile',
    @is_default = '1';

B. プロファイルをユーザーの既定のプライベート プロファイルに設定する

次の例では、プロファイル AdventureWorks Administrator を、msdb データベースに格納されているプリンシパル ApplicationUser の既定のパブリック プロファイルに設定します。このプロファイルはプリンシパルに既に関連付けられている必要があります。それまで既定のプロファイルであったプロファイルは、引き続きプリンシパルに関連付けられますが、既定のプロファイルではなくなります。

EXECUTE msdb.dbo.sysmail_update_principalprofile_sp
    @principal_name = 'ApplicationUser',
    @profile_name = 'AdventureWorks Administrator',
    @is_default = '1' ;

参照

関連項目

データベース メールと SQL Mail のストアド プロシージャ (Transact-SQL)

その他の技術情報

データベース メール
データベース メール プロファイル
[構成タスクの選択] (データベース メール)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手

変更履歴

リリース 履歴

2006 年 12 月 12 日

変更内容 :
  • msdb ユーザーであり、そのロールが public ロールに限定される場合の指定方法を追加しました。