|
|
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Есть ли/планируется в Файре, получить время в определенном таймзоне? Например друг из Китая хочет узнать время вылета из базы аэропорта в Лондоне: Код: sql 1. В Оракле вижу есть понятие session time zone. Тоесть до запроса выполняем "set time zone". Еще, как получить current_timestamp в UTC? select cast(current_timestamp as varchar(30)) from rdb$database выдает время с учетом таймзоны сервера... Если будем делать insert into TAB (current_timestamp) то никак не будет время в UTC. Самый оптимальный вариант думаю чтоб движок хранил все таймы в UTC. А при коннекте клиент указывает в какой таймзоне он работает. Или как решить по другому проблемы со временем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2014, 15:39:51 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Dorin MarcociЕще, как получить current_timestamp в UTC? select cast(current_timestamp as varchar(30)) from rdb$database выдает время с учетом таймзоны сервера... Вот и выставь на сервере таймзону UTC. А в локальное время переводи при отображении времени на клиенте. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2014, 16:12:08 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Несерьезно... На сервере же не только Firebird крутится. Думаю не должна зависеть "таймзона базы" от таймзоны сервера (похоже так и стандарт гласит). Так, для задачи мы в офисе и база в офисе хватит как щас. Все большие игроки (MySql, Oracle, Ms SQL, Postgree) решили проблему :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2014, 19:07:49 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Dorin MarcociНесерьезно... На сервере же не только Firebird крутится. Вот это уже действительно несерьёзно. Выделите для СУБД отдельный сервер. Хотя бы виртуальный. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2014, 19:24:14 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Дим, в принципе штука полезная. Но нафиг не нужная ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2014, 21:29:43 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
getExactTimestampUTC() есть в стандартной библиотеке UDF. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2014, 22:04:10 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Код: plsql 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2014, 11:19:02 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Ну да, через костыли можно получить в UTC из current_timestamp. Предположим что храним все в UTC зоне. А вот чтоб отдать данные клиентам которые в разные таймзоны находится через удф будет извращние. Очень будет кстати "set time zone" как у других конкурентов. Но впринципе пережить можно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2014, 14:14:55 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Dorin MarcociА вот чтоб отдать данные клиентам которые в разные таймзоны находится через удф будет извращние. А не надо данные отдавать "через УДФ". Отдавай как есть и пусть приведением к локальному времени занимается приложение. Ему виднее где это самое локальное время находится. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2014, 14:22:58 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Ага, переписать в Делфя и во всех тузлах компоненты доступа для переконвертации всех TDateTimeField полей с учетом локальной тайм зоны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2014, 15:31:46 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Dorin MarcociАга, переписать в Делфя и во всех тузлах компоненты доступа для переконвертации всех TDateTimeField полей с учетом локальной тайм зоны. Ага. Не надо сваливать проблемы приложения на сервер. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2014, 16:07:53 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovDorin MarcociАга, переписать в Делфя и во всех тузлах компоненты доступа для переконвертации всех TDateTimeField полей с учетом локальной тайм зоны. Ага. Не надо сваливать проблемы приложения на сервер. Ты кстати конвертируешь таймстампы при репликации из разных тайм-зон? Если конвертируешь, то указываешь ли какие поля нужно конвертировать, а какие нужно оставить как есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2014, 17:13:15 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
NickDeeТы кстати конвертируешь таймстампы при репликации из разных тайм-зон? Разумеется нет. Бизнес-логика базы вне соей компетенции. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2014, 17:16:55 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Похоже будет всетаки грамотное управление таймзонами в FB4 . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2014, 17:45:54 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovNickDeeТы кстати конвертируешь таймстампы при репликации из разных тайм-зон? Разумеется нет. Бизнес-логика базы вне соей компетенции. Вот есть центральная база в Москве, и филиал во Владивостоке. Если в филиале создать документ, и сразу реплицировать его в Москву, то время создания документа будет в будущем. Потом в Москве его отредактировали (при этом прописалось время последнего изменения). И теперь по базе получается что документ создан позже, чем отредактирован. А если при этом на таблице висит констрэйнт, что "время создания" <= "время изменения", то получаем отлуп при попытке сохранения документа в БД. Я бы от репликатора хотел чтобы он позаботился о переводе таймстампов из одной зоны в другую, причём только для указанных мной полей. Хотя идеальным был бы новый тип в FB, хранящий TimeStamp в UTC :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2014, 12:35:20 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
NickDeeХотя идеальным был бы новый тип в FB, хранящий TimeStamp в UTC :) А что тебе мешает хранить TimeStamp в UTC в старом типе?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2014, 12:39:58 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovNickDeeХотя идеальным был бы новый тип в FB, хранящий TimeStamp в UTC :) А что тебе мешает хранить TimeStamp в UTC в старом типе?.. Если бы к базе цеплялся только я, то я бы смог решить проблему с автоматическим переводом в UTC и обратно просто пропатчив компоненты доступа. Но с базой работает ещё и 1С. Ну и IBExpert-то так не пропатчишь :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2014, 12:51:08 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
NickDeeЕсли бы к базе цеплялся только я, то я бы смог решить проблему с автоматическим переводом в UTC и обратно просто пропатчив компоненты доступа. Но с базой работает ещё и 1С. Ну и IBExpert-то так не пропатчишь :) А зачем тебе переводить время в UTC и обратно? Уверяю тебя, люди во Владивостоке давно привыкли жить под гнётом московского времени. Так что если и твоя программа, и 1С, и IBExpert будут показывать исключительно московское время, дополнительных проблем у них уже не возникнет. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2014, 13:04:53 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovА зачем тебе переводить время в UTC и обратно? Уверяю тебя, люди во Владивостоке давно привыкли жить под гнётом московского времени. Так что если и твоя программа, и 1С, и IBExpert будут показывать исключительно московское время, дополнительных проблем у них уже не возникнет. Во временном поясе Москвы у системы нет ни одного сервера. Всё в регионах. И у моих пользователей нет проблем с временными зонами, т.к. при реализации репликации я учёл временной пояс сервера. А пользователи находятся в тайм-зонах серверов. У меня там всё хорошо. Но если бы был один сервер на все регионы, тогда пришлось бы городить огород. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2014, 13:40:27 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Идеологически относительно собственных БД: +1 за хранение всех времён в UTC. Реквестно относительно ФБ: +1 за получение current_timestamp в UTC без UDF и нагромождений. Получение таймстампов от сервера прозрачно в собственной таймзоне... довольно соблазнительно, пожалуй, плюсую. Непосредственно имею дело с разными временными шкалами, и переход к единой существенно упрощает жизнь и избавляет от глюков. По отображению: Клиенты могут устанавливать собственную таймзону через rdb$set_context; правда, тогда все выборки полей дат придется делать через ХП или вьюшки. Плюс update/insert тоже надо будет обрабатывать отдельно. Можно еще попробовать в прогах повесить Field.OnGetText, Field.OnChange, но это только если есть исходники и активные разработчики)). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2014, 11:18:50 |
|
||
|
Получить время в определенной таймзоне
|
|||
|---|---|---|---|
|
#18+
Dorin MarcociНапример друг из Китая хочет узнать время вылета из базы аэропорта в Лондоне: А пример не катит, время вылета всегда во временном поясе точки отправления пишется, и всех устраивает вполне ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2014, 11:20:31 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38637668&tid=1563533]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
52ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 243ms |
| total: | 359ms |

| 0 / 0 |
