powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / дата до нашей эры после перехода на зимнее время
14 сообщений из 14, страница 1 из 1
дата до нашей эры после перехода на зимнее время
    #38790343
ilnurgi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
привет.

в таблице имелись записи с датой "0001-01-01 00:00:00+02:30:20"
после перехода на зимнее время эти даты изменились на "0001-12-31 23:59:57+02:30:17 ВС"

т.е. даты теперь до нашей эры.
подскажите, как исправить проблему?
postgre 9.3, данные смотрю через pgadmin

спасибо
...
Рейтинг: 0 / 0
дата до нашей эры после перехода на зимнее время
    #38790391
Гость_0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ilnurgi, это не даты изменились, а Ваша time zone в которой Вы их смотрите.
...
Рейтинг: 0 / 0
дата до нашей эры после перехода на зимнее время
    #38790400
ilnurgi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
что мне сделать надо?

ситуация такая, есть БД + веб приложение на python/Django. соответсвтенно там модуль/адаптер psycopg2. ему приходят даты до нашей эры, что не хорошо.
соответсвенно и в пгадмин даты приходят до нашей эры.

что надо сделать, кого настроить? чтобы даты прихоили корректные.

заранее огромное спасибо
...
Рейтинг: 0 / 0
дата до нашей эры после перехода на зимнее время
    #38790407
ilnurgi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ubuntu 14.04
$ date
Ср. окт. 29 11:24:06 MSK 2014
$ cat /etc/timezone
Europe/Moscow

$ psql
postgres=#show timezone;
TimeZone
---------------
W-SU
(1 row)
...
Рейтинг: 0 / 0
дата до нашей эры после перехода на зимнее время
    #38790701
Alexius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ilnurgi,

не нужно использовать такие даты. есть же null, -infinity. не mysql ведь.
...
Рейтинг: 0 / 0
дата до нашей эры после перехода на зимнее время
    #38790724
ilnurgi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexius,

согласен. БД мне досталась по наследству, так сказать, теперь уже ничего не поделаешь.

проблема даже не в том, что дата до нашей эры, а в том что все даты, смещены назад, скорее всего. проверяю.
...
Рейтинг: 0 / 0
дата до нашей эры после перехода на зимнее время
    #38790734
Alexius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ilnurgi,

ну можно добавить конечно по 3 секунды к таким датам, проблему это решит. до следующего обновления.
...
Рейтинг: 0 / 0
дата до нашей эры после перехода на зимнее время
    #38790810
ilnurgi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexius,

тут я неудачный пример показал.
т.к. запись была изменена.

в целом проблема в том что даты смещены назад на час.
...
Рейтинг: 0 / 0
дата до нашей эры после перехода на зимнее время
    #38790851
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ilnurgiпривет.

в таблице имелись записи с датой "0001-01-01 00:00:00+02:30:20"
после перехода на зимнее время эти даты изменились на "0001-12-31 23:59:57+02:30:17 ВС"

т.е. даты теперь до нашей эры.
подскажите, как исправить проблему?
postgre 9.3, данные смотрю через pgadmin

спасибо

какая была временная зона в Москве в 0 году за 1200 лет до ее основания - вопрос очень философский
в базе хранится всегда время в UTC
а дальше пересчитывается в необходимую timezone
исходя из этого использование timestamp with timezone для данных более чем 100летней давности - штука легко ведущая к непредсказуемым результатам (так как понять что там за timezone была - невозможно да еще и старое летоисчисление).
по большому счету я не знаю как вам помочь... ну кроме как обновить руками проблемные записи в тот вид что ожидает питон

--Maxim Boguk
www.postgresql-consulting.ru
...
Рейтинг: 0 / 0
дата до нашей эры после перехода на зимнее время
    #38791027
ilnurgi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
частично проблему решил так, изменив таймзону на Europe/Samara

правильно ли я рассуждаю?

1. мы пишем в БД дату 0001-01-01 00:00:00, до перехода на зимнее время
2. в БД пишется время ютс 0001-12-31 20:00:00 BC (0001-01-01 00:00:00 вычитаем 4 часа)
3. когда смотрим дату, то видим 0001-01-01 00:00:00+04:00
4. перешли на зимнее время, соответсвено таймзона +3
5. смотрим запись в БД, а она высчитывается, ютс время (0001-12-31 20:00:00 BC п.2) плюс 3 час, получаем 0001-12-31 23:00:00 BC
...
Рейтинг: 0 / 0
дата до нашей эры после перехода на зимнее время
    #38791182
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ilnurgiчастично проблему решил так, изменив таймзону на Europe/Samara

правильно ли я рассуждаю?

1. мы пишем в БД дату 0001-01-01 00:00:00, до перехода на зимнее время
2. в БД пишется время ютс 0001-12-31 20:00:00 BC (0001-01-01 00:00:00 вычитаем 4 часа)
3. когда смотрим дату, то видим 0001-01-01 00:00:00+04:00
4. перешли на зимнее время, соответсвено таймзона +3
5. смотрим запись в БД, а она высчитывается, ютс время (0001-12-31 20:00:00 BC п.2) плюс 3 час, получаем 0001-12-31 23:00:00 BC

нет не правильно...
пересчет timezones идет в соответствии с теми правилами которые действовали для нужной даты...
т.е. времена в Москве до перехода на зимнее время в этом году показываются как +4 часа несмотря на то что СЕЙЧАС разница +3 часа.

Вопрос какие правила пересчета timezones стоят в tzdata для 0 года - он сложный.
...
Рейтинг: 0 / 0
дата до нашей эры после перехода на зимнее время
    #38791713
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Bogukilnurgiчастично проблему решил так, изменив таймзону на Europe/Samara

правильно ли я рассуждаю?

1. мы пишем в БД дату 0001-01-01 00:00:00, до перехода на зимнее время
2. в БД пишется время ютс 0001-12-31 20:00:00 BC (0001-01-01 00:00:00 вычитаем 4 часа)
3. когда смотрим дату, то видим 0001-01-01 00:00:00+04:00
4. перешли на зимнее время, соответсвено таймзона +3
5. смотрим запись в БД, а она высчитывается, ютс время (0001-12-31 20:00:00 BC п.2) плюс 3 час, получаем 0001-12-31 23:00:00 BC

нет не правильно...
пересчет timezones идет в соответствии с теми правилами которые действовали для нужной даты...
т.е. времена в Москве до перехода на зимнее время в этом году показываются как +4 часа несмотря на то что СЕЙЧАС разница +3 часа.

Вопрос какие правила пересчета timezones стоят в tzdata для 0 года - он сложный.

плин, ты уточняй. это ты гдето прочитал
пересчет timezones идет в соответствии с теми правилами которые действовали для нужной даты...

или это твоя догадка на основании текущей ситуации с базой, и твоих воспоминаний - что было зимой?
...
Рейтинг: 0 / 0
дата до нашей эры после перехода на зимнее время
    #38791715
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Boguk,

а то просто несколько людей щитают что храниться только время в ютс и ничего более. никто не сохраняет время + правило которое действовало
...
Рейтинг: 0 / 0
дата до нашей эры после перехода на зимнее время
    #38791747
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex564657498765453Maxim Bogukпропущено...


нет не правильно...
пересчет timezones идет в соответствии с теми правилами которые действовали для нужной даты...
т.е. времена в Москве до перехода на зимнее время в этом году показываются как +4 часа несмотря на то что СЕЙЧАС разница +3 часа.

Вопрос какие правила пересчета timezones стоят в tzdata для 0 года - он сложный.

плин, ты уточняй. это ты гдето прочитал
пересчет timezones идет в соответствии с теми правилами которые действовали для нужной даты...

или это твоя догадка на основании текущей ситуации с базой, и твоих воспоминаний - что было зимой?

понял что тебя смутило!

если ты круглый год пишешь в базу 10 00 каждый день, ты и прочитаешь оттуда 10 00 всегда
в этом идея.

а как так? а ведь летом было смещение одно, а зимой другое.

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


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