Compartilhar via


SUSER_NAME (Transact-SQL)

Aplica-se a: SQL Server Instância Gerenciada de SQL do Azure Azure Synapse Analytics (somente pool de SQL sem servidor) Ponto de extremidade de análise de SQL no Microsoft Fabric Warehouse no Microsoft Fabric

Retorna o nome de identificação de logon do usuário.

Convenções de sintaxe de Transact-SQL

Sintaxe

SUSER_NAME ( [ server_user_id ] )

Argumentos

server_user_id

O número de identificação de logon do usuário. server_user_id, que é opcional, é int. server_user_id pode ser o número de identificação de logon de qualquer logon do SQL Server ou usuário/grupo do Windows que tenha permissão para se conectar a uma instância do SQL Server. Quando server_user_id não for especificado, o nome de identificação de logon do usuário atual será retornado. Se o parâmetro contiver a palavra NULL, ele retornará NULL.

Tipo de retorno

nvarchar(128)

Comentários

SUSER_NAME retorna um nome de login somente para um login que tenha uma entrada nas exibições de catálogo sys.server_principals ou sys.sql_logins.

SUSER_NAME pode ser usado em uma lista de seleção, em uma cláusula WHERE ou em qualquer local em que uma expressão seja permitida. Use parênteses após SUSER_NAME, mesmo se nenhum parâmetro for especificado.

Observação

Embora a função SUSER_NAME tenha suporte no Banco de Dados SQL do Azure, não há suporte para o uso de EXECUTE AS com SUSER_NAME no Banco de Dados SQL do Azure.

Exemplos

R. Usar SUSER_NAME

O exemplo a seguir retorna o nome de identificação de logon do usuário com um número de identificação de logon de 1.

SELECT SUSER_NAME(1);

B. Usar SUSER_NAME sem um ID

O exemplo a seguir localiza o nome do usuário atual sem especificar um ID.

SELECT SUSER_NAME();  
GO  

No SQL Server, este é o conjunto de resultados para um login autenticado do Microsoft Entra ID:

contoso\username  

No Banco de Dados SQL do Azure e no Microsoft Fabric, este é o conjunto de resultados para um login autenticado pelo Microsoft Entra ID:

username@contoso.com