SUSER_NAME (Transact-SQL)

Aplica-se a:SQL ServerAzureSQL Managed InstanceAzureSynapse Analytics (apenas pool SQL serverless)SQL analytics endpoint em Microsoft FabricWarehouseem Microsoft Fabric

Devolve o nome de identificação de login do utilizador.

Transact-SQL convenções de sintaxe

Syntax

SUSER_NAME ( [ server_user_id ] )

Arguments

server_user_id

O número de identificação de login do utilizador. server_user_id, que é opcional, é int. server_user_id pode ser o número de identificação de login de qualquer SQL Server login ou de Windows utilizador ou grupo que tenha permissão para se ligar a uma instância de SQL Server. Quando server_user_id não é especificado, o nome de identificação de login do utilizador atual é devolvido. Se o parâmetro contiver a palavra NULL, devolve NULL.

Tipo de retorno

nvarchar(128)

Observações

SUSER_NAME Retorna apenas um nome de login para um login que tenha uma entrada nas sys.server_principals visualizações do catálogo de OR sys.sql_logins .

SUSER_NAME pode ser usado numa lista de seleção, numa cláusula WHERE e em qualquer lugar onde uma expressão seja permitida. Use parênteses após SUSER_NAME, mesmo que não seja especificado nenhum parâmetro.

Note

Embora a SUSER_NAME função seja suportada no Base de Dados SQL do Azure, o uso EXECUTE AS de com SUSER_NAME não é suportado no Base de Dados SQL do Azure.

Examples

A. Use SUSER_NAME

O exemplo seguinte devolve o nome de identificação de login do utilizador com um número de identificação de login de 1.

SELECT SUSER_NAME(1);

B. Use SUSER_NAME sem cartão de identificação

O exemplo seguinte encontra o nome do utilizador atual sem especificar um ID.

SELECT SUSER_NAME();  
GO  

No SQL Server, aqui está o conjunto de resultados para um login autenticado pelo Microsoft Entra ID:

contoso\username  

No Base de Dados SQL do Azure e no Microsoft Fabric, aqui está o conjunto de resultados para um login autenticado pelo Microsoft Entra ID:

username@contoso.com