次の方法で共有


sysmail_delete_profile_sp (Transact-SQL)

適用対象: SQL Server

データベース メールによって使用されるメール プロファイルを削除します。

Transact-SQL 構文表記規則

構文

sysmail_delete_profile_sp { [ @profile_id = ] profile_id | [ @profile_name = ] 'profile_name' }
[ ; ]

引数

[ @profile_id = ] profile_id

削除するプロファイルのプロファイル ID。 @profile_idint で、既定値は NULL です。 @profile_idまたは@profile_nameを指定する必要があります。

[ @profile_name = ] 'profile_name'

削除するプロファイルの名前。 @profile_namesysname で、既定値は NULL です。 @profile_idまたは@profile_nameを指定する必要があります。

リターン コードの値

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

結果セット

ありません。

解説

プロファイルを削除しても、プロファイルで使用されているアカウントは削除されません。

このストアド プロシージャは、ユーザーがプロファイルにアクセスできるかどうかに関係なく、プロファイルを削除します。 ユーザーの既定のプライベート プロファイルまたは msdb データベースの既定のパブリック プロファイルを削除する場合は注意が必要です。 既定のプロファイルが使用できない場合、 sp_send_dbmail にはプロファイルの名前が引数として必要です。 そのため、既定のプロファイルを削除すると、 sp_send_dbmail の呼び出しが失敗する可能性があります。 詳細については、「 sp_send_dbmail」を参照してください。

ストアド プロシージャ sysmail_delete_profile_spmsdb データベースにあり、 dbo スキーマによって所有されます。 現在のデータベースが msdbされていない場合は、プロシージャを 3 部構成の名前で実行する必要があります。

アクセス許可

このストアド プロシージャは、 db_owner ロールによって所有されています。 EXECUTEアクセス許可は任意のユーザーに付与できますが、SQL Server のアップグレード中にこれらのアクセス許可がオーバーライドされる可能性があります。

次の例では、AdventureWorks Administrator というプロファイルを削除します。

EXEC msdb.dbo.sysmail_delete_profile_sp
    @profile_name = 'AdventureWorks Administrator';