代码之家  ›  专栏  ›  技术社区  ›  Thorsten Kettner

会话如何获得其初始时区

  •  2
  • Thorsten Kettner  · 技术社区  · 6 年前

    当我签入会话时区时 SQL开发人员 具有

    select sessiontimezone from dual;
    

    我明白了 'Europe/Berlin' . 当我也这样做的时候 SQL*加号 我明白了 '+02:00'

    这在处理 TIMESTAMP WITH LOCAL TIMEZONE

    系统信息:

    • SQL开发人员:18.1.0.095.1630
    • Oracle DBMS:Oracle Database 11g Enterprise Edition 11.2.0.4.0-64位产品
    • 操作系统客户端:Microsoft Windows 10 Professional
    1 回复  |  直到 6 年前
        1
  •  1
  •   Community CDub    5 年前

    这个 documentation 仅列出环境变量 ORA_SDTZ .

    但是,它来自以下设置:

    • 注册表项 HKCU\SOFTWARE\ORACLE\KEY_{Oracle Home Name}\ORA_SDTZ

    • 注册表项 HKLM\SOFTWARE\ORACLE\KEY_{Oracle Home Name}\ORA_SDTZ

      HKLM\SOFTWARE\Wow6432Node\ORACLE\KEY_{Oracle Home Name}\ORA_SDTZ )

    • 环境变量 奥拉乌兹

    • 数据库时区,如果没有从上面找到(只是一个假设)

    您的客户端应用程序可能有一些会话时区的附加源,请参阅 How to change the timezone of Oracle SQL Developer / Oracle Data Modeler?

    环境变量应具有最高优先级。