![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#11 |
Пользователь
Регистрация: 05.04.2017
Сообщений: 11
|
![]() Код:
Вот так я делаю. Но это прямая переборка. Индекс по полю я могу установить. Но как использовать его в Делфи. Покажите пример. _____ Код программы нужно выделять (форматировать) тегами [CODE] (читать FAQ) Модератор Последний раз редактировалось Serge_Bliznykov; 06.04.2017 в 11:34. |
![]() |
![]() |
![]() |
#12 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Ни как. Он будет использоваться при выполнении SQL команды, примерно такой, как в #3
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#13 |
Пользователь
Регистрация: 05.04.2017
Сообщений: 11
|
![]()
А в самом firebird-e можно с помощью индексов как то ускориться?
|
![]() |
![]() |
![]() |
#14 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,542
|
![]()
именно для ускорения индексы и придуманы(используются).
Другое дело что если вы что-то делаете у СЕБЯ (в программе) то индексы при этот НЕ ИСПОЛЬЗУЮТСЯ. Для того чтобы они использовались нужен SQL. Цитата:
XП это SQL в самом FB.
программа — запись алгоритма на языке понятном транслятору
|
|
![]() |
![]() |
![]() |
#15 |
Пользователь
Регистрация: 05.04.2017
Сообщений: 11
|
![]()
Так в программе я пользуюсь SQL запросами, так что индексы по идее должны сработать. Разве не так?
|
![]() |
![]() |
![]() |
#16 | ||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
вы читаете к себе ВСЮ таблицу и потом по ней делаете for n := 1 to FBDS_TX2.RecordCount do ни о каких индексах тут речи нет. Поймите, что Вы делаете всё неверно. Вам нужно отправить запрос на сервер (UPDATE ), который на сервере обработает ВСЕ ваши записи (хоть 25000, хоть 100000, хоть миллион). А Вы вытягиваете все эти записи на клиента и там ПО ОДНОЙ обрабатываете. А это медленнее в тысячи раз. Цитата:
если Вы всё написали верно и это действительно медленно, то средствами управления БД нужно добавить индекс(ы), чтобы ускорить работу SQL запроса. Последний раз редактировалось Serge_Bliznykov; 06.04.2017 в 10:32. |
||
![]() |
![]() |
![]() |
#17 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Можно еще такой запросик, если merge поддерживается в твоей версии огнептицы. А потом сравнить скорость с тем, что выше предлагали. Индексы создать очень желательно. И забудь про обновление на клиенте ))
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#18 |
Пользователь
Регистрация: 05.04.2017
Сообщений: 11
|
![]()
Напишите пожалуйста пример на основе моей задачи. Буду признателен. Голова не соображает уже.
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Центростремительное ускорение | Niro | Помощь студентам | 11 | 11.01.2013 20:32 |
Ускорение программы С++ | rUs_LAN | Помощь студентам | 4 | 16.08.2012 13:57 |
Ускорение времени | rinasmichael | Win Api | 3 | 10.11.2011 09:15 |
Ускорение компиляции | jetyb | Помощь студентам | 4 | 13.09.2011 23:38 |
ускорение виндовс | voland123454321 | Windows | 22 | 04.09.2010 12:16 |