Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Область применения:SQL Server
База данных SQL Azure
Управляемый экземпляр SQL Azure
Azure Synapse Analytics
База данных SQL в Microsoft Fabric
Эта функция возвращает идентификационный номер субъекта в текущей базе данных. Дополнительные сведения о субъектах см. в статье Субъекты (ядро СУБД).
Соглашения о синтаксисе Transact-SQL
Синтаксис
DATABASE_PRINCIPAL_ID ( 'principal_name' )
Аргументы
principal_name
Выражение типа sysname, представляющее субъект. Если аргумент principal_name не задан, DATABASE_PRINCIPAL_ID возвращает идентификатор текущего пользователя.
DATABASE_PRINCIPAL_ID необходимо заключить в скобки.
Типы возвращаемых данных
int
Значение NULL, если субъект базы данных не существует.
Замечания
Используйте DATABASE_PRINCIPAL_ID в списке выбора, предложении WHERE или любом другом месте, допускающем выражение. Дополнительные сведения см. в статье Выражения (Transact-SQL).
Примеры
А. Извлечение идентификатора текущего пользователя
В приведенном ниже примере возвращается идентификатор субъекта базы данных текущего пользователя.
SELECT DATABASE_PRINCIPAL_ID();
GO
B. Извлечение идентификатора указанного участника базы данных
В приведенном ниже примере возвращается идентификатор субъекта базы данных для роли базы данных db_owner.
SELECT DATABASE_PRINCIPAL_ID('db_owner');
GO
См. также
Субъекты (ядро СУБД)
Иерархия разрешений (ядро СУБД)
sys.database_principals (Transact-SQL)