【发布时间】:2018-10-29 19:41:07
【问题描述】:
我的 Windows 服务器上安装了 oracle 12c WebLogic 和 Oracle 12c 数据库。 在我的数据库上,dbtimezone 给了我我想要的 +00:00,但是在我的表单构建器上,当我运行表单时它需要 -5:50 时间。
例如,如果我在 DateTime 字段中输入 16:30 时间,然后在表单字段中它会自动使用 10:00,这意味着它正在转换为 -5:30。
和之前一样,我的数据库时区也是 -5:30 但后来我将时区更改为 +00:00 所以数据库时区显示正确,但 oracle 表单时区仍然不正确。
任何帮助将不胜感激。
【问题讨论】:
-
你服务器的timezone settings是什么?
-
我的服务器时区设置是 (UTC +5:30) 印度时区。
-
好的,谢谢您的检查。现在请在您的 WebLogic 服务器中运行这个简单的程序,并从日志中检索它的输出:
TimeZone tz = TimeZone.getDefault(); System.out.println( String.format("Time zone=%s, raw offset = %s, daylight savings = %s ", tz.getDisplayName(), tz.getRawOffset(), tz.useDaylightTime() ));这将告诉您服务器上配置了哪些时区设置(jdbc 驱动程序从服务器的 JVM 借用这些设置)。 -
DBTIMEZONE与任何显示值都不相关,它只是TIMESTAMP WITH LOCAL TIME ZONE数据类型的内部时区,请参阅stackoverflow.com/questions/29271224/… -
Oracle 表单运行时发生的问题,因为它将 DateTime 字段转换为时区 -5:30,就像我输入 16:00 一样,一旦我转到下一个字段,它就会变为10:30 时间。这个问题出现在 oracle 形式 12c 中。
标签: oracle oracle12c weblogic12c oracleforms