DATABASE_PRINCIPAL_ID (Transact-SQL)

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

この関数では、現在のデータベースでのプリンシパルの ID 番号が返されます。 プリンシパルの詳細については、「プリンシパル (データベース エンジン)」を参照してください。

Transact-SQL 構文表記規則

構文

DATABASE_PRINCIPAL_ID ( 'principal_name' )  

Note

SQL Server 2014 (12.x) 以前のバージョンの Transact-SQL 構文を確認するには、以前のバージョンのドキュメントを参照してください。

引数

principal_name
プリンシパルを表す sysname 型の式。 principal_name を省略すると、DATABASE_PRINCIPAL_ID によって現在のユーザーの ID が返されます。 DATABASE_PRINCIPAL_ID には括弧が必要です。

戻り値の型

int
データベース プリンシパルが存在しない場合は NULL。

注釈

DATABASE_PRINCIPAL_ID は、選択リスト、WHERE 句、式が使えるあらゆる場所で使用します。 詳細については、「式 (Transact-SQL)」を参照してください。

A. 現在のユーザーの ID を取得する

この例では、現在のユーザーのデータベース プリンシパル ID が返されます。

SELECT DATABASE_PRINCIPAL_ID();  
GO  

B. 指定されたデータベース プリンシパルの ID を取得する

この例では、データベース ロール db_owner のデータベース プリンシパル ID が返されます。

SELECT DATABASE_PRINCIPAL_ID('db_owner');  
GO  

関連項目

プリンシパル (データベース エンジン)
権限の階層 (データベース エンジン)
sys.database_principals (Transact-SQL)