Warum behandelt postgre date nicht wie ein date?

T

Thallius

Guest
Hi,

ich habe eine Spalte im Format date angelegt. Wenn ich nun einen Insert auf die Spalte mache mit "2022-03-03" bekomme ich "2022-03-02" in die Spalte geschrieben. Was soll denn der Mist? Wahrscheinlich rechnet der im Hintergrund trotzdem mit Uhrzeit und da ist halt meine eingestellt Zeitzone 1 Stunde hinter UTC und er zieht einfach mal eine Stunde ab von 0uhr und ist dann einen tag vorher?

Sorry aber dann brauch ich kein date format sondern kann mich gleich mit timestamp und Zeitzonen rumschlagen. Was bei einem Geburtsdatum übrigens echt bescheuert ist.
 
Werbung:
Was soll denn der Mist? Wahrscheinlich rechnet der im Hintergrund trotzdem mit Uhrzeit und da ist halt meine eingestellt Zeitzone 1 Stunde hinter UTC und er zieht einfach mal eine Stunde ab von 0uhr und ist dann einen tag vorher?
Kannst Du das NACHVOLLZIEHBAR darlegen? Bist Du Dir sicher, daß nicht z.B. das in PHP schon passiert? Und warum 0 Uhr, wenn es doch ein DATE ist?
 
Kannst Du das NACHVOLLZIEHBAR darlegen? Bist Du Dir sicher, daß nicht z.B. das in PHP schon passiert? Und warum 0 Uhr, wenn es doch ein DATE ist?
Ich übergebendem query einen String mit „2022-03-03“ im prepared statement und in der DB steht dann „2022-03-02“.
das ganze mache ich mit nodejs Express und querydB(). Vielleicht meint ja node das es den String in ein Datum mit Zeit wandeln muss bevor es diesen als prepared statement and die dB gibt aber das wäre genauso schwachsinning
 
Werbung:
Wahrscheinlich rechnet der im Hintergrund trotzdem mit Uhrzeit und da ist halt meine eingestellt Zeitzone 1 Stunde hinter UTC und er zieht einfach mal eine Stunde ab von 0uhr und ist dann einen tag vorher?
Klingt irgendwie möglich, kann aber nicht passieren, wenn man eine konstanten Wert in eine Spalte schreibt.
Was Du beschreibst wäre denkbar, wenn man z.B. mit einer Zeitfunktion arbeitet und die als Datum in eine Spalte einträgt:
insert .. values(now()::date ..
 
Zurück
Oben