USER_ID (Transact-SQL)
Si applica a: SQL Server Database SQL di Azure Istanza gestita di SQL di Azure
Restituisce il numero di identificazione per un utente del database.
Importante
Questa funzionalità verrà rimossa nelle versioni future di SQL Server. Evitare di usare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata. Utilizzare DATABASE_PRINCIPAL_ID.
Convenzioni relative alla sintassi Transact-SQL
Sintassi
USER_ID ( [ 'user' ] )
Argomenti
user
Nome utente da utilizzare. user è di tipo nchar. Se si specifica un valore char, viene eseguita la conversione implicita in nchar. Le parentesi sono obbligatorie.
Tipi restituiti
int
Osservazioni:
Se user viene omesso, viene presunto l'utente corrente. Se il parametro contiene la parola NULL, restituirà NULL. Se viene chiamata dopo EXECUTE AS, la funzione USER_ID restituirà l'ID del contesto rappresentato.
Se un'entità di Windows di cui non è stato eseguito il mapping a uno specifico utente del database accede a un database tramite l'appartenenza a un gruppo, USER_ID restituisce 0 (ID del ruolo public). Se tale entità crea un oggetto senza specificare uno schema, SQL Server creerà un utente e uno schema impliciti di cui viene eseguito il mapping all'entità di Windows. L'utente creato in questo modo non può essere utilizzato per connettersi al database. Le chiamate alla funzione USER_ID da parte di un'entità di Windows di cui è eseguito il mapping a un utente implicito restituiranno l'ID dell'utente implicito.
È possibile utilizzare USER_ID in un elenco di selezione, in una clausola WHERE e in tutti i casi in cui è consentita un'espressione. Per altre informazioni, vedere Espressioni (Transact-SQL).
Esempi
Nell'esempio seguente viene restituito il numero di identificazione per l'utente di AdventureWorks2022
Harold
.
USE AdventureWorks2022;
SELECT USER_ID('Harold');
GO
Vedi anche
USER_NAME (Transact-SQL)
sys.database_principals (Transact-SQL)
DATABASE_PRINCIPAL_ID (Transact-SQL)
Funzioni di sicurezza (Transact-SQL)