sysmail_update_principalprofile_sp (Transact-SQL)
適用対象:SQL Server
プリンシパルとプロファイルの間の関連付けの情報を更新します。
構文
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。 principal_idは int で、既定値は NULL
. @principal_idまたは@principal_nameを指定する必要があります。
[ @principal_name = ] 'principal_name'
関連付けを更新するデータベースの msdb
データベース ユーザーまたはロールの名前。 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はビットであり、既定値はありません。
リターン コードの値
0
(成功) または 1
(失敗)。
結果セット
ありません。
解説
このストアド プロシージャでは、指定したプロファイルを、データベース ユーザーの既定のプロファイルにするかどうかを変更します。 データベース ユーザーが持つことのできる既定のプライベート プロファイルは 1 つだけです。
関連付けのプリンシパル名がパブリックであるか、関連付けのプリンシパル ID である場合、このストアド プロシージャによって0
パブリック プロファイルが変更されます。 既定のパブリック プロファイルは 1 つしか存在できません。
@is_defaultが1
指定され、プリンシパルが複数のプロファイルに関連付けられている場合、指定したプロファイルがプリンシパルの既定のプロファイルになります。 以前は既定のプロファイルだったプロファイルは引き続きプリンシパルに関連付けられていますが、既定のプロファイルではなくなりました。
ストアド プロシージャsysmail_update_principalprofile_sp
はデータベース内msdb
にあり、dbo スキーマによって所有されています。 現在のデータベースが実行されていない msdb
場合は、プロシージャを 3 部構成の名前で実行する必要があります。
アクセス許可
このストアド プロシージャは、db_owner ロールによって所有されています。 任意のユーザーにアクセス許可を付与 EXECUTE
できますが、SQL Server のアップグレード中にこれらのアクセス許可がオーバーライドされる可能性があります。
例
A. プロファイルをデータベースの既定のパブリック プロファイルに設定する
次の例では、プロファイル General Use Profile
をデータベース内のユーザーの既定のパブリック プロファイルに msdb
設定します。
EXEC msdb.dbo.sysmail_update_principalprofile_sp
@principal_name = 'public',
@profile_name = 'General Use Profile',
@is_default = '1';
B. プロファイルをユーザーの既定のプライベート プロファイルに設定する
次の例では、プロファイル AdventureWorks Administrator
をデータベース内のプリンシパル ApplicationUser
の既定の msdb
プロファイルに設定します。 このプロファイルはプリンシパルに既に関連付けられている必要があります。 以前は既定のプロファイルだったプロファイルは引き続きプリンシパルに関連付けられていますが、既定のプロファイルではなくなりました。
EXEC msdb.dbo.sysmail_update_principalprofile_sp
@principal_name = 'ApplicationUser',
@profile_name = 'AdventureWorks Administrator',
@is_default = '1' ;
関連するコンテンツ
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示