Der er faktisk 3 tidszoner her, ikke 2
- tidszonen for sessionen/klienten
- Vist i SESSIONTIMEZONE
- Dette er tidszonen CURRENT_DATE, LOCALTIMESTAMP og CURRENT_TIMESTAMP. Forskellen mellem disse 3 er returtypen, de returnerer henholdsvis DATO, TIDSSTYKKE og TIDSSTYKKE MED TIDZONE)
- Databasens tidszone
- Vist i DBTIMEZONE
- Dette er den tidszone, der bruges til den interne lagring af TIMESTAMP WITH LOCAL TIME ZONE-værdier. Bemærk, at værdier konverteres til/fra sessionens tidszone ved indsæt/vælg, så det faktisk ikke er så vigtigt, som det ser ud til
- Dette er IKKE tidszonen for SYSDATE/SYSTIMESTAMP
- Databasens OS-tidszone
- I unix er det baseret på TZ-variablen, når Oracle startes
- Dette er tidszonen for SYSDATE og SYSTIMESTAMP
I dit første eksempel kan jeg se, at sessionens TZ er UTC-6, databasens TZ er UTC, og databasens OS-tidszone er UTC-6.
I dit andet eksempel kan jeg se, at sessionens TZ er UTC-6, databasens TZ er UTC+2, og databasens OS-tidszone er UTC+1.