![]() |
|
|
![]()
|
|
| mspuz |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 304 Регистрация: 20.6.2005 Где: Ногинск Репутация: нет Всего: нет |
У меня делается много SQL запросов, а на форме всего один IBQuery, для которого я формирую строку запроса и затем выполняю. Но программа работает довольно медленно и мне посоветовали для каждого запроса кинуть на форму компонент(IBQuery) в котором прописать строку запроса. Я считаю это глупостью, но..... А Вы как считаете - намного увеличится от этого скорость?????
|
|||
|
||||
| Демо |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1278 Регистрация: 3.11.2005 Репутация: 2 Всего: 50 |
Если просто кинуть кучу IBQuery, ещ ничего не изменится.
Создавай связку IBDataBase+IBQuery в от дельном потоке для каждого запроса. Организуй для этого пул потоков, чтобы не было ситуации, когда будет сождано 500-1000 потоков с запросами. Достаточно 5-10 штук. -------------------- |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 29 Всего: 329 |
будет быстрее, если ты будешь использовать хранимые процедуры, и передавать в них параметры, вот тогда будет быстрее, если, конечно, сервак не слабый |
|||
|
||||
| mspuz |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 304 Регистрация: 20.6.2005 Где: Ногинск Репутация: нет Всего: нет |
Спасибо, за ответы. А есть смысл создавать хранимые процедуры, если у меня используются обычные select'ы с довольно простыми условиями???
|
|||
|
||||
| bas |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 446 Регистрация: 14.8.2002 Где: Молдова, Кишинев Репутация: 1 Всего: 2 |
Используй запросы с параметрами вместо динамических запросов.
|
|||
|
||||
| mspuz |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 304 Регистрация: 20.6.2005 Где: Ногинск Репутация: нет Всего: нет |
bas Использую!!!! Все равно не то. А тогда вопрос - если у меня делается выборка из 4000 записей, то может логичнее использовать LOCATE компонента IBTable??? Получится быстрее SELECT???
|
|||
|
||||
| Bose |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1458 Регистрация: 5.3.2005 Где: Riga, Latvia Репутация: 9 Всего: 51 |
хранимые процедуры хранятся на сервере уже в оптимизированном виде и за счёт этого выполняются быстрее.
и как это увеличит скорость выполнения запросов? |
||||
|
|||||
| YurikGL |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 5.7.2005 Где: Уфа Репутация: нет Всего: 2 |
Увеличится... т.к. в случае динамического запроса сервер БД (если ничего не путаю, то именно он) каждый новый запрос обрабатывает и оптимизирует заново. Если использовать запрос с параметрами сервер заного его не оптимизирует и не обрабатывает а воспринимает как старый с другими параметрами... В общем, что-то в этом духе я читал в книге "Delphi глазами хакера". --------------------
|
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 29 Всего: 329 |
какой именно сервер? ведь у каждого SQL-сервера своя логика работы! |
|||
|
||||
| YurikGL |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 5.7.2005 Где: Уфа Репутация: нет Всего: 2 |
При работе с Interbase, насколько я знаю, использование запросов с параметрами дает выигрыш именно по этим причинам. Судя по использованию IBQuery у автора именно IB или его клон --------------------
|
|||
|
||||
| FRAGNATIC |
|
|||
|
..::Свирепый Кодер::.. ![]() ![]() Профиль Группа: Участник Сообщений: 901 Регистрация: 17.10.2004 Где: ICQ Репутация: 2 Всего: 11 |
||||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |