sql >> Databáze >  >> RDS >> Oracle

sysdate a dbtimezone se liší v databázi Oracle

Je běžné nedorozumění, že DBTIMEZONE je časové pásmo pro SYSDATE a SYSTIMESTAMP

SYSDATE a SYSTIMESTAMP jsou vráceny v časové zóně operačního systému, ve kterém je umístěn databázový server.

DBTIMEZONE je (interní) časové pásmo TIMESTAMP WITH LOCAL TIME hodnoty. Neznám žádné praktické využití. Poznámka:DBTIMEZONE nelze změnit ve vaší databázi, pokud databáze obsahuje tabulku s TIMESTAMP WITH LOCAL TIME ZONE a sloupec obsahuje data.

Pokud chcete aktuální čas v DBTIMEZONE, spusťte

select SYSTIMESTAMP AT TIME ZONE DBTIMEZONE 
from dual;

CURRENT_TIMESTAMP AT TIME ZONE DBTIMEZONE také funguje.

Viz také Jak pro zpracování Day Light Saving v databázi Oracle



  1. Dílčí dotaz SELECT s podmínkou WHERE v Yii2 find() / QueryBuilder

  2. Jak importovat soubor Excel do databáze mysql z PHP

  3. MySQL - BETWEEN nevybere správné výsledky

  4. Proč používat frameworky? Přesvědčte mě, že bych měl přijít na Zend Framework a používat jej