Вниз
Скачать: CL | DM;

InterBase   Найти похожие ветки 

← →
fantomas ©   (2003-12-04 12:16) [0]

Такой вопрос:
Есть база InterBase 5.6. В ней триггер, который BEFORE INSERT в одну из таблиц должен сделать опять же INSERT в другую таблицу. В этой таблице есть поле типа DATE. Туда мне надо вставить значение "NOW" + одна секунда. Как это сделать?
Спасибо.


← →
Digitman ©   (2003-12-04 13:25) [1]

INSERT INTO Другая_Таблица(Поле_DATE) VALUES (UDF_NOW_Plus1_Sec(NOW))

где UDF_NOW_Plus1_Sec - твоя собственная UDF, получающая параметром значение типа DATE и возвращающая значение того же типа, равное вх.параметру + 1 сек


← →
Sandman25 ©   (2003-12-04 13:28) [2]

Я думаю, можно сделать и без UDF.
INSERT INTO Другая_Таблица(Поле_DATE) SELECT NOW + 1сек FROM таблица_с_одной_записью


← →
Johnmen ©   (2003-12-04 14:29) [3]

>Sandman25 © (04.12.03 13:28)

А что такое 1сек ?
:)


← →
Sandman25 ©   (2003-12-04 15:56) [4]

[3] Johnmen © (04.12.03 14:29)

1сек - это нечто, соответсвующее 1 секунде.
Для Informix данный запрос выглядел бы так:

select current + interval(1) second to second from table

Если в IB нет подобной функции для работы с интервалами, я очень извиняюсь.


← →
Vemer ©   (2003-12-04 16:28) [5]

А если так:
IB хранит время в Date в дробной части.
Сделай 2 записи с разницей в 1 секунду, переведи их значения во что-то типа float, вычти одну из другой - получишь число Х, примерно равное секунде в понимании IBase. Потом прибавляй это число куда надо.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
6-99687
Kevinkf
2003-10-30 07:48
2003.12.30
Создание NAT и подсчет трафика


1-99645
Serg7077
2003-12-16 15:02
2003.12.30
Шифрование


3-99434
Zhenja
2003-12-04 00:21
2003.12.30
Работа с локальной базой по сети


14-99732
Layner
2003-12-08 11:32
2003.12.30
Помогите купить лиц. D7. Контора (сайт) / цена


3-99449
Кирилл1
2003-12-05 23:05
2003.12.30
цвет линий Dbgrid




   Наверх