![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Выборка из DBF
lightix © (2004-02-05 13:03:00)
Имеется таблица DBase, следующей структуры:
DATA1 Char(10),
TIME1 Char(8),
EVNT1 Char(20)
Можно ли выбрать из нее все записи, у которых дата+время >= указанного через параметр?
Или же прийдется выбирать все записи в таблице и тупо сравнивать?
В Oracle например я бы сделал преобразование с помощью функции TO_DATE в тип данных datetime и спокойно написал бы сравнение в фразе WHERE.
Как это сделать в BDE?
lightix (2004-02-05 13:36:00) [21]
Написал вот так
select ev.* from "eventlog.dbf" ev
where cast(ev.dt as date)>=:dat and
cast(ev.tm as time)>=:tim
и передал параметры
Query_Copy.Close();
Query_Copy.ParamByName("dat").Value:=StrToDate("05.02.2004");
Query_Copy.ParamByName("dat").Value:=StrToTime("12:00:00");
Query_Copy.Open();
Ничего не выбирает, хотя записи с датой 05.02.2004 и временем больше 12:00 есть...
Sandman25 (2004-02-05 13:08:00) [22]
В DBF нет типа date или time?
Через CAST(datefield as datetime)+CAST(timefiled as datetime) не пробовали?