Espandi Riduci a icona
Questo argomento non è stato ancora valutato - Valuta questo argomento

SUSER_SNAME (Transact-SQL)

Restituisce il nome dell'account di accesso associato a un ID di protezione (SID).

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


SUSER_SNAME ( [ server_user_sid ] ) 
server_user_sid

ID di protezione dell'account di accesso. L'argomento server_user_sid, facoltativo, è di tipo varbinary(85). server_user_sid può essere l'ID di protezione di qualsiasi account di accesso di SQL Server o di qualsiasi utente o gruppo di Microsoft Windows. Se non si specifica server_user_sid, vengono restituite informazioni sull'utente corrente.

nvarchar(128)

La funzione SUSER_SNAME può essere utilizzata come vincolo DEFAULT nell'istruzione ALTER TABLE o CREATE TABLE. È possibile utilizzare SUSER_SNAME nell'elenco di selezione, nella clausola WHERE e in tutti i casi in cui è consentita un'espressione. SUSER_SNAME deve essere sempre seguita da una coppia di parentesi, anche se non si specifica alcun parametro.

Se chiamata senza argomenti, la funzione SUSER_SNAME restituisce il nome del contesto di protezione corrente. Se chiamata senza argomenti all'interno di un batch che ha cambiato contesto tramite EXECUTE AS, la funzione SUSER_SNAME restituisce il nome del contesto rappresentato. Se chiamata da un contesto rappresentato, ORIGINAL_LOGIN restituisce il nome del contesto originale.

A. Utilizzo della funzione SUSER_SNAME

Nell'esempio seguente viene restituito il nome dell'account di accesso corrispondente all'ID di protezione 0x01.

SELECT SUSER_SNAME(0x01);
GO

B. Utilizzo della funzione SUSER_SNAME con l'ID di protezione di un utente di Windows

Nell'esempio seguente viene restituito il nome dell'account di accesso associato a un ID di protezione di Windows.

SELECT SUSER_SNAME(0x010500000000000515000000a065cf7e784b9b5fe77c87705a2e0000);
GO

C. Utilizzo della funzione SUSER_SNAME come vincolo DEFAULT

Nell'esempio seguente la funzione SUSER_SNAME viene utilizzata come vincolo DEFAULT in un'istruzione CREATE TABLE.

USE AdventureWorks;
GO
CREATE TABLE sname_example
(
login_sname sysname DEFAULT SUSER_SNAME(),
employee_id uniqueidentifier DEFAULT NEWID(),
login_date  datetime DEFAULT GETDATE()
) 
GO
INSERT sname_example DEFAULT VALUES
GO

D. Chiamata della funzione SUSER_SNAME in combinazione con EXECUTE AS

In questo esempio viene illustrato il funzionamento della funzione SUSER_SNAME quando viene chiamata da un contesto rappresentato.

SELECT SUSER_SNAME();

GO

EXECUTE AS LOGIN = 'WanidaBenShoof';

SELECT SUSER_SNAME();

REVERT;

GO

SELECT SUSER_SNAME();

GO

Risultato:

sa

WanidaBenShoof

sa

Il documento è risultato utile?
(1500 caratteri rimanenti)

Aggiunte alla community

AGGIUNGI
Microsoft sta conducendo un sondaggio in linea per comprendere l'opinione degli utenti in merito al sito Web di MSDN. Se si sceglie di partecipare, quando si lascia il sito Web di MSDN verrà visualizzato il sondaggio in linea.

Si desidera partecipare?
© 2013 Microsoft. Tutti i diritti riservati.