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

Zrzut i przywracanie PostgreSQL w innej strefie czasowej

Postgres typ danych timstamptz ( =timestamp with time zone ) przechowuje wewnętrznie wartości jako znacznik czasu UTC (wartość całkowita liczona w mikrosekundach od 2000 r.), co jest niezależne od strefy czasowej, w której te wartości są wyświetlane dla. To nie przechowywać wszelkie informacje o strefie czasowej, jak niektórzy mogą sądzić, błędnie oceniając nazwę. Możesz zrzucać i przywracać tyle, ile chcesz.

Co widzisz w Twoim kliencie zależy od ustawienia strefy czasowej sesji.

Uruchom (w tej samej sesji, aby uniknąć artefaktów):

SHOW timezone;

Jeśli widzisz localtime wtedy Postgres używa domyślnych ustawień systemu operacyjnego serwera.

Ustaw inną strefę czasową (w sesji z SET timezone = ...; , dla użytkownika lub globalnie w plikach konfiguracyjnych), aby zobaczyć inaczej sformatowane sygnatury czasowe. Pamiętaj, że ustawienie strefy czasowej w pliku zrzutu nie mają w tym przypadku jakikolwiek skutek, tylko ustawienie bieżącej sesji ma znaczenie.

Szczegółowe wyjaśnienie w tej powiązanej odpowiedzi:

Informacje o różnych sposobach ustawiania zmiennych środowiskowych:




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak pogrupować kolejne wiersze według nieunikalnej wartości

  2. Jak przekonwertować czas na datę w lokalnej strefie czasowej podczas zapytania

  3. Uzyskaj minimalną niezerową wartość w wielu kolumnach

  4. Zademonstruj wstrzyknięcie SQL w PL/pgSQL

  5. postgresql projekt bazy danych dla e-commerce