Det finns faktiskt 3 tidszoner här, inte 2
- tidszonen för sessionen/klienten
- Visas i SESSIONTIMEZONE
- Detta är tidszonen CURRENT_DATE, LOCALTIMESTAMP och CURRENT_TIMESTAMP. Skillnaden mellan dessa 3 är returtypen, de returnerar ett DATUM, TIMESTAMP respektive TIMESTAMP WITH TIME ZONE)
- Databasens tidszon
- Visas i DBTIMEZONE
- Detta är den tidszon som används för den interna lagringen av TIMESTAMP WITH LOCAL TIME ZONE-värden. Observera att värden konverteras till/från sessionens tidszon vid insert/select så det är faktiskt inte så viktigt som det verkar
- Detta är INTE tidszonen för SYSDATE/SYSTIMESTAMP
- Databasens OS-tidszon
- I unix är den baserad på TZ-variabeln när Oracle startas
- Detta är tidszonen för SYSDATE och SYSTIMESTAMP
I ditt första exempel kan jag se att sessionens TZ är UTC-6, databasen TZ är UTC och databasens OS-tidszon är UTC-6.
I ditt andra exempel kan jag se att sessionens TZ är UTC-6, databasen TZ är UTC+2 och databasens OS-tidszon är UTC+1.