Sdílet prostřednictvím


DATABASE_PRINCIPAL_ID (Transact-SQL)

platí pro:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analyticssql database v Microsoft Fabric

Tato funkce vrací ID číslo principu v aktuální databázi. Více informací o principals naleznete v sekci Principals (Database Engine).

Transact-SQL konvence syntaxe

Syntaxe

DATABASE_PRINCIPAL_ID ( 'principal_name' )  

Arguments

principal_name
Výraz typu sysname, který reprezentuje principála. Když principal_name vynechá, vrátí DATABASE_PRINCIPAL_ID se ID aktuálního uživatele. DATABASE_PRINCIPAL_ID vyžaduje závorky.

Návratové typy

int
NULL, pokud princip databáze neexistuje.

Poznámky

Použijte DATABASE_PRINCIPAL_ID v seznamu výběrů, v klauzuli WHERE nebo na jakémkoli místě, které umožňuje výraz. Více informací viz Výrazy (Transact-SQL).

Examples

A. Získání ID aktuálního uživatele

Tento příklad vrací ID principu databáze aktuálního uživatele.

SELECT DATABASE_PRINCIPAL_ID();  
GO  

B. Získání ID specifikovaného principu databáze

Tento příklad vrací ID databázového principu pro roli db_ownerdatabáze .

SELECT DATABASE_PRINCIPAL_ID('db_owner');  
GO  

Viz také

Hlavní subjekty (databázový stroj)
Hierarchie oprávnění (databázový stroj)
sys.database_principals (Transact-SQL)