SYS_CONTEXT用于返回当前Namespace(命名空间)的相关参数。
语法
SYS_CONTEXT(namespace,parameter)
参数
参数 | 说明 |
namespace | 命名空间。目前仅支持唯一取值:USERENV(描述当前会话)。 |
parameter | 命名空间的相关参数。目前支持的取值,请参见parameter列表。 |
parameter列表
参数 | 说明 |
SESSIONID | 会话ID。 |
SESSION_SCHEMA | 会话(Session)的当前默认Schema。 |
CURRENT_USERID | 当前用户的用户ID。 |
LANG | 当前数据库的编码(ENCODING)。 |
OS_USER | 当前后端的OS认证用户。 |
TERMINAL | 应用程序名称(Application_name)。 |
CLIENT_IDENTIFIER | 客户端ID。 |
MODULE | 会话中当前的模块(DBMS_APPLICATION_INFO.MODULE)。具体内容,请参见DBMS_APPLICATION_INFO。 |
ACTION | 会话中当前的操作(DBMS_APPLICATION_INFO.ACTION)。具体内容,请参见DBMS_APPLICATION_INFO。 |
ISDBA | 当前账号权限是否为superuser或polar_superuser。 |
DB_NAME | 当前数据库的名称。 |
DATABASE_ROLE | 数据库角色,支持的角色类型如下:
|
SESSION_USERID | 当前会话的用户ID。 |
CLIENT_INFO | 会话中client_info字段(DBMS_APPLICATION_INFO.CLIENT_INFO)。具体内容,请参见DBMS_APPLICATION_INFO。 |
HOST | 当前会话的客户端主机名(Hostname)。 |
IP_ADDRESS | 当前会话的客户端IP地址。 |
SERVER_HOST | 当前会话的服务端主机名(Hostname)。 |
使用示例
当parameter参数为SESSIONID时,示例如下:
SELECT SYS_CONTEXT('USERENV','SESSIONID');