DATABASE_PRINCIPAL_ID (Transact-SQL)

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do AzureAzure Synapse Analytics

Essa função retorna o número de ID de uma entidade de segurança no banco de dados atual. Veja Entidades de segurança (Mecanismo de Banco de Dados) para obter mais informações sobre entidades de segurança.

Convenções de sintaxe de Transact-SQL

Sintaxe

DATABASE_PRINCIPAL_ID ( 'principal_name' )  

Observação

Para exibir a sintaxe do Transact-SQL para o SQL Server 2014 (12.x) e versões anteriores, confira a Documentação das versões anteriores.

Argumentos

principal_name
É uma expressão do tipo sysname que representa a entidade de segurança. Quando principal_name é omitido, a DATABASE_PRINCIPAL_ID retorna a ID do usuário atual. DATABASE_PRINCIPAL_ID requer parênteses.

Tipos de retorno

int
NULL quando a entidade de segurança do banco de dados não existe.

Comentários

Use DATABASE_PRINCIPAL_ID em uma lista selecionada, uma cláusula WHERE ou qualquer lugar que permite que uma expressão. Confira Expressões (Transact-SQL) para saber mais informações.

Exemplos

a. Recuperando a ID do usuário atual

Este exemplo retorna a ID de entidade de segurança do banco de dados do usuário atual.

SELECT DATABASE_PRINCIPAL_ID();  
GO  

B. Recuperando a ID de uma entidade de segurança do banco de dados especificado

Este exemplo retorna a ID de entidade de segurança do banco de dados para a função de banco de dados db_owner.

SELECT DATABASE_PRINCIPAL_ID('db_owner');  
GO  

Confira também

Entidades (Mecanismo de Banco de Dados)
Hierarquia de permissões (Mecanismo de Banco de Dados)
sys.database_principals (Transact-SQL)