Het is een veelvoorkomend misverstand dat DBTIMEZONE
is de tijdzone voor SYSDATE
en SYSTIMESTAMP
SYSDATE
en SYSTIMESTAMP
worden geretourneerd in de tijdzone van het besturingssysteem waarop de databaseserver zich bevindt.
DBTIMEZONE
is de (interne) tijdzone van TIMESTAMP WITH LOCAL TIME
waarden. Ik ken er geen praktisch nut van. Let op, u kunt DBTIMEZONE
niet wijzigen op uw database als de database een tabel bevat met een TIMESTAMP WITH LOCAL TIME ZONE
kolom en de kolom bevat gegevens.
Als u de huidige tijd op DBTIMEZONE wilt uitvoeren
select SYSTIMESTAMP AT TIME ZONE DBTIMEZONE
from dual;
CURRENT_TIMESTAMP AT TIME ZONE DBTIMEZONE
werkt ook.
Zie ook Hoe om daglichtbesparing in Oracle-database te verwerken