如何从 SQLPLUS 获取时区区域? [英] How can I get Time Zone Region from SQLPLUS?
问题描述
我使用的是 Oracle Developer 和 Oracle 11g(Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production)
I am using Oracle Developer and Oracle 11g (Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production)
select SESSIONTIMEZONE from DUAL;
SQLPLUS/system_config_tbl_load.sql 中的结果:-4:00
SQL Developer 的结果:America/New_York
Result in SQLPLUS/system_config_tbl_load.sql: -4:00
Result in SQL Developer: America/New_York
在 SQL Developer 和 SQLPLUS 中给出不同的结果.
我想在 SQLPLUS 中查看该区域.
gives different results in SQL Developer and SQLPLUS.
I want to see the region in SQLPLUS.
此外,我必须为多个位置执行此操作,并且无法选择使用ALTER SESSION SET time_zone = 'America/New_York'"更改时区
Additionally I have to do this for multiple locations and do not have the option of changing the Time Zone using "ALTER SESSION SET time_zone = 'America/New_York'"
推荐答案
您可以在应用程序或触发器中编写函数,如下所示:
You could write a function in your application or in this trigger like this:
IF SESSIONTIMEZONE = '-4:00' THEN
execute immediate 'ALTER SESSION SET time_zone = ''America/New_York''';
ELSIF SESSIONTIMEZONE = '-5:00' THEN
execute immediate ...
END IF;
这篇关于如何从 SQLPLUS 获取时区区域?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!