[gelöst] PostgreSQL Problem mit Zeitzonen und Formatierungen
Verfasst: Di 24. Jan 2017, 19:44
Hallo Werte Gemeinde,
bisher habe ich mich, durch suchen in Foren, zu Problemlösungen gehangelt. Es kam dieser - heutige Tag, an dem mir alles sehr suspekt ist und ich keine Antworten auf meine Fragen finden kann.
Ich nutze LibreOffice Base mit einer Postgresql Datenbank. Mein Projekt ist eine Zeiterfassung (Stechuhr).
Die Zeit erfasse ich aktuell mit einem BQ Aquaris und Ubuntu Touch. Die Ausarbeitung mache ich aktuell an einem Windows 7 Rechner. Wenn ich zufrieden bin kopiere ich die .odb Datei auf das Tablet. Ansich funktioniert alles einwandfrei (Formular mit Makros).
Gestern hatte ich das Problem das wenn ich auf dem Tablet eine Zeit erfasst habe, die erfasste Zeit, eine Stunde zurück lag. Am Windows Rechner war sie aktuell.
Ich las dann das man immer mit Zeitzonen Zeiten erfassen sollte, da es sonst ein durcheinander geben könnte. Selbe odb auf Windows 7 und auf Ubuntu Touch brachten dann auch unter dem einen account das selbe Ergebnis. Ich war happy!
Heute wollte ich die Auswertung mittels eines anderen postgresql accounts erstellen. Und hier ist mein Problem:
Ich sehe den Tabelleneintrag anders als ich ihn hier her kopiere fällt mir gerade auf. Das verstehe ich noch weniger. Darum beide Varianten:
Datum unter account 1, das sehe ich: 2017-01-24
Datum unter account 1, das kopiere ich: 2017-01-24 18:37:09.397715+01 (das wäre Ihr Preis gewesen!)
Zeit unter account 1, das sehe ich: 17:37:09.397715+00
Zeit unter account 1, das kopiere ich: 17:37:09.397715+00
Datum unter account 2, das sehe ich: 24.01.17 18:37
Datum unter account 2, das kopiere ich: 24.01.17 18:37
Zeit unter account 2, das sehe ich: 18:37:09
Zeit unter account 2, das kopiere ich: 18:37:09
Da es sich um die selbe Tabelle handelt ist im pgAdmin alles gleich formatiert. Bei diesem Beispiel das Datum als "timestamp with timezone" und die zeit als "time with timezone"
Wenn ich mir die Formatierung in Base anschaue (Tabelle bearbeiten) ist da ein Unterschied:
Account 1: "Memo [ timestamptz ]" und "Memo [ timetz ]"
Account 2: "Datum/Zeit [timestamp]" und "Zeit [time]"
Was könnte der Grund für diese Unterschiede sein und wie umgehe ich das am besten in Zukunft?
Gruss OmenCube
bisher habe ich mich, durch suchen in Foren, zu Problemlösungen gehangelt. Es kam dieser - heutige Tag, an dem mir alles sehr suspekt ist und ich keine Antworten auf meine Fragen finden kann.
Ich nutze LibreOffice Base mit einer Postgresql Datenbank. Mein Projekt ist eine Zeiterfassung (Stechuhr).
Die Zeit erfasse ich aktuell mit einem BQ Aquaris und Ubuntu Touch. Die Ausarbeitung mache ich aktuell an einem Windows 7 Rechner. Wenn ich zufrieden bin kopiere ich die .odb Datei auf das Tablet. Ansich funktioniert alles einwandfrei (Formular mit Makros).
Gestern hatte ich das Problem das wenn ich auf dem Tablet eine Zeit erfasst habe, die erfasste Zeit, eine Stunde zurück lag. Am Windows Rechner war sie aktuell.
Ich las dann das man immer mit Zeitzonen Zeiten erfassen sollte, da es sonst ein durcheinander geben könnte. Selbe odb auf Windows 7 und auf Ubuntu Touch brachten dann auch unter dem einen account das selbe Ergebnis. Ich war happy!
Heute wollte ich die Auswertung mittels eines anderen postgresql accounts erstellen. Und hier ist mein Problem:
Ich sehe den Tabelleneintrag anders als ich ihn hier her kopiere fällt mir gerade auf. Das verstehe ich noch weniger. Darum beide Varianten:
Datum unter account 1, das sehe ich: 2017-01-24
Datum unter account 1, das kopiere ich: 2017-01-24 18:37:09.397715+01 (das wäre Ihr Preis gewesen!)
Zeit unter account 1, das sehe ich: 17:37:09.397715+00
Zeit unter account 1, das kopiere ich: 17:37:09.397715+00
Datum unter account 2, das sehe ich: 24.01.17 18:37
Datum unter account 2, das kopiere ich: 24.01.17 18:37
Zeit unter account 2, das sehe ich: 18:37:09
Zeit unter account 2, das kopiere ich: 18:37:09
Da es sich um die selbe Tabelle handelt ist im pgAdmin alles gleich formatiert. Bei diesem Beispiel das Datum als "timestamp with timezone" und die zeit als "time with timezone"
Wenn ich mir die Formatierung in Base anschaue (Tabelle bearbeiten) ist da ein Unterschied:
Account 1: "Memo [ timestamptz ]" und "Memo [ timetz ]"
Account 2: "Datum/Zeit [timestamp]" und "Zeit [time]"
Was könnte der Grund für diese Unterschiede sein und wie umgehe ich das am besten in Zukunft?
Gruss OmenCube