| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > Насколько увеличится быстродействие? |
| Автор: mspuz 5.12.2005, 13:12 |
| У меня делается много SQL запросов, а на форме всего один IBQuery, для которого я формирую строку запроса и затем выполняю. Но программа работает довольно медленно и мне посоветовали для каждого запроса кинуть на форму компонент(IBQuery) в котором прописать строку запроса. Я считаю это глупостью, но..... А Вы как считаете - намного увеличится от этого скорость????? |
| Автор: Демо 5.12.2005, 15:16 |
| Если просто кинуть кучу IBQuery, ещ ничего не изменится. Создавай связку IBDataBase+IBQuery в от дельном потоке для каждого запроса. Организуй для этого пул потоков, чтобы не было ситуации, когда будет сождано 500-1000 потоков с запросами. Достаточно 5-10 штук. |
| Автор: Akella 5.12.2005, 16:07 | ||
будет быстрее, если ты будешь использовать хранимые процедуры, и передавать в них параметры, вот тогда будет быстрее, если, конечно, сервак не слабый |
| Автор: mspuz 5.12.2005, 17:32 |
| Спасибо, за ответы. А есть смысл создавать хранимые процедуры, если у меня используются обычные select'ы с довольно простыми условиями??? |
| Автор: bas 5.12.2005, 17:51 |
| Используй запросы с параметрами вместо динамических запросов. |
| Автор: mspuz 5.12.2005, 18:20 |
| bas Использую!!!! Все равно не то. А тогда вопрос - если у меня делается выборка из 4000 записей, то может логичнее использовать LOCATE компонента IBTable??? Получится быстрее SELECT??? |
| Автор: Bose 5.12.2005, 18:20 | ||||
хранимые процедуры хранятся на сервере уже в оптимизированном виде и за счёт этого выполняются быстрее.
и как это увеличит скорость выполнения запросов? |
| Автор: YurikGL 6.12.2005, 00:20 | ||
Увеличится... т.к. в случае динамического запроса сервер БД (если ничего не путаю, то именно он) каждый новый запрос обрабатывает и оптимизирует заново. Если использовать запрос с параметрами сервер заного его не оптимизирует и не обрабатывает а воспринимает как старый с другими параметрами... В общем, что-то в этом духе я читал в книге "Delphi глазами хакера". |
| Автор: Akella 6.12.2005, 15:34 | ||
какой именно сервер? ведь у каждого SQL-сервера своя логика работы! |
| Автор: YurikGL 10.12.2005, 23:56 | ||
При работе с Interbase, насколько я знаю, использование запросов с параметрами дает выигрыш именно по этим причинам. Судя по использованию IBQuery у автора именно IB или его клон |
| Автор: FRAGNATIC 11.12.2005, 02:38 |
| http://vingrad.ru/DELPHI-DLP-001987 |