USER_ID (Transact-SQL)USER_ID (Transact-SQL)

ESTE TÓPICO APLICA-SE A:simSQL Server (a partir de 2008)simBanco de Dados SQL do Microsoft AzurenãoAzure SQL Data Warehouse nãoParallel Data Warehouse THIS TOPIC APPLIES TO:yesSQL Server (starting with 2008)yesAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Retorna o número de identificação para um usuário de banco de dados.Returns the identification number for a database user.

Importante

Esse recurso será removido em uma versão futura do Microsoft SQL Server.This feature will be removed in a future version of Microsoft SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam.Avoid using this feature in new development work, and plan to modify applications that currently use this feature.Use DATABASE_PRINCIPAL_ID em vez disso. Use DATABASE_PRINCIPAL_ID instead.

Ícone de link do tópico Convenções da sintaxe Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SintaxeSyntax


USER_ID ( [ 'user' ] )  

ArgumentosArguments

usuáriouser
É o nome de usuário a ser usado.Is the username to be used. usuário é nchar.user is nchar. Se um char valor for especificado, ele será convertido implicitamente em nchar.If a char value is specified, it is implicitly converted to nchar. Os parênteses são necessários.The parentheses are required.

Tipos de retornoReturn Types

intint

ComentáriosRemarks

Quando usuário for omitido, o usuário atual é assumido.When user is omitted, the current user is assumed. Se o parâmetro contiver a palavra NULL, retornará NULL. Quando USER_ID é chamado depois de EXECUTE AS, USER_ID retorna a ID do contexto representado.If the parameter contains the word NULL will return NULL.When USER_ID is called after EXECUTE AS, USER_ID will return the ID of the impersonated context.

Quando uma entidade do Windows não é mapeada para um banco de dados específico, o usuário acessa um banco de dados por meio da associação em um grupo, USER_ID retorna 0 (a ID de público).When a Windows principal that is not mapped to a specific database user accesses a database by way of membership in a group, USER_ID returns 0 (the ID of public). Se esse principal criar um objeto sem especificar um esquema, o SQL ServerSQL Server criará um usuário e esquema implícitos mapeados para a entidade de segurança do Windows.If such a principal creates an object without specifying a schema, SQL ServerSQL Server will create an implicit user and schema mapped to the Windows principal. O usuário criado em tais casos não pode ser usado para conectar ao banco de dados.The user created in such cases cannot be used to connect to the database. As chamadas a USER_ID de um principal do Windows mapeado para um usuário implícito retornarão a ID do usuário implícito.Calls to USER_ID by a Windows principal mapped to an implicit user will return the ID of the implicit user.

USER_ID 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.USER_ID can be used in a select list, in a WHERE clause, and anywhere an expression is allowed. Para obter mais informações, veja Expressões (Transact-SQL).For more information, see Expressions (Transact-SQL).

ExemplosExamples

O exemplo a seguir retorna o número de identificação para o usuário AdventureWorks2012 do Harold.The following example returns the identification number for the AdventureWorks2012 user Harold.

USE AdventureWorks2012;  
SELECT USER_ID('Harold');  
GO  

Consulte tambémSee Also

User_name ( Transact-SQL ) USER_NAME (Transact-SQL)
sys.database_principals (Transact-SQL) sys.database_principals (Transact-SQL)
DATABASE_PRINCIPAL_ID ( Transact-SQL ) DATABASE_PRINCIPAL_ID (Transact-SQL)
Funções de segurança (Transact-SQL)Security Functions (Transact-SQL)