È un malinteso comune che DBTIMEZONE
è il fuso orario per SYSDATE
e SYSTIMESTAMP
SYSDATE
e SYSTIMESTAMP
vengono restituiti nel fuso orario del sistema operativo su cui risiede il server di database.
DBTIMEZONE
è il fuso orario (interno) di TIMESTAMP WITH LOCAL TIME
i valori. Non ne conosco alcun uso pratico. Nota, non puoi modificare DBTIMEZONE
sul tuo database se il database contiene una tabella con un TIMESTAMP WITH LOCAL TIME ZONE
colonna e la colonna contiene dati.
Se vuoi eseguire l'ora corrente a DBTIMEZONE
select SYSTIMESTAMP AT TIME ZONE DBTIMEZONE
from dual;
CURRENT_TIMESTAMP AT TIME ZONE DBTIMEZONE
funziona anche.
Vedi anche Come per gestire l'ora legale nel database Oracle