|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
Сейчас MSK время: 23:53 5 сентября. Использую oracle драйвера под Линукс на клиенте. /etc/localtime -> /usr/share/zoneinfo/Europe/Moscow SELECT SESSIONTIMEZONE FROM DUAL возращает таймзону: { SESSIONTIMEZONE: '+04:00' } ] SELECT SESSIONTIMEZONE FROM DUAL возвращает: [ { SYSDATE: Sat Sep 06 2014 03:53:21 GMT+0400 (MSK) } ] Что в общем неправильно. Хочется все таки получить нормальную дату. Что в данном случае не так настроено - либо клиент/его таймзона или еще что-то, либо Oracle сервер ? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2014, 23:56 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
2 азпрос: select sysdate from DUAL ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2014, 23:57 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
Правильно, неправильно. Да почитал бы ты доку для начала. SYSDATE : SYSDATE returns the current date and time set for the operating system on which the database server resides . И CURRENT_DATE : CURRENT_DATE returns the current date in the session time zone SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2014, 02:06 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
SYПравильно, неправильно. Да почитал бы ты доку для начала. SYSDATE : SYSDATE returns the current date and time set for the operating system on which the database server resides . И CURRENT_DATE : CURRENT_DATE returns the current date in the session time zone SY. Все верно.Про доку. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2014, 03:42 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
SYПравильно, неправильно. Да почитал бы ты доку для начала. SYSDATE : SYSDATE returns the current date and time set for the operating system on which the database server resides . И CURRENT_DATE : CURRENT_DATE returns the current date in the session time zone SY. Селекты отдают единтичный результат. Так же все таки получить правильный ? Проблема в том что данные-даты из таблиц отдаются неправильно. не могу понять что настроить так чтобы получить правильно. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2014, 10:52 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
ЯСелекты от дают е д и нтичный результат. Код: sql 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.
ЯПроблема в том что данные-даты из таблиц отдаются неправильно. не могу понять что настроить так чтобы получить правильно. Данные типа DATE временной зоны вообще не имеют. SY. P.S. Похоже тебе даты не "отдаются" ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2014, 15:57 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
P.S. Похоже тебе даты не "отдаются" Вот вопрос более конкретней: Есть поле в таблице select idate from table where rownum = 1 idate: Sat Sep 06 2014 21:09:52 GMT+0400 (MSK), Человек, который пишет туда данные утверждает, что дату нужно смешать на +04:00 ( т е дата отдается в UTC несмотря на то, что пишется MSK. ). Вопрос: как правильно получить дату ? Т е можно чтобы дата отдавалась даже в UTC ( только чтобы писалась правильно - UTC, можно в MSK ( только чтобы правильно отдавалась ) ). ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2014, 18:05 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
Я, так уметь надо чтоб отдавалась (прости ) доку читаем..... ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2014, 18:12 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
Еще раз - у DATE нет временной зоны и если select idate from table where rownum = 1 возвращает idate: Sat Sep 06 2014 21:09:52 GMT+0400 (MSK) то idate это не DATE а TIMESTAMP. Так что огласи для начала тип поля idate. SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2014, 18:13 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
AG#SYПравильно, неправильно. Да почитал бы ты доку для начала. SYSDATE : SYSDATE returns the current date and time set for the operating system on which the database server resides . И CURRENT_DATE : CURRENT_DATE returns the current date in the session time zone SY. Все верно. Про доку . 2 AG# Что сказать то хотел? Мысль осталась незаконченной... если была... Да верно, к но этому, пожалуй, можно добавить " ... или returns the current date and time set таймзоны, которая была установлена, например командой export TZ , и действовала для сеанса OS на момент старта базы данных " ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2014, 09:04 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
P.S. Sorry, неточно выразился... "... или returns the current date and time set таймзоны, которая была установлена, например командой export TZ, и действовала для сеанса OS на момент старта листенера " В соответствие с таймзоной, которая действовала для сеанса OS на момент старта базы данных, будут выполнятся джобы . ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2014, 09:17 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
Viewer, oracle dba_jobs nls_env ставится на ура ну и http://www.serkey.com/tag/dbms-scheduler-set-attribute-nls-env/ ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2014, 10:29 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
SYЕще раз - у DATE нет временной зоны и если select idate from table where rownum = 1 возвращает idate: Sat Sep 06 2014 21:09:52 GMT+0400 (MSK) то idate это не DATE а TIMESTAMP. Так что огласи для начала тип поля idate. SY. Тип date там если что. Вот еще один пример: SELECT SYSDATE from DUAL отдает GMT+04:00 16 часов (неверно). SELECT to_char(SYSDATE,\'DD.MM.YYYY HH:MM\') FROM DUAL отдает 12 часов, что верно. В чем проблема ? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2014, 12:59 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
Куда отдаётся? Покажите сие в виде вывода sqlplus, с явным указанием текущих nls-настроек. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2014, 13:39 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
Я SYЕще раз - у DATE нет временной зоны и если select idate from table where rownum = 1 возвращает idate: Sat Sep 06 2014 21:09:52 GMT+0400 (MSK) то idate это не DATE а TIMESTAMP. Так что огласи для начала тип поля idate. SY. Тип date там если что. Вот еще один пример: SELECT SYSDATE from DUAL отдает GMT+04:00 16 часов (неверно). SELECT to_char(SYSDATE,\'DD.MM.YYYY HH:MM\') FROM DUAL отдает 12 часов, что верно. В чем проблема ? Предположу, что в "HH:MM", можно время выводить так: Код: plsql 1.
оно будет совсем неправильным. Сделайте Код: plsql 1.
будет лучше. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2021, 09:34 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
Я Селекты отдают единтичный результат. "единтичный" - это новое слово в русском языке! Берем на вооружение! :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2021, 13:18 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
SQL*Plus Я Селекты отдают единтичный результат. Берем на вооружение! :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2021, 14:12 |
|
Настройка timezone в Oracle
|
|||
---|---|---|---|
#18+
SVI_VAL Я пропущено... Тип date там если что. Вот еще один пример: SELECT SYSDATE from DUAL отдает GMT+04:00 16 часов (неверно). SELECT to_char(SYSDATE,\'DD.MM.YYYY HH:MM\') FROM DUAL отдает 12 часов, что верно. В чем проблема ? Предположу, что в "HH:MM", можно время выводить так: Код: plsql 1.
оно будет совсем неправильным. Сделайте Код: plsql 1.
будет лучше. HH - это долбанутый 12-ти часовой англосаксонский формат представления даты. Необходимо выводить дополнительно AM/PM Используйте нормальный 24-х часовой формат HH24 Код: 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. 35.
После 11 AM Наступает 12 PM После 12 PM Наступает 01 PM Зато после 11 PM Наступает 12 AM А потом после 12 AM Наступает 01 AM Это невозможно понять, это можно только запомнить, впитав с молоком матери. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2021, 14:15 |
|
|
start [/forum/topic.php?fid=52&fpage=17&tid=1880092]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
53ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
2ms |
others: | 233ms |
total: | 394ms |
0 / 0 |