Skip to content

Latest commit

 

History

History
71 lines (55 loc) · 2.84 KB

database-principal-id-transact-sql.md

File metadata and controls

71 lines (55 loc) · 2.84 KB
title description author ms.author ms.date ms.service ms.subservice ms.topic f1_keywords helpviewer_keywords dev_langs monikerRange
DATABASE_PRINCIPAL_ID (Transact-SQL)
DATABASE_PRINCIPAL_ID (Transact-SQL)
VanMSFT
vanto
05/14/2019
sql
t-sql
reference
DATABASE_PRINCIPAL_ID_TSQL
DATABASE_PRINCIPAL_ID
identification numbers [SQL Server], principals
principal ID numbers [SQL Server]
DATABASE_PRINCIPAL_ID function
IDs [SQL Server], principals
TSQL
= azuresqldb-current || = azuresqldb-mi-current || >= sql-server-2016 || >= sql-server-linux-2017 || = azuresqledge-current || = azure-sqldw-latest

DATABASE_PRINCIPAL_ID (Transact-SQL)

[!INCLUDE sql-asdb-asdbmi-asa-pdw]

This function returns the ID number of a principal in the current database. See Principals (Database Engine) for more information about principals.

:::image type="icon" source="../../includes/media/topic-link-icon.svg" border="false"::: Transact-SQL syntax conventions

Syntax

DATABASE_PRINCIPAL_ID ( 'principal_name' )  

[!INCLUDEsql-server-tsql-previous-offline-documentation]

Arguments

principal_name
An expression of type sysname, that represents the principal. When principal_name is omitted, DATABASE_PRINCIPAL_ID returns the ID of the current user. DATABASE_PRINCIPAL_ID requires the parentheses.

Return types

int
NULL if the database principal does not exist.

Remarks

Use DATABASE_PRINCIPAL_ID in a select list, a WHERE clause, or any place that allows an expression. See Expressions (Transact-SQL) for more information.

Examples

A. Retrieving the ID of the current user

This example returns the database principal ID of the current user.

SELECT DATABASE_PRINCIPAL_ID();  
GO  

B. Retrieving the ID of a specified database principal

This example returns the database principal ID for the database role db_owner.

SELECT DATABASE_PRINCIPAL_ID('db_owner');  
GO  

See also

Principals (Database Engine)
Permissions Hierarchy (Database Engine)
sys.database_principals (Transact-SQL)