DATABASE_PRINCIPAL_ID (Transact-SQL)

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure 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' )  

Remarque

Pour afficher la syntaxe Transact-SQL pour SQL Server 2014 (12.x) et versions antérieures, consultez la Documentation sur les versions antérieures.

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)