A palavra chave USER_NAME no SQL é usada para informar o nome do usuário (como o próprio nome diz). Veja o exemplo abaixo:

SELECT USER_NAME()

No caso acima informará o usuário que está logado na base de dados, se o usuário estiver em rede será informado o nome da rede, barra invertida e em seguida o nome do usuário. Ex.: ‘SQLCOMOUMTODO\alexandre’.

O USER_NAME pode receber um parâmetro que deve ser o ID do usuário na base de dados.

SELECT USER_NAME(1)

Na maioria dos casos, o ID 1 corresponde ao usuário ‘dbo’.

Para se obter maiores informações sobre o usuário, deve fazer o filtro na tabela de gerenciamento de usuários, a ‘sysusers’. Esta tabela pode fornecer informações como: quando foi criado o usuário (createdate), quando foi atualizado o usuário (updatedate), se o usuário está logado no momento, entre outras informações.

SELECT

*

FROM

sysusers

WHERE

name = USER_NAME(1)

A instrução acima retorna a mesma informação da instrução abaixo. Apenas mudando os campos que são comparados.

SELECT

*

FROM

sysusers

WHERE

uid = 1