Share via


sysmail_delete_principalprofile_sp (Transact-SQL)

データベースのユーザーやロールから、パブリックまたはプライベートなデータベース メール プロファイルを使用する権限を削除します。

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

構文

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

引数

  • [ @principal_id = ] principal_id
    関連付けを削除する msdb データベースのデータベース ユーザーまたはロールの ID を指定します。principal_id のデータ型は int で、既定値は NULL です。パブリック プロファイルをプライベート プロファイルにするには、プリンシパル ID に 0 を指定するか、プリンシパル名に 'public' を指定します。principal_id または principal_name のいずれかを指定する必要があります。

  • [ @principal_name = ] 'principal_name'
    関連付けを削除する msdb データベースのデータベース ユーザーまたはロールの名前を指定します。principal_name のデータ型は sysname で、既定値は NULL です。パブリック プロファイルをプライベート プロファイルにするには、プリンシパル ID に 0 を指定するか、プリンシパル名に 'public' を指定します。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 のいずれかを指定する必要があります。

リターン コード値

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

説明

パブリック プロファイルをプライベート プロファイルにするには、プリンシパル名に 'public' を指定するか、プリンシパル ID に 0 を指定します。

ユーザーの既定のプライベート プロファイルや、既定のパブリック プロファイルを削除する場合は慎重に行ってください。既定のプロファイルがない場合、sp_send_dbmail には引数としてプロファイルの名前が必要になります。したがって、既定のプロファイルを削除すると、sp_send_dbmail への呼び出しが失敗する場合があります。詳細については、「sp_send_dbmail (Transact-SQL)」を参照してください。

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

権限

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

次の例では、msdb データベースにおけるプロファイル AdventureWorks2008R2 Administrator とログイン ApplicationUser の関連付けを削除します。

EXECUTE msdb.dbo.sysmail_delete_principalprofile_sp
    @principal_name = 'ApplicationUser',
    @profile_name = 'AdventureWorks2008R2 Administrator' ;