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