|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
Хранить в базе дату время записывая таймзону в котором дата время находится. К примеру: 21.11.2017 11:00 UTC+3, 21.11.2017 16:00 UTC+6 Можно ли в PSQL хранить это один полем? 2014-11-10 03:13:14 UTC+5? Я создал уже таблицу в которую инсертил такие данные: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8.
Вот что выводит: Код: plsql 1. 2. 3. 4. 5. 6.
То что он так записывает в базу данных является нормальных явлением? Если да, то каким образом сохранять таймзону которая приходит? Создать отдельное поле с таймзоной? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2017, 00:57 |
|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
mister_psqlХранить в базе дату время записывая таймзону в котором дата время находится. К примеру: 21.11.2017 11:00 UTC+3, 21.11.2017 16:00 UTC+6 Можно ли в PSQL хранить это один полем? 2014-11-10 03:13:14 UTC+5? Я создал уже таблицу в которую инсертил такие данные: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8.
Вот что выводит: Код: plsql 1. 2. 3. 4. 5. 6.
То что он так записывает в базу данных является нормальных явлением? Если да, то каким образом сохранять таймзону которая приходит? Создать отдельное поле с таймзоной? Да, но зачем вам timezone то вообще нужна как независимая информация? Какую задачу вы этим пытаетесь решать? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2017, 01:18 |
|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
Maxim Bogukmister_psqlХранить в базе дату время записывая таймзону в котором дата время находится. К примеру: 21.11.2017 11:00 UTC+3, 21.11.2017 16:00 UTC+6 Можно ли в PSQL хранить это один полем? 2014-11-10 03:13:14 UTC+5? Я создал уже таблицу в которую инсертил такие данные: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8.
Вот что выводит: Код: plsql 1. 2. 3. 4. 5. 6.
То что он так записывает в базу данных является нормальных явлением? Если да, то каким образом сохранять таймзону которая приходит? Создать отдельное поле с таймзоной? Да, но зачем вам timezone то вообще нужна как независимая информация? Какую задачу вы этим пытаетесь решать? У нас в проекте есть мероприятия, время и дату которого нужно сохранять учитывая часовой пояс места проведения мероприятия. А для людей которые живут в других уголках нашей страны, нужно выводить время учитывая их таймзону. Т.е если мероприятие проходит в Красноярске, то мне нужно запомнить в базе его время и таймзону места проведения, а для человека, проживающего в Москве показать время проведения по Москве и время по Красноярску ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2017, 01:26 |
|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
mister_psqlMaxim Bogukпропущено... Да, но зачем вам timezone то вообще нужна как независимая информация? Какую задачу вы этим пытаетесь решать? У нас в проекте есть мероприятия, время и дату которого нужно сохранять учитывая часовой пояс места проведения мероприятия. А для людей которые живут в других уголках нашей страны, нужно выводить время учитывая их таймзону. Т.е если мероприятие проходит в Красноярске, то мне нужно запомнить в базе его время и таймзону места проведения, а для человека, проживающего в Москве показать время проведения по Москве и время по Красноярску Да тогда надо отдельно сохранять еще и локальную timezone. Валидный пример. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2017, 01:32 |
|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
Maxim Boguk, Спасибо!) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2017, 01:59 |
|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
mister_psql, Код: sql 1. 2. 3. 4.
если меняется установки подключения клиента, то можно делать Код: sql 1. 2.
в общем, не надо хранить зону отдельно. надо хранить время с зоной. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2017, 09:54 |
|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
Lonepsycho, Увы, иногда надо хранить зону (для событий в будущем) или даже просто координаты точки (на случай если правительство решит изменить деление на зоны или правила перехода на летнее время). Но все такие случаи надо рассматривать индивидуально, это не является общим правилом . Хорошая статья на тему: https://habrahabr.ru/company/mailru/blog/242645/ Рекомендация “хранить в UTC” == использовать `timestamptz` в PostgreSQL. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2017, 10:52 |
|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
vyegorov, странно, работаем с клиентами в разных часовых поясах. ещё не напоролись. храним в timestamptz. ушёл читать... ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2017, 11:15 |
|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
Lonepsychomister_psql, Код: sql 1. 2. 3. 4.
если меняется установки подключения клиента, то можно делать Код: sql 1. 2.
в общем, не надо хранить зону отдельно. надо хранить время с зоной. И как вы решите тогда задачу " Т.е если мероприятие проходит в Красноярске, то мне нужно запомнить в базе его время и таймзону места проведения, а для человека, проживающего в Москве показать время проведения по Москве и время по Красноярску " ? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2017, 13:43 |
|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
mister_psqlMaxim Boguk, Спасибо!) Кстати да очень правильное замечание было на счет того что надо не +3 хранить а 'Europe/Moscow' иначе в местах где есть летнее и зимнее время - получите неожиданные результаты для отображения локального времени события. ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2017, 13:45 |
|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
Maxim BogukИ как вы решите тогда задачу " Т.е если мероприятие проходит в Красноярске, то мне нужно запомнить в базе его время и таймзону места проведения, а для человека, проживающего в Москве показать время проведения по Москве и время по Красноярску " ? походу никак. пока-что такого варианта у нас нету. юзер видит время в его тайм зоне, поскольку он не мобильный, проблем не возникало. а так, да, если надо показывать время евента и по времени юзера и по времени евента, придётся хранить зону евента. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2017, 14:00 |
|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
В свое время интересовало для Java.... ничего лучше не придумал, чем отправить в топку даты в базе и хранить в виде текстовой строки p.s. нужно было хранить время вылета/прилета с учетом таймзоны аэропорта. Хотя информацию о таймзоне можно было на аэропорт повесить, решил, что лучше/правильнее всегда информацию о таймзоне с датой таскать. Поскольку поиска по информации в БД не было (поиск только в среднем слое), то текст строка меня полностью устроила ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2017, 23:08 |
|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
даты хранить надо в UTC а отображать в таймзоне юзера ... |
|||
:
Нравится:
Не нравится:
|
|||
30.11.2017, 10:25 |
|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
bochkovдаты хранить надо в UTC а отображать в таймзоне юзера еще один не прочитал тред и вопрос... :( ... |
|||
:
Нравится:
Не нравится:
|
|||
30.11.2017, 12:42 |
|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
Maxim Bogukbochkovдаты хранить надо в UTC а отображать в таймзоне юзера еще один не прочитал тред и вопрос... :( кхм. спорное утверждение. вопрос ТС совершенно безграмотный. ваше сюсюканье с тс совершенно антипродуктивно с т.з. рассеяния непонимания ТС-а способа хранения пыжом таймстампа "визтаймзон" достаточно заострить внимание на том, что никаких "таймстапвизтаймзон" пж не хранит. ибо не умеет. он умеет хранить таймстампы. и только. (в обоих случаях -- и с тайм,якобы,зоной и без якобы нее). причем в одном случае он считает, что данное лежит в УТС, и предоставляет "интерфейсные услуги" -- форматируя строку отдачи данного в таймзону клиента (сеанса). таким образом, если нам нужна таймзона клиента в данных -- нам надо ее хранить отдельно (т.к. внутри таймстампа она не хранится). в частности можно хранить географическую привязку, саму таймзону в строковом поле, и т.п.. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.11.2017, 13:21 |
|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
qwwq, Тут вопрос в том, почему Postgres так себя ведёт. И тут уже надо лезть в стандарт SQL и искать причины там… ... |
|||
:
Нравится:
Не нравится:
|
|||
30.11.2017, 13:45 |
|
Можно ли поставить разные таймзоны в типе datetime with timezone postgresql?
|
|||
---|---|---|---|
#18+
vyegorovqwwq, Тут вопрос в том, почему Postgres так себя ведёт. И тут уже надо лезть в стандарт SQL и искать причины там… думаю тут нет вопроса о поведении. оно видимо вполне законное. вопрос о неудачных названиях типов -- видимо упирается в стандарты. мне как--то требовалось иметь systime в типе timestamp , так как-то было не очевидно, откуда брать зону сервера в сеансе, потенциально клиентском. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.11.2017, 13:52 |
|
|
start [/forum/topic.php?fid=53&fpage=62&tid=1996067]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
others: | 292ms |
total: | 439ms |
0 / 0 |