Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Выборка из DBF


Страницы:   1 2

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) не пробовали?


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо