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

Вниз

Индексы в Local SQL   Найти похожие ветки 

 
Эдик   (2004-06-24 15:58) [0]

Подскажите пож. можно ли в BDE для локального SQL использовать индексы и как (если можно)...
Создаю индексы, выбираю по индексному полю, но время выборки не меняется  :-((


 
Соловьев ©   (2004-06-24 16:24) [1]


> Создаю индексы, выбираю по индексному полю, но время выборки
> не меняется  :-((

select field
from table
index по field? и скорость не меняется? глюк, надо написать разработчикам


 
Sandman25 ©   (2004-06-24 16:26) [2]

Выбор случайно не такой:
Where MyField Like "%xxx%"?


 
bushmen ©   (2004-06-24 16:40) [3]

>выбираю по индексному полю

А сам запрос какой? И индекс на каком поле?


 
VAleksey ©   (2004-06-24 16:56) [4]

BDE использует индексы в LokalSQL если это возможно.


 
Эдик   (2004-06-24 18:48) [5]

Создаем таблицу
create table table1.dbf
(kod char(10),pole1 char(40),pole2 char(50))
заполняем таблицу 1000000 записей
делаем выборку
select * from table1 order by kod - 2 минуты в, фоксе 1 минута,
создаем индекс
create index proba on table1 (kod)
делаем выборку
select * from table1 order by kod - 2 минуты в, фоксе 0.1 секунда
Варианты есть?


 
Johnmen ©   (2004-06-24 19:02) [6]

>Варианты есть?

Да. Уменьшить число 1000000.
Использовать TTable.


 
Эдик   (2004-06-24 19:07) [7]

Уменьшал, разницы нет... c Sql удобней, проще и быстрей работать


 
Johnmen ©   (2004-06-24 19:12) [8]

Что уменьшал ? Насколько ? Как ?

>c Sql удобней, проще и быстрей работать

А я разве призывал отказаться от него ?
:)


 
Эдик   (2004-06-24 19:18) [9]

Уменьшал колличество записей до 100000, от этого по индексу выбирать быстрей не стал  :-((
Каким образом совместить TTable и SQL?


 
Anatoly Podgoretsky ©   (2004-06-24 21:27) [10]

Уменьшить число 100000.


 
Эдик   (2004-06-25 11:21) [11]

Хорошо, уменьшил колич. записей до 5000, правдо пришлось изменить скрипт:
select * from table1 where kod in (select kod from table1) and kod in (select kod from table1)
выполняеться 2 минуты, в фоксе - моментом...


 
Sandman25 ©   (2004-06-25 11:27) [12]

select * from table1 where kod in (select kod from table1) and kod in (select kod from table1)

это бред, уж извините


 
Эдик   (2004-06-25 11:51) [13]

Согласен, бред, я сделал выборку для того, чтоб проверить, будут ли индексы подключаться... и не более того.
Индексы не подключились   :-((


 
Sandman25 ©   (2004-06-25 11:53) [14]

[13] Эдик   (25.06.04 11:51)

select * from table1 where kod = 1

Если сработает за доли секунды, значит, подключились


 
Anatoly Podgoretsky ©   (2004-06-25 12:00) [15]

Эдик   (25.06.04 11:21) [11]
Уменьшить число 5000 до одного select * from table1 where kod = 1


 
Эдик   (2004-06-25 16:39) [16]

Действительно, в таком случае подключаються... а почему в придыдущих примерах не срабатывало? Это ограничения такие?
Тогда переходим на Fox  :-))


 
Sandman25 ©   (2004-06-25 16:48) [17]

>Это ограничения такие?

ага. ограничения сетки. чтобы не закачивали по 100000 записей сразу


 
Эдик   (2004-06-25 16:52) [18]

а если все локально?  :-))


 
Sandman25 ©   (2004-06-25 16:56) [19]

Тогда чтобы пользователя не травмировать :)



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

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

Наверх




Память: 0.5 MB
Время: 0.044 c
3-1088202854
Bacuc
2004-06-26 02:34
2004.07.18
DBGrid


1-1089134354
ИМХО
2004-07-06 21:19
2004.07.18
Автоматизация Outlook а: как убить окно


1-1089107532
bak
2004-07-06 13:52
2004.07.18
узлы TTreeView


9-1080221635
laa
2004-03-25 16:33
2004.07.18
как спрайты из TDXImageList скопировать в TBitMap


1-1089107451
Koala
2004-07-06 13:50
2004.07.18
Найти файл более ранней редакции