我正在使用Oracle Developer和Oracle 11g(Oracle Database 11g企业版11.2.0.3.0版 - 生产版)
select SESSIONTIMEZONE from DUAL;
SQLPLUS / system_config_tbl_load.sql中的结果:-4:00
结果在SQL Developer:America / New_York
在SQL Developer和SQLPLUS中给出了不同的结果 我想在SQLPLUS中看到该区域。
此外,我必须为多个地点执行此操作,并且无法使用" ALTER SESSION SET time_zone =' America / New_York'"
答案 0 :(得分:0)
我认为SQL Developer在您打开新连接时会产生一个隐含{。}}。
我看到了几个解决方案:
ALTER SESSION SET time_zone=...
数据库触发器:
TZ
END;
答案 1 :(得分:0)
您可以在应用程序中或在此触发器中编写一个函数,如下所示:
IF SESSIONTIMEZONE = '-4:00' THEN
execute immediate 'ALTER SESSION SET time_zone = ''America/New_York''';
ELSIF SESSIONTIMEZONE = '-5:00' THEN
execute immediate ...
END IF;