Condividi tramite


USER_NAME (Transact-SQL)

Restituisce un nome di un utente del database corrispondente al numero di identificazione specificato.

Icona di collegamento a un argomento Convenzioni della sintassi Transact-SQL

Sintassi

USER_NAME ( [ id ] )

Argomenti

  • id
    Numero di identificazione associato a un utente del database. idè int. È necessario utilizzare le parentesi.

Tipi restituiti

nvarchar(256)

Osservazioni

Se id viene omesso, viene utilizzato l'utente corrente nel contesto corrente. Se il parametro contiene la parola NULL, verrà restituito NULL. Se chiamata senza specificare un id dopo un'istruzione EXECUTE AS, la funzione USER_NAME restituisce il nome dell'utente rappresentato. Se un'entità di Windows accede al database in base all'appartenenza a un gruppo, USER_NAME restituisce il nome dell'entità di Windows anziché il gruppo.

Esempi

A.Utilizzo di USER_NAME

Nell'esempio seguente viene restituito il nome utente per l'ID utente 13.

SELECT USER_NAME(13);
GO

B.Utilizzo di USER_NAME senza un ID

Nell'esempio seguente viene restituito il nome dell'utente corrente senza specificare un ID.

SELECT USER_NAME();
GO

Set di risultati (per un utente membro del ruolo predefinito del server sysadmin):

------------------------------

dbo

(1 row(s) affected)

C.Utilizzo di USER_NAME nella clausola WHERE

Nell'esempio seguente viene restituita la riga di sysusers contenente un nome che corrisponde al risultato della funzione di sistema USER_NAME per il numero di identificazione utente 1.

SELECT name FROM sysusers WHERE name = USER_NAME(1);
GO

Set di risultati:

name

------------------------------

dbo

(1 row(s) affected)

D.Chiamata della funzione USER_NAME durante la rappresentazione tramite EXECUTE AS

Nell'esempio seguente viene illustrato il comportamento della funzione USER_NAME durante la rappresentazione.

SELECT USER_NAME();
GO
EXECUTE AS USER = 'Zelig';
GO
SELECT USER_NAME();
GO
REVERT;
GO
SELECT USER_NAME();
GO

Set di risultati:

DBO

Zelig

DBO

Vedere anche

Riferimento

ALTER TABLE (Transact-SQL)

CREATE TABLE (Transact-SQL)

CURRENT_TIMESTAMP (Transact-SQL)

CURRENT_USER (Transact-SQL)

SESSION_USER (Transact-SQL)

Funzioni di sistema (Transact-SQL)

SYSTEM_USER (Transact-SQL)