DATABASE_PRINCIPAL_ID (Transact-SQL)
Returns the ID number of a principal in the current database. For more information about principals, see Principals (Database Engine).
Transact-SQL Syntax Conventions
Syntax
DATABASE_PRINCIPAL_ID ( 'principal_name' )
Arguments
principal_name
Is an expression of type sysname that represents the principal.When principal_name is omitted, the ID of the current user is returned. The parentheses are required.
Return Types
int
NULL when the database principal does not exist
Remarks
DATABASE_PRINCIPAL_ID can be used in a select list, a WHERE clause, or anywhere an expression is allowed. For more information, see Expressions (Transact-SQL).
Examples
A. Retrieving the ID of the current user
The following example returns the database principal ID of the current user.
SELECT DATABASE_PRINCIPAL_ID();
GO
B. Retrieving the ID of a specified database principal
The following example returns the database principal ID for the database role db_owner.
SELECT DATABASE_PRINCIPAL_ID('db_owner');
GO
See Also
Reference
sys.database_principals (Transact-SQL)