Partage via


DATABASE_PRINCIPAL_ID (Transact-SQL)

S’applique à : SQL Server base de données Azure SQL Azure SQL Managed Instance Azure Synapse Analytics

Cette fonction retourne le numéro d’ID d’un principal de la base de données active. Pour plus d’informations sur les principaux, consultez Principaux (moteur de base de données).

Conventions de la syntaxe Transact-SQL

Syntaxe

DATABASE_PRINCIPAL_ID ( 'principal_name' )  

Arguments

principal_name
Expression de type sysname qui représente le principal. Quand principal_name est omis, DATABASE_PRINCIPAL_ID retourne l’ID de l’utilisateur actif. DATABASE_PRINCIPAL_ID nécessite les parenthèses.

Types de retour

int
NULL si le principal de la base de données n’existe pas.

Remarques

Utilisez DATABASE_PRINCIPAL_ID dans une liste de sélection, une clause WHERE ou n’importe quel emplacement qui autorise une expression. Pour plus d’informations, consultez Expressions (Transact-SQL).

Exemples

R. Extraction de l'ID de l'utilisateur actuel

Cet exemple retourne l’ID de principal de base de données de l’utilisateur actif.

SELECT DATABASE_PRINCIPAL_ID();  
GO  

B. Extraction de l'ID d'un principal de base de données spécifique

Cet exemple retourne l’ID de principal de base de données du rôle de base de données db_owner.

SELECT DATABASE_PRINCIPAL_ID('db_owner');  
GO  

Voir aussi

Principaux (moteur de base de données)
Hiérarchie des autorisations (moteur de base de données)
sys.database_principals (Transact-SQL)