Главная страница
    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.45 MB
Время: 0.039 c
6-1090492324
Duk
2004-07-22 14:32
2004.10.03
Как с п-ю TMemoryStream переслать текст от ServerSocket к ClienSo


1-1095349852
старый маразматик
2004-09-16 19:50
2004.10.03
регистрация компонент.


14-1094898124
Delpher
2004-09-11 14:22
2004.10.03
Изучение Delphi


1-1095704751
klopan
2004-09-20 22:25
2004.10.03
RichEdit & Enter


3-1094623708
Junior
2004-09-08 10:08
2004.10.03
AutoInc в таблице Paradox





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский