適用対象:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Microsoft Fabric SQL Database
この関数では、現在のデータベースでのプリンシパルの ID 番号が返されます。 プリンシパルの詳細については、「プリンシパル (データベース エンジン)」を参照してください。
構文
DATABASE_PRINCIPAL_ID ( 'principal_name' )
引数
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)