Ich habe eine Anwendung, die in eine Oracle Data-Datentypspalte über:
hochlädt %Vor%Ich muss jetzt das folgende Format und die Zeitzone aus dieser Datenspalte ziehen: "JJJJ-MM-TT HH24: MI: SS CDT"
Hinweis: Das Datum wird in CST hochgeladen, muss jedoch in CDT zurückgegeben werden.
Ich habe Google aber nur folgende Datentypen gefunden:
%Vor%Ich habe auch folgendes versucht:
%Vor%Wie kann ich dieses Problem lösen?
In Ihrer Frage gibt es ein wenig Verwirrung:
Date
-Datentyp speichert die Zeitzonenkomponente nicht. Diese Information wird abgeschnitten und für immer verloren, wenn Sie TIMESTAMP WITH TIME ZONE
in Date
einfügen. TO_CHAR
Funktion. In Oracle hat a Date
kein Format : Es ist ein Zeitpunkt. TO_TIMESTAMP_TZ
verwenden, um a zu konvertieren VARCHAR2
zu TIMESTAMP
, aber dies konvertiert nicht Date
in TIMESTAMP
. FROM_TZ
, um die Informationen zur Zeitzone zu einem TIMESTAMP
(oder einem Date
) hinzuzufügen. CST
eine Zeitzone, CDT
jedoch nicht. CDT
ist eine Sommerzeit-Information. CST/CDT
( -05:00
) und CST/CST
( -06:00
) natürlich unterschiedliche Werte haben, aber die Zeitzone CST
erbt standardmäßig die Sommerzeit-Information in Abhängigkeit vom Datum . Daher ist Ihre Konvertierung möglicherweise nicht so einfach wie es aussieht.
Angenommen, Sie möchten ein Date
d
, von dem Sie wissen, dass es in der Zeitzone CST/CST
gültig ist, in das Äquivalent in der Zeitzone CST/CDT
konvertieren, würden Sie Folgendes verwenden:
Mein Standard-Zeitstempelformat wurde hier verwendet. Ich kann ein Format explizit angeben:
%Vor%