Гость
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ошибка при вычислении времени / 7 сообщений из 7, страница 1 из 1
04.07.2014, 19:15
    #38688382
228293
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при вычислении времени
здравствуйте!
ASE-15.0.3

Код: sql
1.
2.
3.
SELECT
    convert(varchar(8),dateadd(second, 1402905459, ''),108)
,   convert(varchar(8),dateadd(second, 1402905459 + datediff(second,getutcdate(),getdate()), ''),108)


периодически (на 5-10 раз) неправильно вычисляется время.
ошибка в 1-2 секунды

с чем это может быть связано?

зы попробовал аналогичный запрос в MS SQL 2000, SQL Server 2008 - там все корректно.
...
Рейтинг: 0 / 0
04.07.2014, 20:58
    #38688446
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при вычислении времени
А тебе не кажется, что getdate() при каждом вызове дает разные значения?
...
Рейтинг: 0 / 0
04.07.2014, 21:23
    #38688458
228293
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при вычислении времени
White OwlА тебе не кажется, что getdate() при каждом вызове дает разные значения?
точно! спасибо
я понял где может быть ошибка
getutcdata и getdata получается выполняются последовательно - вот и вылазит погрешность
мне там нужно делать разницу в часах
...
Рейтинг: 0 / 0
07.07.2014, 12:38
    #38689336
Mikle83
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при вычислении времени
228293White OwlА тебе не кажется, что getdate() при каждом вызове дает разные значения?
точно! спасибо
я понял где может быть ошибка
getutcdata и getdata получается выполняются последовательно - вот и вылазит погрешность
мне там нужно делать разницу в часах

Почему бы время не вычислить в переменную ДО запроса?
И в запросе вместо двух вызовов текущего времени использовать просто значение переменной?
Тогда 146% никаких рассинхронизаций.
...
Рейтинг: 0 / 0
07.07.2014, 18:39
    #38689712
228293
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при вычислении времени
Mikle83228293пропущено...

точно! спасибо
я понял где может быть ошибка
getutcdata и getdata получается выполняются последовательно - вот и вылазит погрешность
мне там нужно делать разницу в часах

Почему бы время не вычислить в переменную ДО запроса?
И в запросе вместо двух вызовов текущего времени использовать просто значение переменной?
Тогда 146% никаких рассинхронизаций.

да не
ошибка все равно остается - даже если вичслим время отдельно в переменные
Код: sql
1.
2.
3.
4.
5.
6.
7.
declare @dd datetime
set @dd = getutcdate()

declare @tt datetime
set @tt = getdate()

select datediff(hour,@dd,@tt)
...
Рейтинг: 0 / 0
07.07.2014, 22:28
    #38689850
Sergey Orlov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при вычислении времени
228293Mikle83пропущено...


Почему бы время не вычислить в переменную ДО запроса?
И в запросе вместо двух вызовов текущего времени использовать просто значение переменной?
Тогда 146% никаких рассинхронизаций.

да не
ошибка все равно остается - даже если вичслим время отдельно в переменные
Код: sql
1.
2.
3.
4.
5.
6.
7.
declare @dd datetime
set @dd = getutcdate()

declare @tt datetime
set @tt = getdate()

select datediff(hour,@dd,@tt)


А откинуть секунды никак нельзя...
...
Рейтинг: 0 / 0
05.08.2014, 15:33
    #38713186
MGrigorj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при вычислении времени
периодически (на 5-10 раз) неправильно вычисляется время.
ошибка в 1-2 секунды
...
Рейтинг: 0 / 0
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ошибка при вычислении времени / 7 сообщений из 7, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]