sysmail_delete_principalprofile_sp (Transact-SQL)

适用范围:SQL Server

删除数据库用户或角色使用公共或专用数据库邮件配置文件的权限。

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(失败)。

注解

若要将公共配置文件设置为专用配置文件,请为主体名称或0主体 ID 提供“public”。

删除用户的默认专用配置文件的权限或默认公共配置文件的权限时,请谨慎操作。 如果没有可用的默认配置文件, sp_send_dbmail 则需要将配置文件的名称作为参数。 因此,删除默认配置文件会导致调用 sp_send_dbmail 失败。 有关详细信息,请参阅 sp_send_dbmail

存储过程 sysmail_delete_principalprofile_sp 位于 msdb 数据库中,由 dbo 架构拥有。 如果当前数据库不是 msdb,则必须使用三部分名称执行该过程。

权限

此存储过程由 db_owner 角色拥有。 你可以为任何用户授予 EXECUTE 权限,但这些权限可能会在 SQL Server 升级期间被重写。

示例

以下示例演示如何删除配置文件AdventureWorks Administrator与数据库中的登录ApplicationUsermsdb名之间的关联。

EXEC msdb.dbo.sysmail_delete_principalprofile_sp
    @principal_name = 'ApplicationUser',
    @profile_name = 'AdventureWorks Administrator';