Compartilhar via


sysmail_update_principalprofile_sp (Transact-SQL)

Aplica-se: SQL Server

Atualiza as informações de uma associação entre uma entidade e um perfil.

Convenções de sintaxe de Transact-SQL

Sintaxe

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

Argumentos

[ @principal_id = ] principal_id

A ID do usuário ou função do banco de dados no msdb banco de dados para a associação a ser alterada. principal_id é int, com um padrão de NULL. Deve ser especificado @principal_id ou @principal_name .

@principal_name [ = ] 'principal_name'

O nome do usuário ou função do banco de dados no msdb banco de dados para a associação atualizar. principal_name é sysname, com um padrão de NULL. Deve ser especificado @principal_id ou @principal_name .

@profile_id [ = ] profile_id

A ID do perfil para a associação a ser alterada. @profile_id é int, com um padrão de NULL. Deve ser especificado @profile_id ou @profile_name .

@profile_name [ = ] 'profile_name'

O nome do perfil da associação a ser alterada. @profile_name é sysname, com um padrão de NULL. Deve ser especificado @profile_id ou @profile_name .

@is_default [ = ] is_default

Se esse perfil é o perfil padrão para o usuário do banco de dados. Um usuário de banco de dados pode ter apenas um perfil padrão. @is_default é bit, sem padrão.

Valores do código de retorno

0 (sucesso) ou 1 (falha).

Conjunto de resultados

Nenhum.

Comentários

Este procedimento armazenado será alterado se o perfil especificado for o padrão para o usuário do banco de dados. Um usuário de banco de dados pode ter apenas um perfil privado padrão.

Quando o nome da entidade de segurança da associação é público ou a ID da entidade de segurança da associação é 0, esse procedimento armazenado altera o perfil público. Pode haver somente um perfil público padrão.

Quando @is_default é 1 e a entidade de segurança está associada a mais de um perfil, o perfil especificado se torna o perfil padrão da entidade de segurança. O perfil que anteriormente era o padrão ainda estará associado à entidade, mas não mais será o perfil padrão.

O procedimento sysmail_update_principalprofile_sp armazenado está no msdb banco de dados e pertence ao esquema dbo . O procedimento deve ser executado com um nome de três partes se o banco de dados atual não msdbfor .

Permissões

Esse procedimento armazenado pertence à função db_owner . Você pode conceder EXECUTE permissões para qualquer usuário, mas essas permissões podem ser substituídas durante uma atualização do SQL Server.

Exemplos

R. Definir um perfil como o perfil público padrão para um banco de dados

O exemplo a seguir define o perfil General Use Profile como o perfil público padrão para usuários no msdb banco de dados.

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

B. Definir um perfil para ser o perfil privado padrão de um usuário

O exemplo a seguir define o perfil AdventureWorks Administrator como o perfil padrão para a entidade de segurança ApplicationUser no msdb banco de dados. O perfil já deve estar associado à entidade. O perfil que anteriormente era o padrão ainda estará associado à entidade, mas não mais será o perfil padrão.

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