|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
Александр, как появится время посмотри пожалуйста поддержку типов с часовыми поясами https://github.com/FirebirdSQL/firebird/blob/master/doc/sql.extensions/README.time_zone.md помимо того что нет нативной поддержки типов при работе с RDB$TIME_ZONE_UTIL.TRANSITIONS постоянно сыплет ошибки при подсказках параметров ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2018, 18:13 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
А оно уже работает в ФБ 4? Я недавно пробовал - не работало. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2018, 05:49 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
IBExpert, сейчас работает. С часовыми поясами по смещению +/-часы:минуты работает сразу из коробки. Для того чтобы установить базу региональных поясов надо немного повозиться (запихнуть данные из базы данных часовых поясов в формате .res файлов в .dat файл). Если не получится могу подсказать как. Думаю когда обновят icu будет чуть проще. Но на уровне API и SQL вроде уже всё окончательно ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2018, 09:40 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
Симонов ДенисRDB$TIME_ZONE_UTIL.TRANSITIONS Кстати, чего делать-то с такими пакетами? Заголовок и тело у него пустые, смысла показывать его в эксплорере БД как бы нет... Заводить отдельную ветку с системными пакетами тоже не очень хочется. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2018, 05:13 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
Можно пощупать свежую версию. Нативной поддержки пока нет, разумеется. SET TIME ZONE BIND LEGACY выполняется автоматом при коннекте. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2018, 06:12 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
IBExpertRDB$TIME_ZONE_UTIL.TRANSITIONS Кстати, чего делать-то с такими пакетами? понятия не имею. По сути это почти тоже самое что встроенные функции. В принципе можно отображать псевдо заголовок пакета, где процедуры и функции отображены, а тело не показывать (можно вкладку скрыть). Ну и перекомпиляцию отключить. IBExpertМожно пощупать свежую версию. Нативной поддержки пока нет, разумеется. SET TIME ZONE BIND LEGACY выполняется автоматом при коннекте. спасибо. Пока будем смотреть типы с тайм зонами как DATE_FIELD || '' ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2018, 16:12 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
Симонов ДенисПока будем смотреть типы с тайм зонами как DATE_FIELD || '' Посмотри свежую версию, там это уже не нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2018, 05:13 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
IBExpert, спасибо, вечером гляну. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2018, 09:27 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
IBExpert, глянул. На базовом уровне вроде поддерживается хорошо. Редактор ХП, ленивый режим, создание таблиц, запросы. В отладчике хранимок параметры с новым типом не распознаются ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2018, 10:20 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
Симонов ДенисВ отладчике хранимок параметры с новым типом не распознаются Отображение в сетке и выгрузка в скрипт пока только сделаны. Отладчик вообще отдельная песня. Там все на вариантах, и с какого бока туда таймзону пристегивать - пока не очень понятно. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2018, 13:26 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
IBExpertТам все на вариантах, и с какого бока туда таймзону пристегивать - пока не очень понятно. ясно. Если ничего не придумаешь, попробуй просто к строке кастить, перед записью в вариант. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2018, 14:43 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
Код: plsql 1.
неожиданно возвращает 21:00:00 +3 Это меня глючит или сервер? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2018, 07:57 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
IBExpert, в моей версии эксперт вообще фигню показывает как будто это не TIME, а TIMESTAMP 30.12.1899 21:00 +03:00 если запрос написать с преобразованием к строке то возвращает правильно Код: sql 1.
Смотрим как в isql Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Похоже всё таки глючит IBExpert ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2018, 09:41 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
Симонов Денисв моей версии эксперт вообще фигню показывает как будто это не TIME, а TIMESTAMP Да это ерунда, там просто значение форматировалось как дата+время. Это я уже исправил. У меня и с таймштампом такая же фигня Код: plsql 1.
И кто-то аккуратно отнимает 3:12 от полночи :) Я точно этого не делаю. Если в строку кастить, то да - все правильно. А версия сервера у тебя какая? Ну и вишенки на торт: Код: plsql 1.
Возвращает 2018-12-12 04:00:00.0000 Код: plsql 1.
Возвращает 2018-12-12 03:48:00.0000 Это вот как так? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2018, 12:06 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
у тебя часовой пояс другой. Код: sql 1. 2. 3.
Код: plaintext 1.
Часовой пояс сеанса это либо часовой пояс указанный в isc_dpb_session_time_zone клиента, либо через SET TIME ZONE, если ничего нет то часовой пояс сервера. TIME WITH TIME ZONE всегда возвращается как есть При касте к TIMESTAMP WITHOUT TIME ZONE сначала идёт преобразование к часовому поясу сеанса, а потом из него просто удаляется информация о часовом поясе. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2018, 17:34 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
Симонов ДенисTIME WITH TIME ZONE всегда возвращается как есть При касте к TIMESTAMP WITHOUT TIME ZONE сначала идёт преобразование к часовому поясу сеанса, а потом из него просто удаляется информация о часовом поясе. Ну, ОК. С "вишенками" вроде понятней стало, спасибо. Но исходный вопрос остался. Почему в ISQL не воспроизводится - не знаю. Может, дело в API? Он, кажется, новый использует? Вот такой запрос: Код: plsql 1. 2.
вроде как должен возвращать одинаковое utc-время в обоих полях. Ан нет, для второго 21:00 возвращает. Под отладчиком тоже хорошо видно, что там совсем не 0 от сервера прилетает, как для первого поля. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2018, 05:14 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
IBExpert, попробуй на последнем снапшоте. Там много чего подкрутили + добавили возможность указать в конфиге сервера часовой пояс по умолчанию. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.12.2018, 16:20 |
|
Поддержка часовых поясов
|
|||
---|---|---|---|
#18+
Симонов Дениспопробуй на последнем снапшоте. Там много чего подкрутили Без изменений. Я еще вот так попробовал для исключения своих косяков: Код: plsql 1. 2. 3. 4. 5. 6.
Ну и вижу в файле БД на странице данных, что в первой записи лежит время $00000000, а во второй - $2D0FA500, т.е. 21:00. Так что вот... Кто там по этим тайм-зонам главный? Видимо, его пытать надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.01.2019, 04:50 |
|
|
start [/forum/topic.php?fid=42&msg=39745297&tid=1598780]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
180ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 297ms |
0 / 0 |