DATABASE_PRINCIPAL_ID (Transact-SQL)DATABASE_PRINCIPAL_ID (Transact-SQL)

ОБЛАСТЬ ПРИМЕНЕНИЯ: даSQL Server даБаза данных SQL Azure даAzure Synapse Analytics (хранилище данных SQL) нетParallel Data WarehouseAPPLIES TO: yesSQL Server yesAzure SQL Database yesAzure Synapse Analytics (SQL DW) noParallel Data Warehouse

Эта функция возвращает идентификационный номер субъекта в текущей базе данных.This function returns the ID number of a principal in the current database. Дополнительные сведения о субъектах см. в статье Субъекты (ядро СУБД).See Principals (Database Engine) for more information about principals.

Значок ссылки на раздел Синтаксические обозначения в Transact-SQLTopic link icon Transact-SQL Syntax Conventions

СинтаксисSyntax

DATABASE_PRINCIPAL_ID ( 'principal_name' )  

АргументыArguments

principal_nameprincipal_name
Выражение типа sysname, представляющее субъект.An expression of type sysname, that represents the principal. Если аргумент principal_name не задан, DATABASE_PRINCIPAL_ID возвращает идентификатор текущего пользователя.When principal_name is omitted, DATABASE_PRINCIPAL_ID returns the ID of the current user. DATABASE_PRINCIPAL_ID необходимо заключить в скобки.DATABASE_PRINCIPAL_ID requires the parentheses.

Типы возвращаемых данныхReturn types

intint
Значение NULL, если субъект базы данных не существует.NULL if the database principal does not exist.

RemarksRemarks

Используйте DATABASE_PRINCIPAL_ID в списке выбора, предложении WHERE или любом другом месте, допускающем выражение.Use DATABASE_PRINCIPAL_ID in a select list, a WHERE clause, or any place that allows an expression. Дополнительные сведения см. в статье Выражения (Transact-SQL).See Expressions (Transact-SQL) for more information.

ПримерыExamples

A.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

В приведенном ниже примере возвращается идентификатор субъекта базы данных для роли базы данных db_owner.This example returns the database principal ID for the database role db_owner.

SELECT DATABASE_PRINCIPAL_ID('db_owner');  
GO  

См. также разделSee also

Участники (компонент Database Engine)Principals (Database Engine)
Иерархия разрешений (компонент Database Engine)Permissions Hierarchy (Database Engine)
sys.database_principals (Transact-SQL)sys.database_principals (Transact-SQL)