次の方法で共有


DATABASE_PRINCIPAL_ID (Transact-SQL)

適用対象: SQL Server Azure SQL データベース Azure SQL Managed Instance Azure Synapse Analytics

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

Transact-SQL 構文表記規則

構文

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)