Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

INTERBASE и тормоза [D6, IB6.x]


Pavel_S ©   (2002-04-20 16:24:00) 

Есть база данных, в которой есть мастер таблица (около 20 тыс. записей) и около 30 detail таблиц с с еще большим количеством информации.
Наблюдаются тормоза при навигации в таблице.
Посоветуйте как лучше оптимизировать базу данных и мой код.
Есть ли смысл сделать к примеру так:
Если у меня на экране нужно отобразить информацию из нужных подчиненных таблиц, то только их и активировать, а другие не трогать ?


Ura   (2002-04-25 14:38:00) [1]

Лучше всего напиши хранимую процедуру. В ней свяжеш все таблицы и определишь связи. На входе будет ID головной таблицы - а на выходе все связанные данные. Пусть СУБД работает... Про индексы не рассказываю и про способы объеденения тоже. Разберешься находу...


Vasilii   (2002-04-25 14:27:00) [2]

У тебя на одной форме 2 или более DBGrid"а подключенные к взаимосвязанным DataSet"ам. Я правильно понял? Если да то на KeyDown в гриде ставь отключение DataSource связанных DataSet"ов, а на KeyUp восстанавливай прежние значения. Получается немного быстрей.


kaif   (2002-04-21 14:36:00) [3]

Разумеется, если какая-то информация в данный момент не нужна - лучше ее не запрашивать. Само по себе Master-detail отношение между потомками TDataSet при SQL-ориентированных базах просто переоткрывает подчиненные запросы при каждом перемещении на новую запись в главной таблице.
Еще нужно быть уверенным, что Master-detail отношение опирается на индексированные поля (в подчиненных таблицах есть индексы по master-полю). Но я думаю, это Вы не забыли сделать.


Anatoly Podgoretsky   (2002-04-21 12:14:00) [4]

"и мой код" в нем поставь where ...


Pavel_S   (2002-04-21 08:08:00) [5]

Через sql. ibquery и ibdataset.


evgeg   (2002-04-20 20:58:00) [6]

А вы что, TTable используете?


Наверх

Титульная страница Поиск, карта сайта Написать письмо