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

Dlaczego moja sygnatura czasowa została przesunięta w strefie czasowej?

Jeśli baza danych nie zawiera informacji o strefie czasowej, sterownik JDBC powinien traktować ją tak, jakby znajdowała się w lokalnej strefie czasowej JVM (patrz PreparedStatement.setDate(int, Data) ):

Javadoc i specyfikacja JDBC nie mówią wprost nic o ResultSet itp., ale aby zachować spójność, większość kierowców zastosuje tę regułę również do dat pobranych z bazy danych. Jeśli chcesz mieć wyraźną kontrolę nad używaną strefą czasową, będziesz musiał użyć różnych set/getDate/Time/Timestamp metody, które również akceptują Calendar obiekt we właściwej strefie czasowej.

Niektóre sterowniki udostępniają również właściwość połączenia umożliwiającą określenie strefy czasowej używanej podczas konwersji do/z bazy danych.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Użytkownicy nie będący superużytkownikami nie mogą się połączyć, jeśli serwer nie żąda hasła podczas korzystania z dblink

  2. ograniczenie rozmiaru/długości typu tablicy w PostgreSQL

  3. Rails 3, will_paginate, losowe, powtarzające się rekordy, Postgres, błąd setseed

  4. wykluczanie zduplikowanych pól w łączeniu

  5. Jak ograniczyć dostęp do bazy danych w PostgreSQL