Текущий архив: 2003.03.27;
Скачать: CL | DM;
ВнизADO Создание индекса Найти похожие ветки
← →
Sergei (2003-03-09 10:00) [0]Уважаемые мастера подскажите пожалуйста
компонент ADOQuery база FoxPro
как создать программно индекс или изменить индексируемые поля в уже созданом индексе ????
и ещё проблема подскажите пожалуйста допустим в базе есть индекс основу составляют сумма 2полей(Поле1+ Поле2)
по чему когда к примеру когда делаю запрос Like и указываю составной индекс запрос дляится гораздо дольше чем если в качестве индекса выступало одно поле ????
Спасибо пожалуйста ?????
← →
sniknik (2003-03-09 16:26) [1]> как создать программно индекс ......
к примеру
CREATE INDEX ID ON TABLE1 (ID)
DROP INDEX ID ON TABLE1
> ..... делаю запрос Like ....
Like индексов не использует. поэтому перетензия не по адресу.
← →
Sergei (2003-03-09 17:11) [2]>CREATE INDEX ID ON TABLE1 (ID)
>DROP INDEX ID ON TABLE1
точно совсем забыл
спасибо большое
>Like индексов не использует
в смысле не разбирает составных ????
← →
sniknik (2003-03-09 19:49) [3]> в смысле не разбирает составных ????
вообще не использует, чистый перебор.
← →
Sergei (2003-03-09 21:42) [4]>вообще не использует, чистый перебор
да ладно чистый перебор это очень долго а Like так быстро работает
← →
sniknik (2003-03-09 22:16) [5]попробуй открой файл как текст найди вхождение (только метод должен быть быстрым, однопроходным) после по смещению вычисли запись, примерно так и будет.
это как пример,
просто пытаюсь сказать что внутренние средства которые имеют полный доступ наверняка будут быстрее чем ты сделаеш сам с ограниченным. (не думаеш же ты что драйвер внутри использует те функции что выставленны наружу? ну типа цикл с Next? без попытки оптимизации? хотя и с ним не так уж сильно отличается. Надо только не использовать удобные (FieldByName()...) функции а использовать быстрые Fields[i] и тд.)
Страницы: 1 вся ветка
Текущий архив: 2003.03.27;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.007 c