USERENV 可以用来查看当前 SESSION 的相关信息,诸如是否拥有 DBA 权限(ISDBA)、当前会话的 SESSIONID 等。通常用的最多的是用来查看当前会话的 语言(LANGUAGE) 种类。

SQL> select userenv('language') from dual;

USERENV(
'LANGUAGE')
----------------------------------------------------
SIMPLIFIED CHINESE_CHINA.ZHS16GBK

    上面的 SQL 语句将会查询当前会话的语言种类,其返回的格式为

LANGUAGE_TERRITORY.CHARACTERSET

    USERENV 是为了满足向后兼容的需要而存在的。在 10.2SQLRef Oracle 推荐使用 SYS_CONTEXT 。用法如下

SQL> select sys_context('USERENV', 'LANGUAGE') from dual;

SYS_CONTEXT(
'USERENV','LANGUAG')
--------------------------------------------------------------
SIMPLIFIED CHINESE_CHINA.ZHS16GBK

    USERENV 作为 Oracle 内置的 命名空间(namespace) 不需要创建,可以直接使用。

相关文章:

  • 2022-12-23
  • 2022-03-07
猜你喜欢
  • 2021-08-18
  • 2022-12-23
  • 2022-12-23
  • 2022-03-04
  • 2021-12-07
  • 2021-05-02
  • 2021-07-15
相关资源
相似解决方案