Tout d'abord, assurez-vous de définir vos colonnes et variables d'horodatage en tant que TIMESTAMP WITH TIME ZONE
(ou timestamptz
pour faire court). Dans PostgreSQL, cela n'entraîne pas la sauvegarde d'un horodatage; mais en fait un point fixe dans le temps, stocké en UTC. Vous pouvez le voir AT TIME ZONE
de votre choix avec une sémantique propre. TIMESTAMP WITHOUT TIME ZONE
(c'est ce que vous obtenez si vous dites simplement TIMESTAMP
) n'est pas un point fixe dans le temps jusqu'à ce qu'il soit résolu par rapport à un fuseau horaire, et il est donc beaucoup plus difficile de travailler avec.
La page de documentation que vous citez concernant les fuseaux horaires provient d'une très ancienne version de PostgreSQL qui n'est plus prise en charge. Peut-être que cette page vous sera plus utile :
http://www.postgresql.org/docs/current /interactive/datetime-config-files.html