説明
この関数は、現在時刻におけるコンテキスト名前空間に関連付けられたパラメータの値を返します。
構文
SYS_CONTEXT('namespace', 'parameter' [, length ])
パラメータの説明
パラメータ |
説明 |
|---|---|
| namespace | 名前空間を指定します。任意の USERENV をサポートします。 |
| parameter | 名前空間に関連付けられたパラメータを指定します。現在サポートされているパラメータは、次の表 名前空間 USERENV の定義済みパラメータ のとおりです。 |
| length | 戻り値の長さをバイト単位で指定します。オプションです。値の範囲は [1, 4000] で、デフォルトの長さは256バイトです。 |
名前空間 USERENV の定義済みパラメータ
パラメータ名 |
戻り値 |
|---|---|
| CON_ID | CDB(Container DataBase)に接続する際にクエリを実行した場合、現在のコンテナIDを返します。それ以外の場合は、0 を返します。 |
| CON_NAME | CDBに接続する際にクエリを実行した場合、現在のコンテナ名を返します。それ以外の場合は、DB_NAME パラメータで指定されたデータベース名を返します。 |
| CURRENT_SCHEMA | 現在アクティブなデフォルトスキーマ名。 |
| CURRENT_SCHEMAID | 現在アクティブなデフォルトスキーマID。 |
| CURRENT_USER | 現在権限が有効なデータベースユーザー名。 |
| CURRENT_USERID | 現在権限が有効なデータベースユーザーID。 |
| DB_NAME | データベース名。 |
| INSTANCE | 現在のインスタンス識別子。 |
| INSTANCE_NAME | 現在のインスタンス名。 |
| IP_ADDRESS | クライアントマシンのIPアドレス。 |
| LANG | 言語の略称名で、LANGUAGE パラメータよりも短い形式です。 |
| LANGUAGE | 現在のセッションで使用されている言語と地域、およびデータベースの文字セット。 |
| SESSION_USER | ログインしたデータベースユーザー名。この値はセッション全体を通じて変更されません。 |
| SESSION_USERID | ログインしたデータベースユーザーID。 |
| SID | SESSIONID | 現在のセッションのクライアントセッションIDを取得します。このIDは、クライアント上のセッションを一意に識別するものです。 |
戻り値の型
VARCHAR2 データ型を返します。
例
名前空間 USERENV 内のセッションのクライアントセッションIDを確認します。
obclient [SYS]> SELECT SYS_CONTEXT ('USERENV', 'SESSIONID') AS Client_Session_ID FROM DUAL;
または
obclient [SYS]> SELECT SYS_CONTEXT ('USERENV', 'SID') AS Client_Session_ID FROM DUAL;
実行結果は次のとおりです:
+-------------------+
| CLIENT_SESSION_ID |
+-------------------+
| 3221488043 |
+-------------------+
1 row in set
関連ドキュメント
SHOW PROCESSLIST ステートメントを使用して、現在のデータベース内のセッション数とセッションIDを確認することもできます。詳細については、テナントセッションの確認を参照してください。