powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Что такое с временем ?
15 сообщений из 15, страница 1 из 1
Что такое с временем ?
    #35451446
olegov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сори за тупой вопрос, с постгрес только начинаю работать.

добавил в таблицу поле типа time without time zone
по дефолту сделал ('now'::text)::time with time zone
почему значение записываемое по умолчанию получается на час меньше ?


Пишу как умею. Дорого, долго...
...
Рейтинг: 0 / 0
Что такое с временем ?
    #35451480
YuriyRusinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Возможно собака порылась в летнем/зимнем времени, исходя из приведенной информации что-то более существенное трудно, нужно знать как был поставлен постгрес, операционку, настройки времени.
...
Рейтинг: 0 / 0
Что такое с временем ?
    #35451539
olegov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В операционке часовой пояс выставлен +6, установлено "Автоматический переход на зимнее/летнее время".
Постгрес поставлен тупо установкой без каких либо последующих настроек. Версия 8.3

Пишу как умею. Дорого, долго...
...
Рейтинг: 0 / 0
Что такое с временем ?
    #35451620
YuriyRusinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какая операционка linux или винда ? С какими настройками запускался initdb ? Что выдает
Код: plaintext
select current_time
?
...
Рейтинг: 0 / 0
Что такое с временем ?
    #35452806
olegov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuriyRusinovКакая операционка linux или винда ? С какими настройками запускался initdb ?
Что выдает
Код: plaintext
select current_time
?

Операционка Win XP, запрос выдает на час раньше, что такое initdb ?
...
Рейтинг: 0 / 0
Что такое с временем ?
    #35453222
YuriyRusinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
initdb -- это утилита инициализации кластера БД, видимо postgres под виндой (портированный) неправильно уловил в системе пояс времени, как лечить я не знаю, имеет смысл задать вопрос в рассылке postgresql-general или postgresql-win.
...
Рейтинг: 0 / 0
Что такое с временем ?
    #35453253
olegov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что потгрес под виндой так редко используется ?

Пишу как умею. Дорого, долго...
...
Рейтинг: 0 / 0
Что такое с временем ?
    #35453259
YuriyRusinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
под линухом существенно чаще.
...
Рейтинг: 0 / 0
Что такое с временем ?
    #35453268
olegov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuriyRusinovпод линухом существенно чаще.

Ну я знаю что конечно под линями чаще, но неужели под виндами так редко. Или поле такого типа так редко используется, или в него по умолчанию никто не пишет чтоль ? Косяк не шуточный такой получается.
...
Рейтинг: 0 / 0
Что такое с временем ?
    #35453557
Фотография Ёш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что показывает:
Код: plaintext
show datestyle; show timezone; show timezone_abbreviations; show lc_time; select now(); select version();
?
что покажет now() если сделать так:
Код: plaintext
set timezone TO 'Asia/Novosibirsk'; select now();
?

если у Вас версия 8.3.0 - попробуйте поставить новую, сейчас это 8.3.3


--
„Истина — это вовсе не то, что можно убедительно доказать, это то, что
делает всё проще и понятнее“ — Антуан де Сент-Экзюпери
...
Рейтинг: 0 / 0
Что такое с временем ?
    #35454383
olegov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
show datestyle - "ISO, DMY"
show timezone - "Asia/Almaty"
show timezone_abbreviations - "Default"
show lc_time - "Russian_Russia.1251"
select now() - "2008-07-28 09:25:40.64+06" (что ровно на час меньше чем на самом деле)
select version() - "PostgreSQL 8.3.1, compiled by Visual C++ build 1400"

set timezone TO 'Asia/Novosibirsk';
select now() - "2008-07-28 10:28:20.453+07" (что есть абсолютно правильно)


Вот это интересно, Новосибирск и Алматы уже давным давно в одном часовом поясе,
но все равно огромное спасибо.

Пишу как умею. Дорого, долго...
...
Рейтинг: 0 / 0
Что такое с временем ?
    #35454427
olegov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А можно вот этот (set timezone TO 'Asia/Novosibirsk';) как то скриптом делать, т.е. сделать так что бы это прописалось в конфигурационный файл, а не править его ручками ?

Пишу как умею. Дорого, долго...
...
Рейтинг: 0 / 0
Что такое с временем ?
    #35456391
Фотография Ёш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторselect version() - "PostgreSQL 8.3.1, compiled by Visual C++ build 1400"
. . .
Вот это интересно, Новосибирск и Алматы уже давным давно в одном часовом поясе,
попробуйте поставить 8.3.3, если там тоже самое, я бы написал в список рассылки об ошибках что бы выяснить почему так.

ещё может быть нужно поставить какой-нибудь патч от microsoft на саму windows, но тут я не подсказчик :)

ps: ещё возможно что никакой ошибки то и нет и просто в Алмаате не используется переход на зимнее/летнее время и соответственно летом получается с Новосибирском разница на час.

авторА можно вот этот (set timezone TO 'Asia/Novosibirsk';) как то скриптом делать, т.е. сделать так что бы это прописалось в конфигурационный файл, а не править его ручками ?

пропишите в конфигурационный файл руками:
Код: plaintext
1.
#timezone = unknown                     # actually, defaults to TZ environment
не забыв раскомментировать эту настройку(убрав решётку в начале строки)


--
„Истина — это вовсе не то, что можно убедительно доказать, это то, что
делает всё проще и понятнее“ — Антуан де Сент-Экзюпери
...
Рейтинг: 0 / 0
Что такое с временем ?
    #35456491
olegov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так я и спрашиваю, как это можно командой или скриптом из приложения сделать
чтобы не писать ручками в конфигурационном файле timezone = 'Asia/Novosibirsk'

Поставил 8.3.3 -ничего не изменилось.

Пишу как умею. Дорого, долго...
...
Рейтинг: 0 / 0
Что такое с временем ?
    #35456624
Фотография Ёш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
olegovТак я и спрашиваю, как это можно командой или скриптом из приложения сделать
чтобы не писать ручками в конфигурационном файле timezone = 'Asia/Novosibirsk'я не понимаю %)

можно прописать переменную пользователю: alter role user1 set timezone to 'Asia/Novosibirsk';

можно сделать её по умолчанию для всего сервера, но это только через исправление конфигурационного файла и перезапуск сервера.
конфигурационный файл можно исправить ручками в редакторе, или через скрипт (хмм...), например: sed -e "s@#timezone = unknown@timezone = 'Asia/Novosibirsk'@" < /etc/postgresql/8.3/main/postgresql.conf > /etc/postgresql/8.3/main/postgresql.conf-new; mv /etc/postgresql/8.3/main/postgresql.conf-new /etc/postgresql/8.3/main/postgresql.conf;

olegovПоставил 8.3.3 -ничего не изменилось.остаётся только обратиться к специалистам из списков рассылки постгреса... :)
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Что такое с временем ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]