|
|
|
дата до нашей эры после перехода на зимнее время
|
|||
|---|---|---|---|
|
#18+
привет. в таблице имелись записи с датой "0001-01-01 00:00:00+02:30:20" после перехода на зимнее время эти даты изменились на "0001-12-31 23:59:57+02:30:17 ВС" т.е. даты теперь до нашей эры. подскажите, как исправить проблему? postgre 9.3, данные смотрю через pgadmin спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2014, 10:48:20 |
|
||
|
дата до нашей эры после перехода на зимнее время
|
|||
|---|---|---|---|
|
#18+
ilnurgi, это не даты изменились, а Ваша time zone в которой Вы их смотрите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2014, 11:17:58 |
|
||
|
дата до нашей эры после перехода на зимнее время
|
|||
|---|---|---|---|
|
#18+
что мне сделать надо? ситуация такая, есть БД + веб приложение на python/Django. соответсвтенно там модуль/адаптер psycopg2. ему приходят даты до нашей эры, что не хорошо. соответсвенно и в пгадмин даты приходят до нашей эры. что надо сделать, кого настроить? чтобы даты прихоили корректные. заранее огромное спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2014, 11:22:55 |
|
||
|
дата до нашей эры после перехода на зимнее время
|
|||
|---|---|---|---|
|
#18+
ubuntu 14.04 $ date Ср. окт. 29 11:24:06 MSK 2014 $ cat /etc/timezone Europe/Moscow $ psql postgres=#show timezone; TimeZone --------------- W-SU (1 row) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2014, 11:26:37 |
|
||
|
дата до нашей эры после перехода на зимнее время
|
|||
|---|---|---|---|
|
#18+
ilnurgi, не нужно использовать такие даты. есть же null, -infinity. не mysql ведь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2014, 14:09:01 |
|
||
|
дата до нашей эры после перехода на зимнее время
|
|||
|---|---|---|---|
|
#18+
Alexius, согласен. БД мне досталась по наследству, так сказать, теперь уже ничего не поделаешь. проблема даже не в том, что дата до нашей эры, а в том что все даты, смещены назад, скорее всего. проверяю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2014, 14:18:53 |
|
||
|
дата до нашей эры после перехода на зимнее время
|
|||
|---|---|---|---|
|
#18+
ilnurgi, ну можно добавить конечно по 3 секунды к таким датам, проблему это решит. до следующего обновления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2014, 14:26:37 |
|
||
|
дата до нашей эры после перехода на зимнее время
|
|||
|---|---|---|---|
|
#18+
Alexius, тут я неудачный пример показал. т.к. запись была изменена. в целом проблема в том что даты смещены назад на час. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2014, 15:13:27 |
|
||
|
дата до нашей эры после перехода на зимнее время
|
|||
|---|---|---|---|
|
#18+
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 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2014, 15:36:13 |
|
||
|
дата до нашей эры после перехода на зимнее время
|
|||
|---|---|---|---|
|
#18+
частично проблему решил так, изменив таймзону на 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 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2014, 17:19:46 |
|
||
|
дата до нашей эры после перехода на зимнее время
|
|||
|---|---|---|---|
|
#18+
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 года - он сложный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2014, 20:29:57 |
|
||
|
дата до нашей эры после перехода на зимнее время
|
|||
|---|---|---|---|
|
#18+
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 идет в соответствии с теми правилами которые действовали для нужной даты... или это твоя догадка на основании текущей ситуации с базой, и твоих воспоминаний - что было зимой? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 14:21:23 |
|
||
|
дата до нашей эры после перехода на зимнее время
|
|||
|---|---|---|---|
|
#18+
Maxim Boguk, а то просто несколько людей щитают что храниться только время в ютс и ничего более. никто не сохраняет время + правило которое действовало ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 14:22:06 |
|
||
|
дата до нашей эры после перехода на зимнее время
|
|||
|---|---|---|---|
|
#18+
alex564657498765453Maxim Bogukпропущено... нет не правильно... пересчет timezones идет в соответствии с теми правилами которые действовали для нужной даты... т.е. времена в Москве до перехода на зимнее время в этом году показываются как +4 часа несмотря на то что СЕЙЧАС разница +3 часа. Вопрос какие правила пересчета timezones стоят в tzdata для 0 года - он сложный. плин, ты уточняй. это ты гдето прочитал пересчет timezones идет в соответствии с теми правилами которые действовали для нужной даты... или это твоя догадка на основании текущей ситуации с базой, и твоих воспоминаний - что было зимой? понял что тебя смутило! если ты круглый год пишешь в базу 10 00 каждый день, ты и прочитаешь оттуда 10 00 всегда в этом идея. а как так? а ведь летом было смещение одно, а зимой другое. дык настройки таймзон включают в себя втом числе и переводы сезонные часов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2014, 14:41:04 |
|
||
|
|

start [/forum/topic.php?fid=53&fpage=120&tid=1998387]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
36ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 363ms |

| 0 / 0 |
