Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.04.05;
Скачать: CL | DM;

Вниз

Нужно преобразовать в формат TDateTime.   Найти похожие ветки 

 
Alexandra   (2008-08-06 14:46) [0]

подскажите, Есть формат даты:
The number of seconds since 0000 Universal Time Code (UTC) 1970
Нужно преобразовать в формат TDateTime.
Подскажите как это сделать в MS SQL?
спасибо.


 
Medbe}I{onok XML ©   (2008-08-06 14:49) [1]

а на mssql есть тип tdatetime?


 
sniknik ©   (2008-08-06 15:04) [2]

> The number of seconds since 0000 Universal Time Code (UTC) 1970
уточни, у тебя точно дата представлена количество секунд с 1970г (как написано) или гринвичь? (GETUTCDATE()),
если секунды то очень просто, DATEADD + BOL (типа F1 для mssql), добавляешь их к основе (1970г) получаешь необходимое.


 
Alexandra   (2008-08-06 15:27) [3]

> sniknik
Да, у меня точно этот формат .спасибо попробую..


 
Alexandra   (2008-08-07 14:16) [4]

>sniknik
у меня получилось время это по гринвичу,
а нам надо локальное. И я не могу просто прибавить или отнять часы, т к информация с разных городов. Теперь что подскажите делать ?


 
Anatoly Podgoretsky ©   (2008-08-07 14:51) [5]

По Гринчичу или UTC


 
sniknik ©   (2008-08-07 17:28) [6]

с гринвича локальный просто так не получить... как раз таки потому, что "информация с разных городов", у каждого разный часовой пояс, переход на зимнее время то делается то нет, а когдато вообще не делалось...

просто можно только "привести" время к своему, т.е. сколько было по местному тогда когда "тот" город сохранил свое время.
если без учета, что во время сохранения действовало "зимнее" время, то добавить к вашему разницу в минутах - DATEDIFF(mi, GETUTCDATE(), GETDATE()).
... или отнять? сам смотри.
и еще посмотри на sql.ru, видел там когдато более сложные процедуры, учитывающие эти переходы/не переходы времени.


 
Alexandra   (2008-08-11 09:35) [7]

спасибо!


 
Anatoly Podgoretsky ©   (2008-08-11 16:32) [8]

Не надо приводить к своему, как раз для этого, для независимости и существует UTC.
UTC <> GMT - хотя в Линуксовских серверах почему то ставят знак равенства, пишут GMT но читать надо UTC, но можно и ошибиться, если источник с нулевого меридиана.

В Виндоус вся работа ведется в основном с UTC, оно же System, которое потом преобразовывается в локальное (Local) но его легко можно перевести в любую временную зону, а вот обратно нет.



Страницы: 1 вся ветка

Текущий архив: 2009.04.05;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.006 c
2-1234676375
snake-as
2009-02-15 08:39
2009.04.05
Вопрос по БД


15-1234046172
Student
2009-02-08 01:36
2009.04.05
С чего начать? Или HellowWorld по серьёзному


15-1233660628
palva
2009-02-03 14:30
2009.04.05
Как изменить стиль hover?


1-1209384948
GreyWolf
2008-04-28 16:15
2009.04.05
Отладка такой ситуации


15-1233816806
Slider007
2009-02-05 09:53
2009.04.05
С днем рождения ! 5 февраля 2009 четверг





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский