Suponha que no PLSQL o código abaixo venha trazendo o horário errado.
v_sysdate DATE := SYSDATE;
v_systimestamp TIMESTAMP := SYSTIMESTAMP;
Você poderá verificar que possivelmente o DBTIMEZONE esta indicando diferença do SESSIONTIMEZONE através da seguinte consulta.
select DBTIMEZONE, SESSIONTIMEZONE ,current_timestamp, systimestamp from dual;
Consertando
-- DBTIMEZONE ERRADO sendo que o -02:00 pode variar de acordo com o sanduíche que estejas. < piada de nerd >
ALTER DATABASE SET TIME_ZONE='-02:00';
Mas não consertou ????!!!!!
Claro né, só vai conserta depois de um SHUTDOWN IMMEDIATE e em seguida STARTUP.
Se você esta na duvida de como faz isso entra la no sqlplus.
Como eu entro no sqlplus
sqlplus sys as sysdba
Boa sorte ai.