Ich möchte den aktuellen Namen der Zeitzone erhalten. Was ich bereits erreicht ist, die UTC_Offset/die Zeitzone Abkürzung über zu bekommen:Wie erhalte ich den Namen der aktuellen Zeitzone in Postgres 9.3?
SELECT * FROM pg_timezone_names WHERE abbrev = current_setting('TIMEZONE')
Das gibt mir alle Kontinent/Kapital Kombinationen für diese Zeitzone aber nicht die genaue Zeitzone. Zum Beispiel bekomme ich:
Der Server ist in Berlin und ich möchte den Zeitzone Namen des Servers zu bekommen
Das Problem, das ich mit CET habe, dass es immer UTC + 01: 00 ist und DST iirc nicht berücksichtigt.
Der richtige Zeitzone Name für Berlin oder Amsterdam ist Mitteleuropäische Zeit (MEZ). Im Allgemeinen sind Zeitzonennamen und Abkürzungen nicht gut definiert; Während es einen ISO-Standard gibt, verwenden viele Länder ihre eigenen Definitionen. Die PostgreSQL-Unterstützung ist ebenfalls nicht vollständig, siehe http://www.postgresql.org/docs/9.4/static/datetime-config-files.html für einige Details. – Patrick
In der Tabelle pg_timezone_names ist CET als Abkürzung und z. B. "Europe/Berlin" als Name definiert. Ich brauche den Namen und nicht die Abkürzung. – Deutro
Der Link, den ich in meinem vorherigen Kommentar angegeben habe, zeigt Ihnen, wie Sie die Dateien bearbeiten können, um das zu liefern, was Sie benötigen. Das ist so gut wie es geht. – Patrick