![]() |
|
|
![]()
|
|
| sergey_85 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 445 Регистрация: 17.4.2007 Где: Россия, Челябинск Репутация: нет Всего: 1 |
Привет!
Вот такой вопрос, при длительном обращении к БД, например большой выборке (select * from ...) dataset1->Post() (по клику на кнопке) программа подвисает. Как поступить в данном случае? Я думаю так, создать отдельный поток и выполнять данную оперцию(-и) в отдельном потоке, есть ещё какой-то вариант? .. а и ещё, все датасеты расположены в датамодуле и создаются по умолчанию при старте программы. Это сообщение отредактировал(а) sergey_85 - 30.7.2008, 13:25 -------------------- A good design always pays off. |
|||
|
||||
| Acer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 652 Регистрация: 5.9.2007 Где: UA::DN Репутация: 0 Всего: 8 |
Установи тайм-аут разрыва соединения при выполнении запроса, если это возможно в твоих датасэтах..
|
|||
|
||||
| dizzy1984 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 675 Регистрация: 15.2.2007 Репутация: нет Всего: 25 |
Да, создавай поток и выполняй запросы в нем. Других вариантов afaik нет.
Немного не по теме - из того что я помню по delphy - ведь там весь гуи выведен в отдельный поток, по идее прога не "виснет" даже на трудоемких вычислениях. Странно что иначе дело обстоит с запросами. |
|||
|
||||
| Rodman |
|
|||
|
CIO ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 6144 Регистрация: 7.5.2006 Где: Ukraine ⇛ Kyiv ci ty Репутация: 1 Всего: 122 |
на чем пишем? что пишем?
Какая СУБД? |
|||
|
||||
| Lycifer |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 144 Регистрация: 4.11.2007 Репутация: нет Всего: нет |
Оптимицазия запрос, ну и конечно пулы потоков
Насчет оптимиции не стоит забывать что SQL server не очень хорошо работает на большой базе с операциее OR используй union Хорошие операции : select,update,insert...(ну и дам идексы....) |
|||
|
||||
![]()
|
| Правила форума "C++: Базы данных" | |
|
|
Данный форум предназначен для обсуждения вопросов прямым образом связанных с C++ и БД. Так, вопросы только по C++ следует задавать в C++:Общие вопросы а вопросы по абстрактным БД в Базах данных или в соответствующих под-форумах. Благодарим за понимание. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, chipset. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Базы данных | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |