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

Вниз

Проблема с быстродействием   Найти похожие ветки 

 
qweqwe ©   (2004-09-06 10:24) [0]

Я наткнулся на какието грабли... Раздул
справочник товаров до 8 тысяч записей и прога начала тормазить при поиске. Поиск сделан таким образом...

void __fastcall TGoodsForm::Edit2Change(TObject *Sender)
{
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("select * from GOODS_SUMMARY ");
ADOQuery1->SQL->Add("where Upper(id) like upper(_win1251"%" + Edit2->Text+ "%")");
ADOQuery1->Open();
}

сначала я начил строить индексы. Но тут до меня дошло что
этот запрос в ИБЭксперте выполняется почти моментально. Тоесть затык
происходит гдето между ИБСервером и программой. можно ли это опимизировать как-то? или это АДО и от этого не
деться? блин... нет времени переписывать всю прогу на другую
технологию... вот такие вот дела. Работаю через ОДБЦ...
ПС Сорри я пишу на Билдере но сути это тут не меняет. Думаю кусок кода должен быть понятен всем.


 
Sergey_Masloff   (2004-09-06 10:52) [1]

Да. Код понятен. Индексы тут не помогут и в IBExpert на той же базе это будет тормозить точно так же.
 А за такие запросы в приличных местах... Ладно не будем о грустном.


 
qweqwe ©   (2004-09-06 11:06) [2]

Эксперт не тормозит.. делает все очень быстро


 
Sergey_Masloff   (2004-09-06 11:10) [3]

Значит не та база ( меньше записей) или не такой запрос. Точка.
Запрос с процентикам спереди да еще с аппером быстро выполняться не может так как это гарантированный FULL SCAN


 
Sergey_Masloff   (2004-09-06 11:13) [4]

В принципе, для 8000 записей даже фуллскан не так страшно но все же зачем так жестко с сервером. Храни уж тогда свои 8000 просто в текстовом файле и ищи как строку. Будет быстрей.


 
qweqwe ©   (2004-09-06 11:17) [5]

да тут дело даже  не в запросе... тут дело в том каким оброзом я подключаюсь к базе :( и похоже я этого не исправлю


 
Sergey_Masloff   (2004-09-06 11:27) [6]

qweqwe ©   (06.09.04 11:17) [5]
Исходно было:
>и прога началатормазить при поиске
То есть сначала не тормозило же?
Ни ADO ни ODBC никаких особых тормозов не вносят (кто б их тогда использовал). Так что...



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

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

Наверх




Память: 0.48 MB
Время: 0.041 c
1-1095448396
4МО
2004-09-17 23:13
2004.10.03
TaskBar


3-1094605386
AleKo
2004-09-08 05:03
2004.10.03
DBGridEh вместо запятой точка


3-1094042775
Zyb
2004-09-01 16:46
2004.10.03
Передача Dataset


4-1093250479
Adolph
2004-08-23 12:41
2004.10.03
CreateWindow


14-1095075655
Stany
2004-09-13 15:40
2004.10.03
Чат для аудио/видео/текстовых контактов