Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Informix [игнор отключен] [закрыт для гостей] / использование current в хранимых процедурах / 7 сообщений из 7, страница 1 из 1
10.11.2004, 11:24
    #32775024
Natalya_d
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
использование current в хранимых процедурах
При использовании current несколько раз в хранимой процедуре, системное время не меняется , везде одинаковое.
Каким образом можно выводить реальное системное время с точностью до секунды в процедуре?

Заранее спасибо:)
...
Рейтинг: 0 / 0
10.11.2004, 11:30
    #32775041
Daugava
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
использование current в хранимых процедурах
create function "informix".cur_time() RETURNING DATETIME YEAR TO SECOND;
DEFINE D DATETIME YEAR TO SECOND;
select EXTEND (mdy(9,9,2001),YEAR TO SECOND)
+(sh_curtime-999982800-3600) UNITS SECOND INTO D
from sysmaster:sysshmvals;

Одна проблема, переход на летнее время не учитывается.
...
Рейтинг: 0 / 0
10.11.2004, 11:42
    #32775075
Natalya_d
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
использование current в хранимых процедурах
упс:) а у нас в Алмате +3 часа. Как правильно высчитать время?
...
Рейтинг: 0 / 0
10.11.2004, 12:10
    #32775163
Daugava
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
использование current в хранимых процедурах
Пожалуй немного объясню:
mdy(9,9,2001) - в эту дату количество секунд в unixtime зашкаливает за миллиард, по крайней мере на 7-ке и 9.2 есть проблемы со сложением UNITS SECOND с такими цифрами, поэтому с помощью поправочного коэфициента "999982800" подбираем нужное нам время. "-3600" - дополнительная поправка на зимнее время :-).
...
Рейтинг: 0 / 0
11.11.2004, 13:53
    #32777494
vasilis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
использование current в хранимых процедурах
Daugavacreate function "informix".cur_time() RETURNING DATETIME YEAR TO SECOND;
DEFINE D DATETIME YEAR TO SECOND;
select EXTEND (mdy(9,9,2001),YEAR TO SECOND)
+(sh_curtime-999982800-3600) UNITS SECOND INTO D
from sysmaster:sysshmvals;
Одна проблема, переход на летнее время не учитывается.
А почему нельзя проще ?
select DBINFO('utc_to_datetime', sh_curtime) from sysmaster:sysshmvals
...
Рейтинг: 0 / 0
11.11.2004, 18:27
    #32778282
Daugava
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
использование current в хранимых процедурах
именно способ DBINFO изложен в UCDI.FAQ ;-) , но у меня в момент ответа как раз находился в клипбоарде свой собственный код на эту тему, написанный ночью на коленке в отрыве от интернета.
...
Рейтинг: 0 / 0
25.11.2004, 21:14
    #32800535
cpr
cpr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
использование current в хранимых процедурах
ага
жаль только что через DBINFO только с точностью до секунды
...
Рейтинг: 0 / 0
Форумы / Informix [игнор отключен] [закрыт для гостей] / использование current в хранимых процедурах / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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