Oracle SYS_CONTEXT() 函数使用指南
Oracle SYS_CONTEXT() 是一个内置函数,它返回当前时刻与给定上下文相关联的给定的参数的值。
Oracle SYS_CONTEXT() 语法
这里是 Oracle SYS_CONTEXT() 函数的语法:
SYS_CONTEXT('namespace', 'parameter' [, length ])
参数
- 'namespace'
- 
必需的。命名空间。 Oracle 内置了 2 个命名空间: USERENV(当前会话) 和SYS_SESSION_ROLES(指示当前是否为会话启用指定角色)。
- 'parameter'
- 
必需的。参数名称。 
- length
- 
可选的。返回值最大是 256 个字节,您可以使用此参数覆盖此值。 
返回值
Oracle SYS_CONTEXT() 函数返回当前时刻与给定上下文相关联的给定的参数的值。
如果任意一个参数为 NULL, SYS_CONTEXT() 将返回 NULL。
Oracle SYS_CONTEXT() 示例
这里有几个展示了 Oracle SYS_CONTEXT() 函数用法的示例。
获取登录名
以下语句返回登录到数据库的用户的名称:
SELECT
    SYS_CONTEXT('USERENV', 'SESSION_USER')
FROM dual;
输出:
SYS_CONTEXT('USERENV','SESSION_USER')
________________________________________
SYSTEMNULL 参数
如果任意一个参数为 NULL, SYS_CONTEXT() 将返回 NULL。
SET NULL 'NULL';
SELECT
    SYS_CONTEXT(NULL, NULL) NULL_1,
    SYS_CONTEXT(NULL, NULL, NULL) NULL_2
FROM dual;
输出:
NULL_1    NULL_2
_________ _________
NULL      NULL在本示例中,我们使用 SET NULL 'NULL'; 语句将 NULL 值显示为 'NULL' 字符串。
结论
Oracle SYS_CONTEXT() 是一个内置函数,它返回当前时刻与给定上下文相关联的给定的参数的值。
您可以从此处查看此函数的更多信息。