PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Postgres UTC format daty i epoka, odwrócenie znaku

To

1970-01-01 00:00:00+01

to sygnatura czasowa ISO 8601 z przesunięciem o 1 godzinę, a +1 oznacza na wschód od Greenwich. Przesunięcia w tych

01-01-1970 00:00:00 UTC+01
1970-01-01 00:00:00 UTC+01
1970-01-01 00:00:00 XXX+01
1970-01-01 00:00:00 HAHA+01
1970-01-01 00:00:00 Pancakes+01

będą interpretowane jako strefy czasowe w stylu POSIX, gdzie +1 oznacza zachód z Greenwich:

PostgreSQL zaakceptuje specyfikacje stref czasowych w stylu POSIX w postaci STDoffset lub STDoffsetDST, gdzie STD to skrót strefy, offset to numeryczne przesunięcie w godzinach na zachód od UTC

a te przychodzą nawet z ostrzeżeniem:

Należy być ostrożnym, ponieważ funkcja strefy czasowej w stylu POSIX może prowadzić do cichego akceptowania fałszywych danych wejściowych, ponieważ nie ma sprawdzania sensowności skrótów stref. Na przykład SET TIMEZONE TO FOOBAR0 zadziała, pozostawiając system skutecznie przy użyciu dość osobliwego skrótu UTC. Inną kwestią, o której należy pamiętać, jest to, że w nazwach stref czasowych POSIX stosuje się dodatnie przesunięcia dla lokalizacji na zachód od Greenwich. Wszędzie indziej PostgreSQL przestrzega konwencji ISO-8601, zgodnie z którą dodatnie przesunięcia stref czasowych znajdują się na wschód od Greenwich.

Zwróć uwagę na różnicę między zachodem a wschodem.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Prosta zaszyfrowana biblioteka arytmetyczna (SEAL) i pieczęć::Zmienna zaszyfrowanego tekstu

  2. Jak stworzyć użytkownika za pomocą PSQL

  3. Jak działa funkcja Floor() w PostgreSQL

  4. Jak działa funkcja Sign() w PostgreSQL

  5. Niezbędne monitorowanie PostgreSQL — część 1