из среды запуска как в mysql ?
Хмм... какой клиент? Произвольная программа, использующая сервер PostgreSQL? Такого не может быть (кто захочет — перебьёт).
В 9.1 был функционал определения timezone через - C library function localtime() If timezone is not specified in postgresql.conf or as a server command-line option, the server attempts to use the value of the TZ environment variable as the default time zone. If TZ is not defined or is not any of the time zone names known to PostgreSQL, the server attempts to determine the operating system's default time zone by checking the behavior of the C library function localtime(). The default time zone is selected as the closest match among PostgreSQL's known time zones. (These rules are also used to choose the default value of log_timezone, if not specified.)
Не понимаю, зачем это нужно. В базе просто храните время в таймзоне сервера (timestamp with timezone). При показе времени юзеру просто конвертите в его таймзону. Или я что-то не так понял?
Стандартное решение — в базе просто хранить timestamptz, а в сессии клиента задавать нужную ему time zone, да и всё.
Я про это и пишу, да
Просто как-то непонятно написали. :) Во-первых, в timestamp with time zone нет никакой time zone, тем более сервера. Более того, такой вещи, как time zone сервера PostgreSQL, просто не существует.
Обсуждают сегодня