Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.30;
Скачать: CL | DM;

Вниз

Тормоза после нескольких фильтраций   Найти похожие ветки 

 
Twix   (2003-01-09 08:27) [0]

Возникла проблема следующего характера:
Используется Delphi6 и база данных Paradox-формата. В программе есть функция поиска реализованная при помощи свойства TTable.Filter. Так вот при вызове данной функции n-ное количество раз, существенно замедляется доступ к таблице в которой осуществлялся поиск. Хочу заметить, что после выполнения поиска фильтрация снимается (TTable.Filter=""; TTable.Filtered:=false;).
Кто сталкивался с похожей проблемой? И как ее побороть?


 
HNN   (2003-01-09 10:09) [1]

После перезагрузки программы проблемы нет?
На мой взгляд проблема может решиться путем закрытия и открытия таблицы, а не только отмены фильтрации.


 
Ditrix ©   (2003-01-09 10:37) [2]

А лишний мастер-детайл (лукап и т.п.) нигде не прицеплен?


 
Kruger   (2003-01-09 12:16) [3]

У меня таблица из 9000 строк, я там применяю филльтрацию и все нормально. Попробуй сократить количество фильтров. Может возможно в один запрос внести сраз несколько.


 
MsGuns ©   (2003-01-09 12:28) [4]

При переключении фильтра надо чистить не столько Tabl1.Filter, сколько саму строковую переменную, где перечисляются все выражения фильтрации. Чтоб не получилось что-то вроде
StrFilter := "Fld1="abcd";Fld1="abcd";Fld1="abcd";Fld1="abcd"...)

Это, ессно, замедлит !


 
Иван Брылёв   (2003-01-09 13:56) [5]

Было такое. Если нужен сложный фильтр, то можно или обрабатывать событие OnFilterRecord или пользоваться SQL (но если не используешь ни BDE ни что-то еще, что поддерживает SQL, то тогда сложнее...)


 
Twix   (2003-01-10 14:31) [6]

To MsGuns:
Таких ошибок не делаем :-)

To HNN:
Спасибо, вроде бы проблема решилась открытием/зкарытием таблицы в которой проводится фильтрация. Возможно эта заморочка вызвана глюками в самом BDE.
В таблице объемом до 10000 записей все ОК, но вот при >20000 возникает такая проблема. Особенность этой таблицы в том, что на одно и тоже поле есть два индекса: по возрастанию и убыванию возможно поэтому и возникает проблема :-((



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

Текущий архив: 2003.01.30;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
7-97062
kloksus
2002-11-17 15:42
2003.01.30
Работа с реестром


3-96630
Чайник
2003-01-14 12:39
2003.01.30
HELP PLEASE!


1-96703
Groove
2003-01-22 08:18
2003.01.30
To Admin


1-96742
borg
2003-01-22 09:10
2003.01.30
Смещение


3-96515
First_May
2003-01-14 15:27
2003.01.30
TDBGridEh...