Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.07.2016, 23:30   #1
Dux
Delphi Master
Форумчанин Подтвердите свой е-майл
 
Аватар для Dux
 
Регистрация: 31.03.2008
Сообщений: 803
По умолчанию Большое количество FDQuery в программе

Работаю с удаленной БД, использую FireDAC + MySQL. Поначалу программа шустро запускалась, но по мере разработки новых функций увеличивалось количество компонентов FDQuery в DataModule. Сейчас у меня на форме DataModule 1 компонент FDConnection и около 60-ти FDquery.

Программа теперь запускается от 10 до 15 секунд.

Кто сталкивался с большим количеством FDQuery? У Вас это также влияет на время загрузки или мне копать в другом направлении?

Заранее спасибо!
Dux вне форума Ответить с цитированием
Старый 23.07.2016, 07:42   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

у меня в программе более сотни Query.
Они НИКОГДА не нужны одновременно!
Открывать (активировать) их нужно не при запуске программы, а только ТОГДА, когда они действительно нужны.
При компиляции всем query ставим Active false;

Также не нужны сразу и постоянно ВСЕ 30-40 форм работающих с этими query.
Убираем эти формы из автосоздания.

При необходимости (при нажатиях конопок, ...) СОЗДАЕМ эти формы.
formX:=TFormX.Create(application);
при создании форм (FormCreate) активируем потребные данной форме Query.
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 23.07.2016, 10:50   #3
Dux
Delphi Master
Форумчанин Подтвердите свой е-майл
 
Аватар для Dux
 
Регистрация: 31.03.2008
Сообщений: 803
По умолчанию

Цитата:
Сообщение от evg_m Посмотреть сообщение
у меня в программе более сотни Query.
Они НИКОГДА не нужны одновременно!
Открывать (активировать) их нужно не при запуске программы, а только ТОГДА, когда они действительно нужны.
При компиляции всем query ставим Active false;

Также не нужны сразу и постоянно ВСЕ 30-40 форм работающих с этими query.
Убираем эти формы из автосоздания.

При необходимости (при нажатиях конопок, ...) СОЗДАЕМ эти формы.
formX:=TFormX.Create(application);
при создании форм (FormCreate) активируем потребные данной форме Query.
Спасибо большое за советы! Действительно у меня довольно много active true, поменяю, проверю.

А по поводу форм, не совсем понял. Вы имеете ввиду убрать их создание из файла проекта и перенести в то место где именно они будут открываться?
Dux вне форума Ответить с цитированием
Старый 23.07.2016, 15:07   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
А по поводу форм, не совсем понял. Вы имеете ввиду убрать их создание из файла проекта и перенести в то место где именно они будут открываться?
Ога. Создавать по мере необходимости. И уничтожать тоже
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Необходимо скопировать 1 лист из одной книги в большое количество других книг Nick-1984 Microsoft Office Excel 4 13.09.2011 10:56
какую придумать рекламу, чтобы привлечь большое количество посетителей goluzov Свободное общение 15 29.06.2011 01:55
Как сложить большое количество данных через ячейку paffffff Microsoft Office Excel 15 20.01.2011 13:40
большое количество переменных Oooleg Microsoft Office Excel 3 01.10.2009 16:58
Excel. большое количество Diagramm alexvic Microsoft Office Excel 3 13.02.2008 14:40