Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.11.2007, 13:45   #1
vet_coder
 
Регистрация: 29.11.2007
Сообщений: 4
По умолчанию фильтрация в dbase

пытаюсь таблицу dbase отфильтровать по полю даты.
на такое
Код:
Dbf_work.Filter:= 'DATE= 23.03.1983';
или на такое
Код:
Dbf_work.Filter:= 'DATE= "23.03.1983" ';
жалуется Argument type mismatch...
и чё с этим делать...
vet_coder вне форума Ответить с цитированием
Старый 29.11.2007, 14:00   #2
mm_mauser
Пользователь
 
Регистрация: 29.11.2007
Сообщений: 15
По умолчанию

попробуй так
Код:
 Dbf_work.Filter:= 'DATE ='+#39+'23.03.1983'+#39;
Работа программиста это работа над ошибками,
а профессия 'программист' это фатальная ошибка

Последний раз редактировалось mm_mauser; 29.11.2007 в 14:03. Причина: ;)
mm_mauser вне форума Ответить с цитированием
Старый 29.11.2007, 14:19   #3
dron-s
Форумчанин
 
Регистрация: 04.03.2007
Сообщений: 615
По умолчанию

делай через запрос
Код:
select * from NameTable where FieldDate beetwen :d1 and :d2
где d1 и d2 - это передаваемая дата например из DateTimePicker
dron-s вне форума Ответить с цитированием
Старый 29.11.2007, 15:32   #4
vet_coder
 
Регистрация: 29.11.2007
Сообщений: 4
По умолчанию

я использую нестандартную компоненту TDbf, чтобы не ривязывать свою программу к BDE, комнонент идентичен TTable из BDE. Поэтому SQL-запрос здесь не подойдёт, пример с #39 даёт тот же эффект - Argument type mismatch. Для меня эта ошибка звучит уже как приговор.
Спасибо за ответы, а другие варианты есть? Буду очень признателен...
vet_coder вне форума Ответить с цитированием
Старый 29.11.2007, 15:46   #5
dron-s
Форумчанин
 
Регистрация: 04.03.2007
Сообщений: 615
По умолчанию

Цитата:
Для меня эта ошибка звучит уже как приговор
так и есть, с использованием TDbf...
используй Halcyon и не мучайся...
во первых увидишь раздницу в производительности, во вторых выкинешь в топку TTable...
TTable вообще надо убрать из палитры стандартных наборов компонентов!!! имхо!
dron-s вне форума Ответить с цитированием
Старый 29.11.2007, 15:53   #6
vet_coder
 
Регистрация: 29.11.2007
Сообщений: 4
Радость

Цитата:
Сообщение от dron-s Посмотреть сообщение
используй Halcyon и не мучайся...
а где мне достать этот самый Halcyon?
vet_coder вне форума Ответить с цитированием
Старый 29.11.2007, 15:54   #7
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

В свое время использовал конструкцию такого типа:
Код:
TTable.Filter:='Date='+''''+DateToStr(mydate)+'''';
Работало безотказно.
Естественно, поле даты было строковое.

Последний раз редактировалось mihali4; 29.11.2007 в 16:08.
mihali4 вне форума Ответить с цитированием
Старый 29.11.2007, 16:02   #8
dron-s
Форумчанин
 
Регистрация: 04.03.2007
Сообщений: 615
По умолчанию

Цитата:
а где мне достать этот самый Halcyon?
за тебя может ещё и программу написать?
в инете ищи, исходников валом...
dron-s вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Фильтрация Лукманов Александр БД в Delphi 1 26.06.2008 10:18
Фильтрация Gorychev БД в Delphi 20 10.06.2008 23:30
Таблица в формате dBase Dux БД в Delphi 6 21.04.2008 21:50
поиск и замена в неиндексированной таблице Dbase Iv Deicider БД в Delphi 2 07.12.2006 23:18